Commit Graph

182 Commits

Author SHA1 Message Date
Chris Packham
daf19e1761 gdb: Use correct arguments for static linking
As of version 13.x GDB uses libtool for linking instead of g++ these
take different arguments for static linking.  Commit 6146b5a6 ("use
-all-static when building a static gdb") attempted to deal with this but
had the effect of causing older GDB versions to fail to build
statically. Add a new internal flag GDB_CC_LD_LIBTOOL and use this to
decide whether to pass `-static` or `-all-static`.

Fixes #2053
Signed-off-by: Chris Packham <judge.packham@gmail.com>
2023-11-02 20:49:26 +13:00
Yuriy Kolerov
a8cef5773e gdb: Make native GDB 13+ dependent on MPFR
GDB 13+ depends on MPFR thus it must be selected.

Signed-off-by: Yuriy Kolerov <ykolerov@synopsys.com>
2023-05-19 15:54:16 +12:00
Chris Packham
3ac6f1791a gdb: drop obsolete versions
Drop gdb 7.11.1, 7.12.1, 8.0.1, 8.1.1 and 8.2.1. Cleanup milestones
related to these older versions.

Signed-off-by: Chris Packham <judge.packham@gmail.com>
2022-05-10 19:46:53 +12:00
Chris Packham
53bbdc7425 Remove obsolete bionic/android support
The bionic libc support was out of date and relied on downloading
binaries from the internet. It was already marked as obsolete. Now that
the 1.25.0 release is out it can be completely removed.

Signed-off-by: Chris Packham <judge.packham@gmail.com>
2022-05-10 19:46:53 +12:00
Alexey Neyman
4c0d78bb64 gdb: use single-number versions/milestones for 9+
Starting with GDB9, the release number is only two numbers (with the
last being patchlevel). Therefore, keep two numbers for releases 8 and
below, but just a single number for 9 and up.

Signed-off-by: Alexey Neyman <stilor@att.net>
2022-02-11 00:47:51 -08:00
Alexey Neyman
586c2d0156 sparc-leon: restrict to GDB9
Starting with GDB10, it requires support for std::future<> in the
compiler. Such support has not been available on some architectures
until GCC9 (see PR 64735). I haven't determined the exact list of
affected architectures, so decided to make it a broad dependency: for
GDB10+, you need GCC9+.

Signed-off-by: Alexey Neyman <stilor@att.net>
2022-02-11 00:47:51 -08:00
Alexey Neyman
cc6b7fad46 Retire obsoleted milestones
... and the code dependent on them, after the latest wave of obsolete
package removals. This concludes the glorious history of the original
uClibc (non-NG) with lots of kludges removed.

There was a choice here, whether to call the resulting libc "uClibc" or
"uClibc-ng". I opted in favor of giving uClibc-ng the recognition it
deserves, although it had some ripple effect in the ct-ng code.

Signed-off-by: Alexey Neyman <stilor@att.net>
2022-02-11 00:47:50 -08:00
Chris Packham
9703e669d0 gdb: Remove old milestones
Now that the oldest supported version of gdb is 7.11.1 we can make some
parts of the build unconditional and remove the associated config vars.

Signed-off-by: Chris Packham <judge.packham@gmail.com>
2021-09-21 21:12:19 +12:00
Chris Packham
68088f65c6 gdb: Add gdb-11.1
Drop the uclibc-no-gettimeofday-clobber patch as it no longer applies.
The arc patches are all upstream.

Signed-off-by: Chris Packham <judge.packham@gmail.com>
2021-09-19 19:50:29 +12:00
Alexey Brodkin
5463ab4bf6 gdb: Add gdb-10.2
In GDB 10.x gdbserver was promoted to the top-level folder,
see https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=919adfe8409211c726c1d05b47ca59890ee648f1
Which means it is no longer a subfolder in "gdb" and so we have to
build gdbserver now exactly in the same way as normal native GDB.

One interesting detail is gdbserver doesn't need to deal with target
description in .xml so it doesn't depend on libexpat on target,
thus we need to move libexpat explicit selection from do_gdb_backend()
to its callers when building native [full] gdb as well as cross-gdb
for the host.

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
[cp: support old/new layout, regenerate patches]
Signed-off-by: Chris Packham <judge.packham@gmail.com>
2021-08-25 10:12:56 +12:00
Alexey Neyman
8a7f46f151 GDB 8.3+ needs IPv6
... which wasn't enabled in uClibc-ng by default

Signed-off-by: Alexey Neyman <stilor@att.net>
2019-10-02 09:35:46 -07:00
Alexey Neyman
19cc968f33 Require WCHAR in uClibc for all GDB versions
if building natively. 7.12.1 and 7.11.1 are also breaking in absence of
<wctype.h>

Signed-off-by: Alexey Neyman <stilor@att.net>
2019-04-04 18:57:42 -07:00
Alexey Neyman
5e82ca9e3d Only build libinproctrace for *-linux-gnu targets
Signed-off-by: Alexey Neyman <stilor@att.net>
2019-03-20 17:40:33 -07:00
Alexey Neyman
de36f78f89 Allow older GDB to build against newer glibc
Also, fix the subdir used when only gdbserver is built (without native
GDB).

Signed-off-by: Alexey Neyman <stilor@att.net>
2019-03-11 00:33:22 -07:00
Alexey Neyman
1e25ebc7e0 Move GDB build into a common backend function
... needed to create a common runtime test for an incompatible change
in glibc API.

Signed-off-by: Alexey Neyman <stilor@att.net>
2019-03-09 18:01:30 -08:00
Alexey Neyman
4ddad7b34f CentOS6 cannot use newer GDB releases
... unless one retrofits it with a decent compiler instead of stock
GCC 4.4.

While here, sync up the ax_*.m4 with autoconf-archive.

Signed-off-by: Alexey Neyman <stilor@att.net>
2019-03-05 00:48:31 -08:00
Alexey Neyman
3f16a8e269 Restore a missing GDB option
(whether GDB has --disable-build-with-cxx) and use it.

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-05-06 15:20:50 -07:00
Alexey Neyman
9fdb93cce0 Make comp.libs use generated templates, too
This allows us to include the component-to-package relation in the
generated kconfig files and make use of that information in the
show-config.sh script.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-11-29 23:44:49 -08:00
Alexey Neyman
4000e1def3 Also upgrade non-generated config files
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-07-08 10:57:56 -07:00
Alexey Neyman
e7deac3aad Switch comp.libs/tools and debug to new framework.
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-07-08 10:57:56 -07:00
Nye Liu
50df064004 Add option to build gdbserver for target that does not require libstdc++.so 2017-06-16 22:28:07 -07:00
Alexey Neyman
16d166c2c8 Force wide char support in uClibc if GDB8 is enabled
GDB8 (or rather gnulib that is a part of it) provides a fallback mbstate_t
definition - but GCC's C++ headers (which are used via stdint.h since GDB8
uses C++) provide another mbstate_t if libc does not have wide char support.
These two definitions conflict with each other.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-06-08 00:06:17 -07:00
Alexey Neyman
72a5a1d6de Add GDB 8.0 ...
... which now requires C++.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-06-04 23:23:09 -07:00
Alexey Neyman
97a20eed5c Disallow duma/ltrace/strace for bionic
Allow cross-gdb and gdbserver. This requires removal of an explicit
check that disables gdbserver on android. However, the comment above
that check refers to exec_elf.h, which has been removed since API level
19. It builds fine with current selection of the sample (21). Only
build-tested, hope someone can give it a try and report back.

We can fine tune the check for GDB but I'll leave it for now.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-05-14 18:49:56 -07:00
Alexey Neyman
2f286ce5ab Retire BACKEND stuff
... it is possible to just not set it in the configuration, why force
it? It just increases the complexity in Kconfig.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-04-23 00:24:41 -07:00
Alexey Neyman
4562aa2cff Handle Python with non-default names
Check for python2/python3 and if found, pass them to --with-python.
Allow user to override the choice via a new config option. This
fixes systems where there is no "python", only "python2" or "python3".

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-04-01 19:19:35 -07:00
Alexey Neyman
6af04d822b cross-gdb: account for canadian/crossnative toolchains
... when determining if it can be linked statically, and if Python
scripting should default to y.

Prompted by a failure of i686-w64-mingw32,nios2-spico-elf sample
on a system where configure didn't report static linking support.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-03-29 18:50:09 -07:00
Alexey Neyman
061765ced6 Mark static gdb/gdbserver EXPERIMENTAL
... and default to 'n'.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-03-15 23:57:22 -07:00
Alexey Neyman
439cab379e Require xz to be present
Some software starts to adopt xz-only distribution (strace,
gcc-linaro, ...). Better that than deal with cryptic errors like
"cannot find strace-.tar.bz2".

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-02-27 22:55:57 -08:00
Alexey Neyman
dd4cf6dde0 Upgrade GDB 7.11 -> 7.11.1
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-02-19 09:37:01 -08:00
Alexey Neyman
92d5c6d159 Upgrade GDB 7.12 -> 7.12.1
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-02-19 09:36:51 -08:00
Alexey Neyman
4d17f393bd Add strace 4.16
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-02-16 12:50:21 -08:00
Alexey Neyman
5920157fdd Supply --disable-build-with-cxx instead of requiring C++
... when building native GDB/gdbserver.

Suggested by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-02-09 22:14:36 -08:00
Alexey Neyman
26ce9942a3 Require C++ support for gdbserver 7.12 or newer.
Also, do not select gdbserver for cross-gdb automatically, or it may
be selected even without meeting the dependencies (if C++ is not enabled)

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-02-02 18:06:28 -08:00
Alexey Neyman
c83335c5a3 Use 'make install' to install DUMA
This serves two purposes:
- installs its manpage
- installs headers, without them it does not make sense to install a
static library

Unfortunately, there's no way to select shared-only build of DUMA.
Hence, disable selection for static library.

Also, allow user to select whether to use stock or ct-ng's wrapper.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-01-30 12:11:37 -08:00
Alexey Neyman
3fc7c1ef69 Fix handling of ltrace 0.5.3 peculiarity.
Also, remove 0.5.2 selection - no longer available for download.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-01-26 12:19:49 -08:00
Alexey Neyman
23aef79883 Declare older versions obsolete.
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-01-26 12:19:49 -08:00
Alexey Neyman
ebf82e8215 Add versions 4.11..4.15 of strace.
Versions 4.13 and older marked as obsolete.
Identify the source of the patches 007..009.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-01-16 09:07:19 -08:00
Alexey Neyman
aa60275fdf Declare GDB 7.9 and older obsolete.
Signed-off-by: Alexey Neyman <stilor@att.net>
2017-01-13 21:53:47 -08:00
Alexey Neyman
d34a6bd8a0 GDB 7.12 needs c++.
Also, minor fixes in 300-gdb.sh

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-01-13 21:47:07 -08:00
Alexey Neyman
d7b313774e Add gdb 7.12.
Same patches apply; changed 101-uclibc-no-gettimeofday-clobber.patch -
modify configure.ac and regenerate configure (rather than modifying
the latter directly).

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-01-13 21:47:07 -08:00
Alexey Neyman
5e0f715ea7 Add/update/remove Linaro versions.
Linaro GDB 7.2 no longer available from Linaro's website; removed.
Linaro GDB 7.5 had incorrect version (the tarball on linaro.org does
not have a -1 patch level).
Add/update latest versions on each (otherwise supported) branches of
GCC, GDB, binutils, glibc.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-01-12 23:00:41 -08:00
Alexey Neyman
83d9e6a49a Kill dmalloc.
- No new releases in almost 10 year.
- No public bug tracker or VCS.
- No responses from maintainer over sent patches.

RIP, dmalloc.

Signed-off-by: Alexey Neyman <stilor@att.net>
2016-12-16 16:10:32 -08:00
Alexey Neyman
5e49166140 Disallow dmalloc for bare metal.
In case of bare metal, newlib is built without any syscalls,
and dmalloc fails to link with undefined references to _exit,
fstat, open, sbrk and so on.

Same for DUMA: depends on <memory.h>, not available with newlib.

Signed-off-by: Alexey Neyman <stilor@att.net>
2016-11-29 00:33:52 -08:00
kozyilmaz
2885b0ea2a duma: add SHARED_LIBS dependency for DUMA shared library option 2016-09-07 17:24:22 +03:00
Alexey Neyman
f204cc8ec4 Spelling fixes.
Signed-off-by: Alexey Neyman <stilor@att.net>
2016-08-23 11:00:27 -07:00
Bryan Hundven
b3869e933b config: Add static link check to static options
If we can't static link with gcc, then don't allow static linking.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2016-02-26 04:14:39 -08:00
Joachim Nilsson
77d7a0f927 gdb: Add support for v7.11, port patches from v7.10.1 that apply
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2016-02-24 23:00:23 +01:00
Bryan Hundven
6edcb10574 gdb: Add version 7.10.1
It's been out for a while, just haven't gotten around to it.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2016-02-05 03:27:08 -08:00
Bryan Hundven
514f1546d7 config: Update kconfig for new CT_GetCustom
This commit sort of unifies the kconfigs to handle custom files and
directories.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
2015-12-08 10:55:16 -08:00