Commit Graph

188 Commits

Author SHA1 Message Date
Alexey Brodkin
3fcc7599d5 package/gdb: fix compilation for arc-2018.09 in some cases
In some cases which seem to depend on how toolchain headers
got installed or configured we may face well-known by now failure
fixed in upstream with [1]:
------------------------------>8----------------------------
In file included from nat/linux-ptrace.c:20:
nat/linux-ptrace.h:175:22: error: expected identifier before numeric constant
 # define TRAP_HWBKPT 4
                      ^
nat/linux-ptrace.h:175:22: error: expected '}' before numeric constant
In file included from .../output/host/arc-buildroot-linux-gnu/sysroot/usr/include/signal.h:58,
                 from build-gnulib/import/signal.h:52,
                 from .../output/host/arc-buildroot-linux-gnu/sysroot/usr/include/sys/wait.h:36,
                 from ./common/gdb_wait.h:23,
                 from nat/linux-ptrace.c:24:
.../output/host/arc-buildroot-linux-gnu/sysroot/usr/include/bits/siginfo-consts.h:156:1: note: to match this '{'
 {
 ^
In file included from nat/linux-ptrace.c:20:
nat/linux-ptrace.h:175:22: error: expected unqualified-id before numeric constant
 # define TRAP_HWBKPT 4
                      ^
In file included from .../output/host/arc-buildroot-linux-gnu/sysroot/usr/include/features.h:428,
                 from .../output/host/arc-buildroot-linux-gnu/sysroot/usr/include/bits/libc-header-start.h:33,
                 from .../output/host/arc-buildroot-linux-gnu/sysroot/usr/include/stdio.h:27,
                 from build-gnulib/import/stdio.h:43,
                 from ./common/common-defs.h:52,
                 from nat/linux-ptrace.c:19:
.../output/host/arc-buildroot-linux-gnu/sysroot/usr/include/sys/wait.h:158:1: error: expected declaration before '}' token
 __END_DECLS
 ^~~~~~~~~~~
------------------------------>8----------------------------

Back-porting the fix for ARC now to get predictably successful results.

[1] https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commit;h=5a6c3296a7a90694ad4042f6256f3da6d4fa4ee8

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-12-10 11:46:00 +01:00
Evgeniy Didin
2f70946c39 toolchain: fix URLs for ARC gcc/binutils/gdb
In commit cd9d58f1fc ("toolchain: bumb
ARC tools to arc-2018.09 release"), the ARC-specific binutils, gcc and
gdb versions were updated to use the 2018.09 release. However, they
are mistakenly pointing to a branch rather than a tag. This commit
fixes that by using the proper release tag.

Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: arc-buildroot@synopsys.com
[Thomas: rework commit log]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-12-06 21:05:06 +01:00
Peter Korsgaard
13c43455a0 Merge branch 'next'
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-12-02 08:16:10 +01:00
Mark Corbin
44a9babcc6 package/gdb: prevent gdbserver being selected for RISC-V builds
There is currently no version of gdbserver for RISC-V. Until this
is implemented we will prevent both the direct and indirect
selection of gdbserver for RISC-V builds. In practice this means
that 'cross gdb for the host' cannot be selected and that
'full debugger' must be automatically selected for the gdb target
package.

[Peter: simplify logic, add comment]
Signed-off-by: Mark Corbin <mark.corbin@embecosm.com>
Reviewed-by: Matt Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-11-29 21:51:26 +01:00
Evgeniy Didin
cd9d58f1fc toolchain: bumb ARC tools to arc-2018.09 release
This commit finally bumps ARC tools to the most recent arc-2018.09 release version.

ARC GNU tools of version arc-2018.09 bring some quite significant changes like:
 * Binutils v2.31.1 with additional ARC patches
 * GCC 8.2.1 with additional ARC patches
 * glibc 2.28 with additional ARC patches

More information on this release could be found here:
https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/releases/tag/arc-2018.09-release

Signed-off-by: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: arc-buildroot@synopsys.com
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-11-29 21:32:51 +01:00
Evgeniy Didin
c786ca2fcb toolchain: Bump ARC tools to arc-2018.09-rc2
This commit bumps ARC toolchain to arc-2018.09-rc2,
which includes significant changes since arc-2018.09-rc1.
We want to test how new toolchain-rc2 builds packages,
so we can make fixes before release of toolcain.
This makes us closer to toolchain release which will be in a few weeks.

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: Evgeniy Didin <Evgeniy.Didin@synopsys.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: arc-buildroot@synopsys.com
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-11-20 23:13:20 +01:00
Evgeniy Didin
5d4f23cbe6 toolchain: Bump ARC tools to arc-2018.09-rc1
This commit bumps ARC toolchain to arc-2018.09-rc1.
We want to test how new toolchain-rc1 builds packages,
so we can make fixes before release of toolcain.

ARC GNU tools of version arc-2018.09-rc1 bring some quite significant changes like:
* Binutils v2.31.1 with additional ARC patches
* GCC 8.2.1 with additional ARC patches
* glibc 2.28 with additional ARC patches

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: Evgeniy Didin <didin@synopsys.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: arc-buildroot@synopsys.com
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-11-18 20:47:31 +01:00
Romain Naour
1fc2b43959 package/gdb: switch to 8.1 as the default version
8.2 is around, 8.1 has already seen a point release, so it's time to
make 8.1 the default version for gdb.

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-09-16 15:59:36 +02:00
Romain Naour
4965948ce4 package/gdb: bump to version 8.2
Rebase existing patches on gdb 8.2.

https://sourceware.org/ml/gdb-announce/2018/msg00003.html

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-09-16 15:59:32 +02:00
Romain Naour
8688ff6caf package/gdb: add patch fixing gnulib related issue with musl toolchains
Backport the upstream patch fixing the gdb build with musl toolchains.

Only gdb 8.1.1 [1] and 8.2 [2] release are affected.

Fixes:
https://gitlab.com/free-electrons/toolchains-builder/-/jobs/95552308

[1] https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commitdiff;h=2441702a72f324e41a1624dc042b334f375e2d81
[2] https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commitdiff;h=25e3c82c0e927398e759e2d5e35623012b8683f7

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-09-14 23:42:07 +02:00
Romain Naour
521676cfe0 package/gdb: move patch directory
commit 9cf4964da5 forgot to move patch directory.

Fixes:
https://gitlab.com/free-electrons/toolchains-builder/-/jobs/95552306

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-09-10 17:22:12 +02:00
Romain Naour
9cf4964da5 package/gdb: bump to version 8.1.1
https://sourceware.org/ml/gdb-announce/2018/msg00002.html

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-08-05 12:58:46 +02:00
Romain Naour
bf19116c80 package/gdb: remove gdb 7.11.1 patches
gdb 7.11.x support was removed since commit bae35c8012

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-07-04 21:39:10 +02:00
Romain Naour
3ed82fab61 package/gdb: remove gdb 7.10.1 patches
gdb 7.10.x support was removed since commit 54a2e7a3b7

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-07-04 21:39:09 +02:00
Thomas Petazzoni
f50578ab98 gdb: drop duplicate dependencies
Commit 1e3738db42 ("package/gdb: rework
dependency for C++11") erroneously added duplicate dependencies in
package/gdb/Config.in related to gcc 4.8 and C++ dependency.

One copy of those dependencies was below the select causing a
check-package warning.

Fixes:

package/gdb/Config.in:28: attributes order: type, default, depends on, select, help (http://nightly.buildroot.org/#_config_files)

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-06-30 22:02:38 +02:00
Thomas Petazzoni
cec133e873 gdb: ARC version is based on GDB 8.0, needs C++11 support
The special gdb version used for ARC is based on GDB 8.0, so it needs
C++11 support.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-06-25 21:54:43 +02:00
Evgeniy Didin
68503bac9c toolchain: bump ARC tools to arc-2018.03 release
This commit finally bumps ARC tools to the most recent arc-2018.03
release version.

ARC GNU tools of version arc-2018.03 bring some quite significant
changes like:
* Binutils v2.29.51 with additional ARC patches
* GCC 7.3.1 with additional ARC patches
* GDB 8.0.50 with ARC patches

More information on this release could be found here:
https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/releases/tag/arc-2018.03-release

Signed-off-by: Evgeniy Didin <didin@synopsys.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: arc-buildroot@synopsys.com
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-06-25 21:53:52 +02:00
Thomas Petazzoni
a98ee4582f gdb: add patch to fix noMMU build issue
This commit adds a patch to fix a build issue encountered on noMMU
architectures when building gdbserver, due to the use of fork()
instead of vfork().

The patch has been submitted upstream:

  https://sourceware.org/ml/gdb-patches/2018-06/msg00569.html

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-06-25 21:33:51 +02:00
Romain Naour
bae35c8012 package/gdb: remove 7.11
Now that 8.1 has been added and 8.0 is the default version, let's
remove the old 7.11 release.

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-24 21:35:30 +02:00
Romain Naour
54a2e7a3b7 package/gdb: remove 7.10
Now that 8.1 has been added and 8.0 is the default version, let's
remove the old 7.10 release.

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-24 21:33:49 +02:00
Romain Naour
8f3d862314 package/gdb: switch to 8.0 as the default version
8.1 is around, 8.0 has already seen a point release, so it's time to
make 8.0 the default version for gdb.

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-24 21:31:45 +02:00
Romain Naour
c2a39ba528 package/gdb: add version 8.1
https://sourceware.org/ml/gdb-announce/2018/msg00001.html

gdb 8.1 has a new optional dependency on mpfr, which according to the
NEWS file:

   GDB now uses the GNU MPFR library, if available, to emulate target
   floating-point arithmetic during expression evaluation when the
   target uses different floating-point formats than the host.  At
   least version 3.1 of GNU MPFR is required.

So for the target gdb, this is unnecessary, and therefore we
forcefully disable mpfr support by passing --without-mpfr.

For the host gdb, it would potentially be useful, but since it's a new
feature that isn't essential, we for now keep it disabled as well. An
option may be added later if needed.

To avoid gnulib issues with uClibc/musl, we need to pass additional
configure/make variables, like is done in OpenEmbedded [1].

[1] http://git.openembedded.org/openembedded-core/tree/meta/recipes-devtools/gdb/gdb_8.1.bb?id=02664a8dcd1ebb6cd77248e1b97a78390ea06033#n9

We re-add the same patches as the ones present for gdb 8.0.1, except
0004-nat-linux-ptrace.c-add-missing-gdb_byte-cast.patch, which was
merged upstream.

Signed-off-by: Romain Naour <romain.naour@gmail.com>
[Thomas: change mpfr handling.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-24 21:16:46 +02:00
Thomas Petazzoni
1e3738db42 package/gdb: rework dependency for C++11
As we are about to switch to 8.0 as the default gdb version, we
need to adjust how the gdb dependencies are handled. Indeed, from 8.0
onwards, gdb needs a C++11 capable compiler, i.e at least gcc 4.8.

Until now, Config.in.host was making sure that gdb 8.0 was not
selectable if the cross-compilation toolchain did not have C++ support
with gcc >= 4.8. This worked fine because the default version of gdb,
used as the target gdb version when no host gdb is built, was 7.11,
and did not require C++11.

With the switch to 8.0 as the default version, when target gdb is
enabled but not host gdb, 8.0 is used, which means we need a C++11
capable compiler. The dependencies in Config.in.host are no longer
sufficient.

So instead, we remove the target-related dependencies from
Config.in.host and move them properly to Config.in. The overall logic
is the following:

 - In Config.in.host, BR2_PACKAGE_HOST_GDB_ARCH_SUPPORTS ensures that
   we have at least host gcc 4.8 if we're on ARC, because the ARC gdb
   needs C++11. We remove the target toolchain related dependencies
   from here.

 - In Config.in.host, the version selection ensures that 8.0 cannot be
   selected if the host toolchain does not have at least gcc 4.8. We
   remove the target toolchain related dependencies from here.

 - In Config.in.host, we introduce a BR2_PACKAGE_GDB_NEEDS_CXX11
   option, that indicates whether the currently selected version of
   gdb requires C++11 support in the toolchain to build the target
   variant. Even though this option is more related to the target
   variant of gdb, we keep it in Config.in.host so that it appears
   next to the definition of BR2_GDB_VERSION, to make sure they are
   kept in sync.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-24 21:12:37 +02:00
Romain Naour
8646a7fae9 package/gdb: fix gdbserver build for m68k
As for strace [1], when <sys/reg.h> is included after <linux/ptrace.h>,
the build fails on m68k with the following diagnostics:

In file included from ./../nat/linux-ptrace.h:28:0,
                 from linux-low.h:27,
                 from linux-m68k-low.c:20:
[...]/usr/include/sys/reg.h:26:3: error: expected identifier before numeric constant
   PT_D1 = 0,
   ^
[...]usr/include/sys/reg.h:26:3: error: expected « } » before numeric constant
[...]usr/include/sys/reg.h:26:3: error: expected unqualified-id before numeric constant
In file included from linux-m68k-low.c:27:0:
[...]usr/include/sys/reg.h:99:1: error: expected declaration before « } » token
 };
 ^

Fix this by moving <sys/reg.h> on top of "linux-low.h".

Fixes:
https://gitlab.com/free-electrons/toolchains-builder/-/jobs/72006385

[1] 6ebf6c4f9e

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-06-23 12:52:01 +02:00
Evgeniy Didin
6505b06d47 toolchain: Bump ARC tools to arc-2018.03-rc2
This commit bumps ARC toolchain to arc-2018.03-rc2, which
includes significant changes since arc-2018.03-rc1.
We want to test how new toolchain-rc2 builds packages,
so we can make fixes before release of toolcain.
This makes us closer to toolchain release which will be in a few weeks.

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: Evgeniy Didin <didin@synopsys.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: arc-buildroot@synopsys.com
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 7aaabe8fc0)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-05-28 14:48:19 +02:00
Anssi Hannula
9c7ce893a0 gdb: actually disable gdbserver if BR2_PACKAGE_GDB_SERVER is unset
The gdb configure script is given --enable-gdbserver when
BR2_PACKAGE_GDB_SERVER is set, but it is not given --disable-gdbserver
when BR2_PACKAGE_GDB_SERVER is unset.

gdb gdb/configure.ac defaults to enabling gdbserver in "native"
(host=target) cases, which is always the case when buildroot builds a
gdb which runs on the target hardware. The gdbserver will overwrite
BR2_TOOLCHAIN_EXTERNAL_GDB_SERVER_COPY gdbserver, if any.

Fix that by passing --disable-gdbserver when BR2_PACKAGE_GDB_SERVER is
unset.

Signed-off-by: Anssi Hannula <anssi.hannula@bitwise.fi>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-05-19 14:07:10 +02:00
Jonas Zaddach
fa5ca6974d package/gdb: don't remove support files if python chosen
If one wants to use GDB with python support on the target, you need the support
files installed by GDB. These get usually deleted to save some space, so I just
wrapped the Makefile code deleting them in a conditional block depending on if
python support is active or not.

Signed-off-by: Jonas Zaddach <jzaddach@cisco.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
[Thomas:
 - use positive logic "if python is disabled"
 - put the comment inside the condition, as suggested by Arnout]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-04-27 23:09:17 +02:00
Thomas Petazzoni
ed5996ffbf gdb/7.10: remove Blackfin patch
And renumber remaining patches

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-04-15 22:05:35 +02:00
Thomas Petazzoni
3142e7a8ea gdb: remove Blackfin patch
And renumber remaining patches.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-04-15 22:05:33 +02:00
Thomas Petazzoni
0cd6d15a20 toolchain, gcc, gdb, binutils, uclibc: remove Blackfin code
This commit removes Blackfin related code from all toolchain code and
components.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-04-15 22:05:14 +02:00
Evgeniy Didin
84a5fc007f toolchain: Bump ARC tools to arc-2018.03-rc1
This commit bumps ARC toolchain to arc-2018.03-rc1.
We want to test how new toolchain-rc1 builds packages,
so we can make fixes before release of toolcain.

ARC GNU tools of version arc-2018.03-rc1 bring some quite significant changes like:
 * Binutils v2.29.51 with additional ARC patches
 * GCC 7.3.1 with additional ARC patches

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: Evgeniy Didin <didin@synopsys.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Alexey Brodkin <abrodkin@synopsys.com>
Cc: arc-buildroot@synopsys.com
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-04-12 23:28:38 +02:00
Peter Seiderer
b54c793195 gdb: prevent installation of libbfd.so and libopcode.so
The gdb install target installs dynamic versions of libbfd and
libopcode, accidentally overwriting the binutils provided versions
(gdb itself links against the bundled static ones to avoid
version problems, so the dynamic ones are un-needed).

Prevent the installation by using the '--disable-install-libbfd'
configure option.

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-12-17 10:08:13 +01:00
Evgeniy Didin
138a082def toolchain: Bump ARC tools to arc-2017.09 release
This commit finally bumps ARC tools to the most recent arc-2017.09 release version.

ARC GNU tools of version arc-2017.09 bring some quite significant changes like:
 * Binutils v2.29 with additional ARC patches
 * GCC 7.1.1 with additional ARC patches
 * glibc 2.26 with additional ARC patches

More information on this release could be found here:
https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/releases/tag/arc-2017.09-release

Signed-off-by: Evgeniy Didin <didin@synopsys.com>
Cc: Alexey Brodkin <abrodkin@synopsys.com>
Cc: arc-buildroot@synopsys.com
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-11-03 22:46:06 +01:00
Yann E. MORIN
445340685f package/gdb: ARC version has stringent dependencies on host gcc
The ARC gdb version requires a gcc >= 4.8 (because C++11).

Since the host variant uses the same sources as the target variant, we
must ensure that we have a host gcc >= 4.8 as well.

Move the architecture dependencies to their own symbol, and also hide
the comment when they are not met.

Fixes:
    http://autobuild.buildroot.net/results/43eae264991aa369490236c7bd59c0b6a67fcf25/

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Alexey Brodkin <Alexey.Brodkin@synopsys.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-11-02 22:37:50 +01:00
Evgeniy Didin
5bd21f991f toolchain: Bump ARC tools to arc-2017.09-rc1
This commit bumps ARC toolchain to arc-2017.09-rc1.

The arc-2017.09 series is built on top of upstream GCC 7.1.1 and
Binutils 2.29 so please expect all kinds of breakages related to GCC
7.x as we saw earlier with the move from 4.8 to 6.x :)

Note patches for both GCC and Binutils were updated with
copies from corresponding mainline versions, i.e.
"package/gcc/7.2.0" and "package/binutils/2.29".

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: Evgeniy Didin <didin@synopsys.com>
Cc: Alexey Brodkin <abrodkin@synopsys.com>
Cc: arc-buildroot@synopsys.com
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Thomas: drop binutils patch related to the Blackfin architecture.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-10-08 16:10:27 +02:00
Romain Naour
a693573d86 package/gdb: bump to version 8.0.1
https://sourceware.org/ml/gdb-announce/2017/msg00004.html

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2017-10-01 23:15:12 +02:00
Thomas Petazzoni
5c12506f4d gdb: add fix for gdb 7.12 and gdb 8.0 build on noMMU platforms
This adds a patch to gdb 7.12 and gdb 8.x, which fixes the build on
noMMU platforms. It is not needed for older versions of gdb, since
it's related to the switch of gdb to C++ in the 7.12 release.

Fixes:

../nat/linux-ptrace.c: In function 'int linux_fork_to_function(gdb_byte*, int (*)(void*))':
../nat/linux-ptrace.c:273:29: error: invalid conversion from 'void*' to 'gdb_byte* {aka unsigned char*}' [-fpermissive]
       child_stack = xmalloc (STACK_SIZE * 4);

The patch has already been merged upstream, as of commit
ffce45d2243e5f52f411e314fc4e1a69f431a81f, and will therefore be part
of future gdb releases.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2017-08-10 10:26:51 +02:00
Thomas Petazzoni
dcfdf82e53 gdb: drop support for Microblaze
Microblaze support was never upstreamed in gdb. We currently use a gdb
from the Xilinx Github repository, but this gdb is based on 7.6, and
has never been updated in the last 4 years. There are no other active
branches at https://github.com/Xilinx/gdb/branches.

Xilinx has a slightly newer gdb, based on 7.7, available at
https://github.com/Xilinx/meta-xilinx/tree/master/recipes-microblaze/gdb. However,
it's apparently only available in the form of stack of big patches
(https://github.com/Xilinx/meta-xilinx/tree/master/recipes-microblaze/gdb/files).

Currently, gdb on Microblaze fails to build in various conditions:

 * Against glibc, with "error: conflicting types for 'ps_lgetfpregs'"

 * Against musl, with "error: unknown type name 'elf_gregset_t'"

While those issues can probably be fixed, the fact that there is no
active upstream significantly reduces the incentive to fix those
problems.

Therefore, let's drop support for gdb on Microblaze entirely.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Acked-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2017-08-04 22:01:38 +02:00
Thomas Petazzoni
8c36c65ab8 gdb: force to use ncurses and not termcap for host-gdb
Both our target and host gdb depend on ncurses (host-ncurses for
host-gdb, of course). However, while for the target we passs
--with-curses, we are not doing this for the host variant. Due to
this, host-gdb default to using the termcap library: if such a library
is available on the build system, it will be used instead of the
host-ncurses we have built. This causes the host gdb binary to depend
on a library that we do not provide in $(HOST_DIR), breaking the
principle of a standalone SDK (which should only depend on the C
library).

To solve this, we simply pass --with-curses in HOST_GDB_CONF_OPTS,
which forces host-gdb to use the host-ncurses library.

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>
2017-08-01 23:37:06 +02:00
Yann E. MORIN
5b80a146af arch/xtensa: accept the overlay to be an URL
It can be interesting to get the overlay from a remote server, rather
than expect it to be present locally.

Since that file can be any URL, we can't know its hash, so we just
exclude it.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
[Thomas: use DL_DIR instead of BR2_DL_DIR.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-07-09 16:58:03 +02:00
Yann E. MORIN
b3b6070622 arch/xtensa: allow specifying path to tarball file
currently, specifying a custom Xtrensa core is done with two variables:
  - the core name
  - the directory containing the overlay tarball

However, the core name only serves to construct the tarball name, and is
not used whatsoever to configure any of the toolchain components
(binutils, gcc or gdb), except through the files that are overlayed in
their respective source trees.

This has two main drawbacks:
  - the overlay file must be named after the core,
  - the tarball can not be compressed.

Furthermore, it also makes it extremely complex to implement a download
of that tarball.

So, those two variables can be squeezed into a single variable, that is
the complete path of the overlay tarball.

Update the qemu-xtensa defconfig accordingly.

Note: we do not add a legacy entry for BR2_XTENSA_CORE_NAME, since it
was previously a blind option in the last release, and there's been no
release since we removed BR2_XTENSA_CUSTOM_NAME. So, we just update the
legacy comments for BR2_XTENSA_CUSTOM_NAME, since that's all the user
could have seen in any of our releases so far.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-07-09 15:41:51 +02:00
Arnout Vandecappelle
0f9c0bf3d5 Globally replace $(HOST_DIR)/usr/bin with $(HOST_DIR)/bin
Since things are no longer installed in $(HOST_DIR)/usr, the callers
should also not refer to it.

This is a mechanical change with
git grep -l '$(HOST_DIR)/usr/bin' | xargs sed -i 's%$(HOST_DIR)/usr/bin%$(HOST_DIR)/bin%g'

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-07-05 15:19:29 +02:00
Arnout Vandecappelle
967874a655 gdb: Remove /usr part from installation path of gdbserver
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Reviewed-by: Romain Naour <romain.naour@smile.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-07-05 11:46:41 +02:00
Vicente Olivert Riera
1874fe1522 gdb: fix full gdb build for MIPS musl
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>
2017-06-19 21:47:05 +02:00
Romain Naour
6be1600009 package/gdb: add support for gdb 8.0
Add a dependency on gcc >= 4.8 since gdb needs a C++11 compiler.

Remove included patch since 7.12.1:
0001-Remove-const-in-xtensa-linux-nat.c-fetch_gregs.patch
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commit;h=d274ecf4ddf76768af57e27f654b9ce6784b391c

Rebase remaining patches:
0002-ppc-ptrace-Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch
0003-sh-ptrace-Define-pt_-dsp-regs-uapi_pt_-dsp-regs-on-G.patch

See https://sourceware.org/ml/gdb-announce/2017/msg00003.html

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-06-11 18:02:41 +02:00
Thomas Petazzoni
98d7a96544 gdb: fix build of gdbserver on m68k/coldfire
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
2017-06-11 18:00:48 +02:00
Thomas Petazzoni
1bad517846 gdb: add patches to fix musl build on ppc(64)(le) and sh
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
2017-06-11 18:00:48 +02:00
Thomas Petazzoni
61b502794e gdb: not available on ARM noMMU and OpenRISC
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
2017-06-11 18:00:48 +02:00
Thomas Petazzoni
1cd10a135d gdb: introduce BR2_PACKAGE_GDB_ARCH_SUPPORTS
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
2017-06-11 18:00:48 +02:00
Alexey Brodkin
0ade154f23 toolchain: Bump ARC tools to arc-2017.03 release
This commit finally bumps ARC toolchain to arc-2017.03 release.
More info on this release could be found here:
https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/releases/tag/arc-2017.03

Note mentioned above web-page is not yet populated but should be very soon.
As a safe fall-back interested could refer to RC2 page here:
https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/releases/tag/arc-2017.03-rc2

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>
2017-05-25 15:20:34 +02:00