summaryrefslogtreecommitdiffstats
path: root/toolchain/gdb/gdb.mk
Commit message (Collapse)AuthorAgeFilesLines
* gdb: convert to the package infrastructureThomas Petazzoni2013-04-111-234/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit converts gdb to the package infrastructure, and therefore moves it from toolchain/gdb to package/gdb. The target package is now visible in "Package selection for the target" => "Debugging, profiling and benchmark". The main option, "gdb", forcefully selects the "gdbserver" sub-option by default. Another sub-option, "full debugger" allows to install the complete gdb on the target. When this option is enabled, then "gdbserver" is no longer forcefully selected. This ensures that at least gdbserver or the full debugger gets built/installed, so that the package is not a no-op. The host debugger is still enabled through a configuration option in "Toolchain". It is now visible regardless of the toolchain type (it used to be hidden for External Toolchains). The configuration options relative to the host debugger are now in package/gdb/Config.in.host, similar to how we have package/binutils/Config.in.host. Since gdb is now a proper package, it is no longer allowed to 'select BR2_PTHREADS_DEBUG' to ensure thread debugging is available when needed. Instead, it now 'depends on BR2_TOOLCHAIN_HAS_THREADS_DEBUG'. This option, in turn, is selected by the different toolchain backends when appropriate. The 'BR2_TOOLCHAIN_HAS_THREADS_DEBUG_IF_NEEDED' option is removed, since we no longer need to know when it is allowed to 'select BR2_PTHREADS_DEBUG'. Also, the 'BR2_PTHREADS_DEBUG' option is moved to appear right below the thread implementation selection (in the case of the Buildroot toolchain backend). Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* gdb: build gdbserver with TARGET_MAKE_ENVThomas Petazzoni2013-02-041-0/+1
| | | | | | | | | | | | | | | | | | | This commit fixes the exact same problem than 21a0c11a90f9ff19c78a5f32e0a2e9064fd28054, but for the gdbserver build. The problem is that when you use the Crosstool-NG toolchain backend, gawk gets built as a dependency of Crosstool-NG. So the gdb configure scripts detects it, and assumes it is in the PATH (because the gdb configure step gets run with TARGET_MAKE_ENV). But then, the build fails, because it tries to run gawk, but gawk isn't in the PATH, because we forget to use this TARGET_MAKE_ENV variable when building gdbserver. Fixes http://autobuild.buildroot.org/results/d0173de533b5e2fffed2eff7327a502ed2d787cd/build-end.log Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* gdb: properly pass the PATH when building gdb for the hostThomas Petazzoni2012-11-281-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | When building gdb for the host, we properly pass the PATH (through HOST_CONFIGURE_OPTS) during the configure step, but we forget to do so for the compilation step. The result of this is that when the Crosstool-NG backend is used, gawk is built and installed in $(HOST_DIR), as a dependency of the crosstool-ng package. Then, the host gdb configure script detects this gawk binary ($(HOST_DIR) is in the PATH), and assumes gawk is available. Unfortunately, during the compilation step, it fails to find the expected gawk binary, because $(HOST_DIR) is no longer in the PATH. This causes the following build failure: http://autobuild.buildroot.org/results/067d0c2ea01673ba98ec11de2426f1ab92dac800/build-end.log In order to fix this, we simply call the compilation step of gdb for the host with $(HOST_MAKE_ENV), as it should have been done from the beginning. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* xtensa: use uppercase for configurations and modified overlay structureChris Zankel2012-11-211-3/+3
| | | | | | | | | | | Except for architecture and processor names, buildroot uses capitalized configuration names, so change the macro names for xtensa to follow that standard. Change the overlay file to have a subdirectory for each component (gdb, binutils, gcc, etc.) to make it more future-prove. Signed-off-by: Chris Zankel <chris@zankel.net> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* xtensa: support configurable processor configurationsChris Zankel2012-11-151-0/+4
| | | | | | | | | | | | | | | | | | | Xtensa is a configurable processor architecture, which allows to define additional instructions and registers. The required variant specific information for the toolchain is delivered in an 'overlay' file, which needs to be 'untarred' to the corresponding directories after the source is installed and patched. This patch provides support for binutils, gcc, and gdb with a very limited changes to the build scripts. These additions are only executed for the Xtensa architecture and have no effect on other architectures. [Thomas: rebased on top of the 'arch: improve definition of gcc mtune, mcpu, etc.' patch, and changed 'Target ABI' to 'Target Architecture Variant']. Signed-off-by: Chris Zankel <chris@zankel.net> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Remove the Xtensa architectureThomas Petazzoni2012-09-201-6/+1
| | | | | | | | | | | | | | As stated in commit 555c2585bf28c3ef71f6d2dcdd983d17a19892af, the Xtensa architecture has been introduced in 2009 and never changed since its initial introduction. It requires some special handling that is a bit annoying, and despite our call to the initial developers, and the announcement of the deprecation of the architecture during the 2012.05, nothing has happened. Therefore, drop support for this architecture. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: me Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain: reinstate host/usr/bin/$arch-linux-* symlinks for gcc/gdb binariesPeter Korsgaard2012-06-231-0/+1
| | | | | | As people might be using them. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Remove REAL_GNU_TARGET_NAMERichard Braun2012-06-231-9/+7
| | | | | | | | Instead of providing two variables, make GNU_TARGET_NAME give the real target name, and remove REAL_GNU_TARGET_NAME altogether. Signed-off-by: Richard Braun <rbraun@sceen.net> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* gdb: fix target gdb build when host-gawk is built beforeThomas Petazzoni2012-05-071-0/+1
| | | | | | | | | | | | | | | | | | | | | | When the crosstool-ng backend is used, host-gawk is built as a dependency of the crosstool-ng package, and therefore an host 'gawk' binary is installed in $(HOST_DIR). When the target gdb package is also selected, this unfortunately leads to a build failure, as reported on http://buildroot.humanoidz.org/results/f19c0499d08212d8b5100fa9434e1197092957db/build-end.log. The problem is that the ./configure of gdb detects gawk in the PATH, but at compile time, it fails to find gawk. This is due to the fact that the gdb compilation process is started without the correct path. This patch fixes this by passing $(TARGET_MAKE_ENV) in the environment of the gdb compilation process. A better fix would be to switch gdb to the AUTOTARGETS infrastructure in the future. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* DOWNLOAD: change $1=DIRECTORY_URL, $2=FILE_NAME to $1=FULL_FILE_URL, ↵Alvaro G. M2012-03-181-1/+1
| | | | | | | | | | | | | | | | | | | | | $2=FILE_NAME This modifies the definition of DOWNLOAD to receive two arguments: the first one is the full URL of the file to download, whereas the second (and optional) is the name the file will have once downloaded. Same thing with the SOURCE_CHECK_WGET and SCP functions. All calls to these functions have been changed to the shortest form of the new API, except for toolchains acquisition. Since there is quite a number of different toolchains this call to DOWNLOAD is better set to the generic one. Signed-off-by: Alvaro G. M <alvaro.gamez@hazent.com> Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Tested-by: Stephan Hoffmann <sho@relinux.de> Downloading Microblaze LE toolchain works on a clean install Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* gdb: also force ELF support for gdbhostPeter Korsgaard2012-01-241-0/+2
| | | | | | | | | | | | | | | | Similar to how we do for target (ee39d53ce3ee (Fix GDB BFD test linking)). Gdb comes with an embedded copy of libiberty, but binutils also installs libiberty.a into HOST_DIR. The gdb configure script tries to link against this one rather than the gdb version when it checks for ELF support. This may fail if those versions are not compatible, leading to obscure error messages from gdb at runtime such as: I'm sorry, Dave, I can't do that. Symbol format `elf32-$ARCH' unknown. Fix it by forcing ELF support. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain/gdb: strip tarball component when extractingYann E. MORIN2011-10-051-7/+2
| | | | | | | | | | | | | | | | For some tarballs of gdb (see next patch), the extracted directory is *not* named after the version string (eg. gdb-6.6a extract into gdb-6.6/) Create the appropriate directory first, then use --strip-{components,path} when extracting gdb (the same way it is done for the generic package infrastructure). At the same time, get rid of the snapshot special case, because: 1- it's no longer available in the menu 2- it would be handled by the above change Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* support: move package/gnuconfig to support/gnuconfigThomas Petazzoni2011-09-171-1/+1
| | | | | | | | | | | | The CONFIG_UPDATE macro is no longer defined in package/gnuconfig/gnuconfig.mk, but instead in package/Makefile.autotools.in. It it also changed a little bit to take the directory of the package sources as argument, and the AUTOTARGETS infrastructure is updated to use this macro. [Peter: drop echo in CONFIG_UPDATE] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* support: move patch-kernel.sh and rename itThomas Petazzoni2011-09-171-1/+1
| | | | | | | | The name "patch-kernel.sh" is a bit stupid, since this script is used to patch everything in Buildroot, not only kernel trees. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* gdb: depend on host-expat to fix remote debuggingBjørn Forsman2011-02-281-1/+2
| | | | | | | | | | | | | This patch fixes the following error when using GDB with gdbserver: warning: Can not parse XML target description; XML support was disabled at compile time Remote 'g' packet reply is too long: <very long line of hex chars> [remote debugging does not work] Use $(HOST_CONFIGURE_OPTS) so expat is found. Signed-off-by: Bjørn Forsman <bjorn.forsman@gmail.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* gdb: fixup symlink handling now tolchain gets installed into HOST_DIRPeter Korsgaard2011-01-041-3/+1
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* gdb: add source targets for gdbserver/gdbhostPeter Korsgaard2010-11-191-0/+4
| | | | | | So it gets handled by make source / external-deps Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* gdb: drop local stripping in favor of top levelMike Frysinger2010-11-181-2/+0
| | | | | | | | | | Since the top level takes care of stripping for us, and some file formats cannot be stripped safely (like FLAT which will error out), simply punt the manual stripping from the gdb package. Signed-off-by: Mike Frysinger <vapier@gentoo.org> Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Update all packages to quote $(TARGET_CC)Thomas Petazzoni2010-07-071-2/+2
| | | | | | | Now that TARGET_CC contains several space-separated words, it must be used quoted everywhere. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Fix GDB BFD test linkingPaulius Zaleckas2010-05-011-0/+2
| | | | | | | | | | | | | | When compiling GDB for target (in my case i386) it links wrong BFD library from host OS. This prevents GDB from compiling support for ELF and thus GDB is unusable on target. More about this issue was already posted at: http://lists.uclibc.org/pipermail/buildroot/2009-March/026585.html Fix this issue by forcing ELF support. Signed-off-by: Paulius Zaleckas <paulius.zaleckas@gmail.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain/gdb: remove external source toolchain leftoverPeter Korsgaard2010-02-091-4/+1
| | | | | | | | Commit 65e99014 (Remove external source toolchain options) removed external source-based toolchain support, but there was still a check for it in gdb. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain/gdb: get rid of another legacy and unused variableYann E. MORIN2010-02-091-7/+5
| | | | | | | | BR2_VENDOR_GDB_VERSION and VENDOR_GDB_VERSION are no longer settable. The only user is gdb, and it's totally useless in this case. Signed-off-by: Yann E. MORIN <yann.morin.1998@anciens.enib.fr> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain/gdb: get rid of legacy & unused variablesYann E. MORIN2010-02-081-1/+1
| | | | | | | | The BR2_VENDOR_SUFFIX and VENDOR_SUFFIX variables are no longer settable. The only user is gdb, and is totally useless in this case. Signed-off-by: Yann E. MORIN <yann.morin.1998@anciens.enib.fr> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* gdb: add avr32 special versonThomas Petazzoni2009-12-141-4/+9
| | | | | | | | | | | * Add a new gdb version for AVR32 in Config.in * Use a special mirror for this gdb version in gdb.mk * Do not try to apply patches when the patch directory does not exist in gdb.mk Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* buildroot: silence ./configure step when building with 'make -s'Peter Korsgaard2009-10-011-3/+3
| | | | | | | | | | We have been passing -q to ./configure when using 'make -s' for packages using Makefile.autotools.in for some time. Do the same for packages using autotools, but not using the Makefile.autotools.in infrastructure, taking care to not do it for packages with hand written configure scripts. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* rename TOOL_BUILD_DIR to TOOLCHAIN_DIRMichael Roth2009-09-231-5/+5
| | | | | | | | To reflect the new output directory hierachy rename the Makefile variable TOOL_BUILD_DIR to TOOLCHAIN_DIR. Signed-off-by: Michael Roth <mroth@nessie.de> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain: use qstripThomas Petazzoni2009-09-051-2/+1
| | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* toolchain: xtensa toolchain patch supportMaxim Grigoriev2009-07-241-1/+6
| | | | | | | Part of #163. Signed-off-by: Maxim Grigoriev <maxim2405@gmail.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain/gdb: remove ancient deprecated versionsPeter Korsgaard2009-04-281-9/+0
| | | | | They shouldn't be used anymore, needs havily patching (6.3 has more than 200k patches) and no one tests them with current toolchains.
* toolchain/gdb: remove broken snapshot supportPeter Korsgaard2009-04-281-10/+0
|
* toolchain: fix up GNU_TARGET_NAME link and target_utils locationPeter Korsgaard2009-01-301-2/+2
| | | | | | The GNU_TARGET_NAME symlink and target_utils location were not correctly adjusted to match the move of the toolchain to $(STAGING_DIR)/usr, creating dangling symlinks.
* toolchain/: convert to DOWNLOAD helperPeter Korsgaard2009-01-161-1/+1
|
* toolchain: use same gdb Config.in for internal/external toolchainsPeter Korsgaard2008-12-151-5/+0
| | | | | | | | | | We used to use different gdb configs for internal and external toolchains because mconf won't source the same file twice. This works, but is kind of sub optimal, as people forget to keep them in sync. Fix it to use the same file for both situations by shuffling around the config options a bit. Should work identical to before (except for the newer gdb versions available for ext).
* toolchain/: get rid of unneeded $(strip ..)Peter Korsgaard2008-12-081-4/+4
|
* toolchain/gdb: add -source targetPeter Korsgaard2008-12-071-0/+1
|
* toolchain/*: use CONFIG_UPDATEPeter Korsgaard2008-12-051-1/+1
| | | | Based on e0e0945e in Bernhard's tree.
* toolhain/: confgure: respect quiet optionPeter Korsgaard2008-10-261-0/+1
|
* toolchain/gdb: unbreak target gdb supportPeter Korsgaard2008-08-241-5/+1
| | | | | | | r22624 (Ulf: Add prepatched AVR32 gcc-4.2.2 toolchain) broke target gdb support as it tries to apply gdb patches twice. Unbreak it. Closes #3954.
* Add prepatched AVR32 gcc-4.2.2 toolchain from www.atmel.no, move patch ↵Ulf Samuelsson2008-07-041-2/+8
| | | | locations for prepatched toolchain to be under the toolchain directory
* disable werror in gdbUlf Samuelsson2008-07-011-0/+1
|
* disable configure caching in gdb, courtesy of Fathi BoudraUlf Samuelsson2008-07-011-5/+7
|
* gdb: support external toolchainPeter Korsgaard2008-06-161-9/+5
|
* Add support for GNU and kernel.org mirrorsIvan Kuten2007-12-171-1/+1
|
* - just use the strip binary to avoid confusing libtool (quotes)Bernhard Reutner-Fischer2007-10-011-2/+2
| | | | - use $(STRIPCMD) in packages to avoid clashes with $(STRIP)
* - revert some bad checkins, fixup bad settings in atmel targets and move the ↵Bernhard Reutner-Fischer2007-09-261-3/+3
| | | | gcc target abi back to a place where the other arch-specific settings live
* reinstate AVR32 toolchainUlf Samuelsson2007-09-261-2/+2
|
* - remove one invariant in toolchain type selection.Bernhard Reutner-Fischer2007-09-251-2/+2
|
* - semicolon touchup. No other changesBernhard Reutner-Fischer2007-08-221-3/+3
|
* - fixup whitespace damage after ulfBernhard Reutner-Fischer2007-08-211-2/+2
|
* - sed -i -e "/;$/s/;$//g" $(egrep ";$" package/* package/*/*.mk toolchain/* ↵Bernhard Reutner-Fischer2007-08-211-3/+3
| | | | toolchain/*/*.mk */Makefile.in -l)