Currently building full gdb for MIPS musl fails because it's trying to
include <sgidefs.h> which is provided by glibc and uClibc, but not by
musl.
However, the kernel headers provide <asm/sgidefs.h> which has the same
definitions, so we can use that one instead.
Backporting a patch that has been sent upstream. Taken from here:
https://sourceware.org/bugzilla/show_bug.cgi?id=21070
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit adds a small patch to gdb that fixes the build of gdbserver
on m68k/coldfire:
../nat/linux-ptrace.c: In function 'linux_fork_to_function':
../nat/linux-ptrace.c:282:19: warning: implicit declaration of function 'clone' [-Wimplicit-function-declaration]
child_pid = clone (function, child_stack + STACK_SIZE,
^
../nat/linux-ptrace.c:283:5: error: 'CLONE_VM' undeclared (first use in this function)
CLONE_VM | SIGCHLD, child_stack + STACK_SIZE * 2);
^
../nat/linux-ptrace.c:283:5: note: each undeclared identifier is reported only once for each function it appears in
Thanks to Waldemar for pointing out the patch fixing this issue.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
Changes since v2:
- None
Changes since v1:
- New patch in the series
This commit small patches to gdb that fix redefined structures build
problems that occur when building on PowerPC, PowerPC64, PowerPC64le and
SuperH with the musl C library.
The PowerPC(64)(le) patch was taken from the Yocto Project, the SuperH
patch was inspired from the PowerPC patch. The issue has also been
reported upstream to the musl developers:
http://www.openwall.com/lists/musl/2017/06/03/1
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
Changes since v2:
- None
Changes since v1:
- None
Neither gdb nor gdbserver have support for ARM noMMU and OpenRISC, so
let's disable gdb on those architectures.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
Changes since v2:
- Fixed BR2_openrisc to BR2_or1k in Config.in.host
Changes since v1:
- Fixed BR2_openrisc to BR2_or1k
Before adding more architecture dependencies to gdb, let's introduce a
BR2_PACKAGE_GDB_ARCH_SUPPORTS, to avoid duplicating this list of
dependencies between the Config.in comment and the main Config.in
option.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
Changes since v2:
- None
Changes since v1:
- None
This commit bumps ARC toolchain to arc-2017.03-rc2
Please note that it is a release candidate and it might contain some
breakages, please don't use it for production builds.
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The check-package script when ran gives warnings on ordering issues
on all of these Config files. This patch cleans up all warnings
related to the ordering in the Config files for packages starting with
the letter g in the package directory.
The appropriate ordering is: type, default, depends on, select, help
See http://nightly.buildroot.org/#_config_files for more information.
Signed-off-by: Adam Duskett <Adamduskett@outlook.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The check-package script when ran gives warnings on indentation issues
on all of these Config.in files. This patch cleans up warnings related to
the indentation of the Config.in files in the package directory
Signed-off-by: Adam Duskett <Adamduskett@outlook.com>
[Thomas: do not change package/kodi/Config.in and package/x11r7/Config.in.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit bumps ARC toolchain to arc-2017.03-rc1
Please note that it is a release candidate and it might contain some
breakages, please don't use it for production builds.
Also I have updated patches for binutils as our source files in
binutils differ comparing to 2.28.
Signed-off-by: Vlad Zakharov <vzakhar@synopsys.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
We want to use SPDX identifier for license string as much as possible.
SPDX short identifier for LGPLv2/LGPLv2+ is LGPL-2.0/LGPL-2.0+.
This change is done using following command.
find . -name "*.mk" | xargs sed -ri '/LICENSE( )?[\+:]?=/s/LGPLv2(\+)?/LGPL-2.0\1/g'
Signed-off-by: Rahul Bedarkar <rahulbedarkar89@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
We want to use SPDX identifier for license string as much as possible.
SPDX short identifier for LGPLv3/LGPLv3+ is LGPL-3.0/LGPL-3.0+.
This change is done using following command.
find . -name "*.mk" | xargs sed -ri '/LICENSE( )?[\+:]?=/s/LGPLv3(\+)?/LGPL-3.0\1/g'
Signed-off-by: Rahul Bedarkar <rahulbedarkar89@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
We want to use SPDX identifier for license string as much as possible.
SPDX short identifier for GPLv3/GPLv3+ is GPL-3.0/GPL-3.0+.
This change is done using following command.
find . -name "*.mk" | xargs sed -ri '/LICENSE( )?[\+:]?=/s/\<GPLv3\>/GPL-3.0/g'
Signed-off-by: Rahul Bedarkar <rahulbedarkar89@gmail.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
We want to use SPDX identifier for license strings as much as possible.
SPDX short identifier for GPLv2/GPLv2+ is GPL-2.0/GPL-2.0+.
This change is done by using following command.
find . -name "*.mk" | xargs sed -ri '/LICENSE( )?[\+:]?=/s/\<GPLv2\>/GPL-2.0/g'
Signed-off-by: Rahul Bedarkar <rahulbedarkar89@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Starting with glibc 2.25, the proc_service.h header has been copied
from gdb to glibc so other tools can use it. However, that makes it
necessary to make sure that declaration of prfpregset_t declaration
is consistent between gdb and glibc. In gdb, however, there is a
workaround for a broken prfpregset_t declaration in glibc 2.3 which
uses AC_TRY_RUN to detect if it's needed, which doesn't work in
cross-compilation. So pass the cache option to configure.
It needs to be passed to GDB_CONF_ENV to build gdbserver only but
also to GDB_MAKE_ENV, because otherwise it does not get passed to the
configure script of nested packages while building gdbserver with full
debugger.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
In glibc 2.25, the proc_service.h header was copied from gdb to glibc.
However, in the process the 'const' was removed, which leads to build
failures with glibc >= 2.25.
gdb 7.12.1 already contains this patch. The patch for 7.11.1 comes
straight from upstream, the patch for 7.10.1 is backported by me.
Fixes http://autobuild.buildroot.net/results/6b1b44e72147113b3f0e3f049cb9026d6c7dffb7
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This fixes the following gdb-7.12.1 build error on xtensa architecture:
gdb/xtensa-linux-nat.c: In function 'void fetch_gregs(regcache*, ptid_t, int)':
gdb/xtensa-linux-nat.c:178:23: error: uninitialized const 'regs' [-fpermissive]
const gdb_gregset_t regs;
Backported from: d274ecf4ddf76768af57e27f654b9ce6784b391c
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
... like it is done for gcc.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
... instead of re-computing them over-and-over-again.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The previous fix [1] reinroduced the issue fixed by [2].
So keep gl_cv_func_gettimeofday_clobber=no in GDB_CONF_ENV
and GDB_MAKE_ENV.
Fixes:
http://autobuild.buildroot.net/results/ec6/ec60d436bd34a4f37b664e4124d7f0c96e90a1be
[1] faf38b78ae
[2] 560334bb2a
Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit bumps ARC toolchain to arc-2017.03-eng008.
Please note that it is an engineering build and it might have all kinds
of breakages, please don't use it for production builds.
Signed-off-by: Vlad Zakharov <vzakhar@synopsys.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The commit [1] doesn't fix this issue for all cases (it doesn't work
when BR2_PACKAGE_GDB_DEBUGGER=y).
So, leave the configure script alone and override
gl_cv_func_gettimeofday_clobber from GDB_MAKE_ENV.
[1] 560334bb2a
Fixes:
http://autobuild.buildroot.net/results/719/719a441421030b79c0aa1bbfb707130f3ac87338
Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This revert the commit [1] which break the simulator for aarch64.
Backport the upstream fix instead (from 7.12).
[1] f71ad71f24
Tested with gcc 4.4.5 (debian squeeze chroot).
Fixes:
http://autobuild.buildroot.net/results/cfd/cfdc9117fef7ecdf5cc5fc907a6fe8701a2c174a
Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Waldemar Brodkorb <wbx@openadk.org>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
gdb 7.12+ by default builds with a C++ compiler, which naturally doesn't
work when we don't have C++ support in the toolchain.
Fix it by passing --disable-build-with-cxx for such setups.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
As described at:
4520524ba0
this commit continues a series of updates of ARC tools.
This time we're updating tools to arc-2016.09 release version.
Signed-off-by: Vlad Zakharov <vzakhar@synopsys.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Now that 7.12 has been added and 7.11 is the default version, let's
remove the old 7.9 release.
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
7.12 is around, 7.11 has already seen a point release, so it's time to
make 7.11 the default version for gdb.
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
gdb 7.12 was released on October 2016, it's time to include it in
Buildroot, which this commit does.
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
As described at:
4520524ba0
this commit continues a series of updates of ARC tools.
This time we're updating tools to arc-2016.09-rc2.
This change contains a set of minor fixes and updates.
Signed-off-by: Vlad Zakharov <vzakhar@synopsys.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
gdb arc-2016.09-rc1 is based on upstream 7.12 gdb version where we can
still disable C++ build. For more information take a look at:
https://sourceware.org/gdb/wiki/cxx-conversion
We wanted to build gdb with C++ as it is used as default in 7.12
and is even a mandatory requirement since 2016/09.
But unfortunately we missed one runtime failure that C++ build causes
and so now we have to disable C++ build.
When gdb arc-2016.09-rc1 is built as a C++ application it segfaults at
runtime for ARC.
We are going to fix the issue in 2017.03 ARC toolchain release. and
before this we remove C++ dependency are adding temporary workaround
to prevent runtime segfaults.
The workaround is to disable building gdb as C++ application via
passing --disable-build-with-cxx config option when building gdb for
ARC.
Signed-off-by: Vlad Zakharov <vzakhar@synopsys.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The gdb simulator seems missing with the Xilinx fork of gdb.
Disable it for microblaze since only the Xilinx version of gdb is
currently available.
Fixes:
http://autobuild.buildroot.net/results/907/9079dad3f138c313a6abb40825baf4d9683a2422
Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Waldemar Brodkorb <mail@waldemar-brodkorb.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
As described at:
4520524ba0
this commit continues a series of updates of ARC tools.
This time we're updating tools to arc-2016.09-rc1.
This update contains a lot of important fixes, e.g. it fixes:
http://autobuild.buildroot.net/results/4c7/4c77f33c842b37bf28cb931edf1b290e1bf4d93c//http://autobuild.buildroot.net/results/902/902729a0b98675ad803939e3ecdcf230065a6012//
and other failures.
Other important change is that we also update gdb. Now we are
using gdb 7.12.
This version of gdb requires C++ toolchain support so we add
corresponding dependency to gdb Config.in file.
Signed-off-by: Vlad Zakharov <vzakhar@synopsys.com>
[Thomas:
- fix dependency on C++ of gdb, it must use BR2_INSTALL_LIBSTDCPP
- add comment about the C++ dependency of gdb on ARC.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Commit 12306a81f8 (gdb: get rid of host-texinfo dependency) tried to
append MAKEINFO=true to the host/target make install arguments, but as the
default values for these are only added when (host-)autotools-package is
evaluated (and only if empty), this effectively drops the default values and
we ended up without the 'install' target and nothing got installed.
To fix this, specify the full install arguments.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The host-texinfo dependency in gdb/host-gdb was added because gdb insisted
in building info documentation in recent versions, and we want to avoid
'makeinfo' to be present on the build system.
However, there is another solution that does not require actually building
host-texinfo: instruct the makefiles to use a dummy makeinfo command
('true').
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
It's been deprecated for quite some time now.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Following reports from me of build failures of the GDB simulator for the
Blackfin architecture, Waldemar cooked a
patch (0005-fix-sim-compile.patch) that removes the typedef of SIM_CPU,
because there was a redefinition of this typedef for Blackfin. This was
not causing an issue with recent compilers as redefining the same
typedef is valid with recent compilers, but was causing build failures
with gcc 4.4.x.
However, by removing the common definition of SIM_CPU, this patch broke
the build of the GDB simulator on other architectures, which did not had
an architecture-specific redefinition of SIM_CPU (unlike Blackfin).
The crux of the problem is in a commit from Mike Frysinger, that tries
to refactor the SIM_CPU definition into a common one. Except that it
leaves a redefinition of it for Blackfin. Removing this second
definition however doesn't easily work, due to include ordering
issues. The easiest solution is to simply revert the patch from Mike
Frysinger. This allows to fix the build for all architectures and all
compiler versions.
Fixes:
http://autobuild.buildroot.net/results/3b82c44ee853fab0e0c63881f0705bb659412917/http://autobuild.buildroot.net/results/dafbb93ab38a4285ce42436219d552cceb14828b/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
With this config you can bootup a Linux kernel
in GDB simulator and test Blackfin kernel and
userland.
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Starting with gdb 7.11, the bundled gnulib want to use rpl_gettimeofday
(gettimeofday replacement) due bad guessing when cross-compiling with musl
and uClibc toolchains. Instead of patching gnulib configure script to fix
the test, use gl_cv_func_gettimeofday_clobber=no to not use rpl_gettimeofday.
Thanks to Thomas Petazzoni to suggest this patch.
Reported upstream:
https://sourceware.org/bugzilla/show_bug.cgi?id=19798
Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Starting with gdb 7.10, gdb wants to re-generate its documentation.
We were trying to avoid that by patching the Makefiles, but it wasn't
working in all situations. So, we simply add a dependency on
host-texinfo in all case.
Fixes:
http://autobuild.buildroot.net/results/f72/f72eac3e2f995e93f0e8f215e68ce4356a696dcb
Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
gdb versions fetched from git (such as the ARC version) will not build
with host-flex and host-bison.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Just like binutils, when gdb is fetched from git, it wants to
re-generate its documentation. We were trying to avoid that by patching
the Makefiles, but it wasn't working in all situations.
So, we simply add a dependency on host-texinfo when gdb is fetched from
git, and remove our hackhish work-around.
Fixes:
http://autobuild.buildroot.net/results/80e63edc009d23cb939880a6f5ae2f220f07a96a/
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Forbid BR2_PACKAGE_HOST_GDB_SIM selection for the ARC architecture,
since the simulator is not supported on ARC.
Fixes:
http://autobuild.buildroot.net/results/4a1cd9a0beaff34830fd0f0ec47c30eda0a42d54/
Signed-off-by: Vlad Zakharov <vzakhar@synopsys.com>
[Thomas: tweak commit log.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit bumps our gdb 7.11 version to the latest 7.11.1 release. See
https://sourceware.org/ml/gdb/2016-06/msg00000.html for the release
announcement.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Add an option to enable GDB simulator support, so
it can be used to test some no-MMU systems.
Newer GDB Blackfin Simulator need a workaround for in-tree compile.
It doesn't break for older Buildroot supported GDB Blackfin
Simulator.
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This change switches ARC tools to the most recent arc-2016.03
version.
ARC GNU tools of version arc-2016.03 bring some quite significant
changes like:
* Binutils v2.26+ (upstream commit id 202ac19 with additional ARC
* patches)
* GCC v4.8.5
* GDB 7.10
More about changes, improvements and fixes could be found here:
https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/releases/tag/arc-2016.03
Note in this change we're adding sha512 checksums for
both binutils and gcc tarballs fetched from GitHub.
Build and run-tested in nSIM for both ARC700 and ARC HS38.
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>