Commit Graph

85 Commits

Author SHA1 Message Date
Thomas Petazzoni
962ea5b29b gcc: do not pass --with-pkgversion to gcc < 4.3
Commit 09c181f289 added new options
passed to gcc configure to set --with-pkgversion and --with-bugurl, to
gcc >= gcc 4.3. To check this, it was checking that the GCC_VERSION
string does not contain 4.2.

Unfortunately, the test is bogus. It does a findstring on x4.2. (with
a final dot) but compares the result with x4.2 (without the final
dot).

The result is that even with 4.2 versions, the test was true, leading
--with-pkgversion and --with-bugurl being passed to gcc's configure
script.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2009-12-15 12:03:05 +01:00
Peter Korsgaard
29a9d99b18 Merge branch 'remove-external-toolchain' of git://git.busybox.net/~tpetazzoni/git/buildroot 2009-12-15 00:19:17 +01:00
Thomas Petazzoni
495e5bdca3 gcc: remove GCC_OFFICIAL_VERSION and just use GCC_VERSION instead
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2009-12-14 23:54:45 +01:00
Thomas Petazzoni
3f90a29baf gcc: remove support for external source toolchains
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2009-12-14 23:54:44 +01:00
Thomas Petazzoni
d3f383b1ee gcc: add avr32 special version
* Add new gcc version 4.2.2-avr32-2.1.5 in Config.in

 * Select the Atmel mirror to download gcc with avr32 in their version
   name, in gcc-uclibc-*.mk

 * Do not apply patches if the patch directory is empty, in
   gcc-uclibc-*.mk

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2009-12-14 23:54:42 +01:00
Thomas Petazzoni
48fbdaaea6 gcc: remove hurd specific details
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2009-12-14 23:45:59 +01:00
Gustavo Zacarias
09c181f289 Add pkgversion to gcc >= 4.3
Closes #765.

[Peter: change to check for !4.2.x instead]
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-12-06 18:41:15 +01:00
Peter Korsgaard
3fdf0bffb8 buildroot: silence ./configure step when building with 'make -s'
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>
2009-10-01 21:24:42 +02:00
Austin Foxley
3ab4b632a0 Add a config option for gcc tls support, rather than disabling it blindly
Defaulted to yes, but blocked it from gcc 4.4.x since the disable was
originally added because of problems with its c++ support reportedly.

Signed-off-by: Austin Foxley <austinf@cetoncorp.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-09-23 09:34:08 +02:00
Michael Roth
cb5710c538 rename TOOL_BUILD_DIR to TOOLCHAIN_DIR
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>
2009-09-23 09:15:27 +02:00
Thomas Petazzoni
397fe5cc0b Remove the "project" feature
The "project" feature was designed to allow to several projects to be
built inside the same Buildroot source tree and allowing the toolchain
and non-configurable packages to be shared between the different
projects on the same architecture. While being interesting in theory,
this feature adds a level of complexity to Buildroot, both from an
user perspective and from a developer perspective, while one of the
main Buildroot strengh is to be simple. Moreover, this feature is only
seldomly used by our users.

From a user-level perspective, this for example allows to remove the
project_build_ARCH directory, which was very confusing. The
autotools-stamps directory is also removed, since these stamps are
back at their normal location.

Description of the changes involved :

 * project/, directory removed

 * Makefile

    - Don't include project/Makefile.in and project/project.mk anymore

    - Grab a copy of the contents of project/Makefile.in at the
      location it was imported, but remove the definition related to
      PROJECT_BUILD_DIR. The TARGET_DIR is now in
      $(BUILD_DIR)/target_dir

    - Remove the creation/removal of the $(PROJECT_BUILD_DIR) and
      $(PROJECT_BUILD_DIR)/autotools-stamps directories

    - Don't make world depends on target-host-info. This target was
      defined by project/project.mk to customize /etc/issue,
      /etc/hostname and create /etc/br-version depending on the
      project definitions. We can of course imagine re-adding such a
      feature later.

    - Replace PROJECT_BUILD_DIR by BUILD_DIR everywhere

    - Remove the update, log and lognr.$(PROJECT) target, they were
      specific to the project feature.

 * package/Makefile.autotools.in

    - Replace PROJECT_BUILD_DIR by BUILD_DIR for the location of the
      configure cache

    - Move the INSTALL_TARGET and HOOK_POST_INSTALL stamps to the same
      directory as the other stamps (i.e, in the package directory).

 * package/Makefile.in

    - Replace PROJECT_BUILD_DIR by BUILD_DIR for the location of the
      configure cache

 * package/at/at.mk,
   package/busybox/busybox.mk,
   package/busybox/initramfs.mk,
   package/customize/customize.mk,
   package/linux-fusion/linux-fusion.mk,
   package/ltp-testsuite/ltp-testsuite.mk,
   package/nfs-utils/nfs-utils.mk,
   target/cpio/cpioroot.mk,
   target/cramfs/cramfs.mk,
   target/device/Atmel/DataFlashBoot/DataflashBoot.mk,
   target/device/Atmel/Makefile.in,
   target/device/Atmel/at91bootstrap/at91bootstrap.mk,
   target/device/KwikByte/Makefile.in,
   target/ext2/ext2root.mk,
   target/initramfs/initramfs.mk,
   target/iso9660/iso9660.mk,
   target/jffs2/jffs2root.mk,
   target/linux/Makefile.in,
   target/romfs/romfs.mk,
   target/squashfs/squashfsroot.mk,
   target/tar/tarroot.mk,
   target/ubifs/ubifsroot.mk

    - Replace PROJECT_BUILD_DIR by BUILD_DIR

 * target/device/Config.in

    - Do not include project/Config.in anymore

 * target/linux/Makefile.in.advanced

    - Replace PROJECT_BUILD_DIR by BUILD_DIR

    - Store the stamps file in $(STAMP_DIR) instead of
      $(PROJECT_BUILD_DIR)/autotools-stamps

 * target/u-boot/Makefile.in

    - Replace PROJECT_BUILD_DIR by BUILD_DIR

    - Remove $(PROJECT) from the U-Boot target binary name

    - Remove the insertion in the configuration of the project name as
      the hostname

    - The u-boot-autoscript target now generates
      $(U_BOOT_AUTOSCRIPT).img instead of
      $(U_BOOT_AUTOSCRIPT).$(PROJECT)

 * toolchain/gcc/gcc-uclibc-3.x.mk
   toolchain/gcc/gcc-uclibc-4.x.mk

    - Move the stamps files to $(STAMP_DIR)

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2009-09-16 20:28:25 +02:00
Maxim Grigoriev
adb9e905da toolchain: xtensa toolchain patch support
Part of #163.

Signed-off-by: Maxim Grigoriev <maxim2405@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-07-24 02:32:33 +02:00
Peter Korsgaard
90c5d156f5 toolchain/gcc: ensure libraries are copied to target_dir for x86-64
x86-64 stores libgcc_s / libstdc++ / libgcj under lib64 instead of lib,
so make sure that directory is searched as well for libraries to copy
to target.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-07-02 09:41:09 +02:00
Angus Salkeld
bb1f42e442 gcc-4.3.3: add a patch to link with the math lib to get copysignal
Conditionally apply the following patch by Bernhard Reutner-Fischer which
solves a link error on powerpc (with softfloat or multilib) when using
a shared libgcc_s.

See: http://gcc.gnu.org/ml/gcc-patches/2008-10/msg00237.html
http://www.nabble.com/PPC-won't-build-with-soft-float-td22772110.html

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-05-12 10:02:20 +02:00
Peter Korsgaard
a62ceefdd4 toolchain/gcc: fix java support
Not runtime tested, but now it atleast builds.
2009-04-27 14:07:36 +00:00
Peter Korsgaard
1f3eec6e8f toolchain/gcc: disable tls support
Fixes libstdc++ linking with gcc 4.4.x
2009-04-27 10:26:56 +00:00
Peter Korsgaard
3b712a3d89 toolchain/gcc: don't enable libssp support
It's broken anyway as we don't install libssp* into TARGET_DIR, and we
should use the SSP support in uClibc if we want stack protection.
2009-04-22 07:27:17 +00:00
Peter Korsgaard
766c774f28 toolchain/gcc: libstdcpp dependency was listed twice 2009-03-01 20:20:09 +00:00
Peter Korsgaard
16a5a68947 toolchain: revert r25193 (Change binary toolchain configuration)
As discussed on the list.
2009-02-04 13:42:40 +00:00
Ulf Samuelsson
59f084017e Change binary toolchain configuration, so
that the options become visible just below
the config, instead of at bottom of screen

Create a more useful default as toolchain path.

Allow generation of a script which sets up
paths to a binary toolchain generated by buildroot.
2009-01-31 20:49:59 +00:00
Peter Korsgaard
92bd25c9eb toolchain: fix up GNU_TARGET_NAME link and target_utils location
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.
2009-01-30 13:34:42 +00:00
Peter Korsgaard
81ddf3d083 toolchain/gcc: remove unused gcc 3.x cruft from 4.x makefile (sysroot) 2009-01-30 13:34:35 +00:00
Peter Korsgaard
e87389229e toolchain/gcc: remove ancient (and unused) i386 softfloat patch 2009-01-29 19:24:31 +00:00
Peter Korsgaard
6071bb4e1a toolchain/gcc: remove unused GCC_ENABLE_CLOCALE
This variable was introduced in r17046 (add gfortran support,
2006-12-22) and wasn't used even there.

Signed-off-by: Markus Heidelberg <markus.heidelberg@web.de>
2009-01-29 19:13:53 +00:00
Peter Korsgaard
77662160bb toolchain/gcc: make version detection more robust
Thanks to Bernhard for noticing (and less so for causing the problem in
the first place :P)
2009-01-22 11:18:44 +00:00
Peter Korsgaard
79cdd94154 toolchain/gcc: fix target-gcc for 4.3.x
Includes are in include-fixed and GCC_LIB_SUBDIR needs to be set like for
the rest of 4.x
2009-01-22 10:04:30 +00:00
Peter Korsgaard
bc65432230 toolchain: introduce HOSTCC_VERSION and fix gcc-4.3.x build with old host CCs
gcc < 4.2.0 doesn't support -Wno-overlength-stings, but gcc-4.3.x configure
fails to detect that, breaking the build.

Work around it by detecting the host gcc version (and store in HOSTCC_VERSION)
and set the proper configure variables for gcc < 4.2.0.
2009-01-19 09:18:46 +00:00
Ulf Samuelsson
bdac3e337f Update broken AVR32 toolchain, and update configs for this, deprecate all but latest AVR32 toolchain 2009-01-16 22:39:05 +00:00
Peter Korsgaard
0ef35d5d5e toolchain/: convert to DOWNLOAD helper 2009-01-16 11:47:05 +00:00
Peter Korsgaard
7543f7dff4 toolhain/: confgure: respect quiet option 2008-10-26 09:14:02 +00:00
Hans-Christian Egtvedt
50b55c9006 gcc: make installation of shared libraries multi-project safe
This patch modifies the rule for installing the shared libraries into the
project_foo/.../autotools-stamps directory. This will make the installation of
GCC shared libraries be multi-project safe.

Signed-off-by: Hans-Christian Egtvedt <hans-christian.egtvedt@atmel.com>
2008-10-02 15:02:38 +00:00
Hans-Christian Egtvedt
3fac2be724 gcc: make sure that /usr/lib exists on target before installing shared libs
On very lite systems the /usr/lib directory might not exist before libstdc++ is
installed. This patch makes sure the directory exists.

Signed-off-by: Hans-Christian Egtvedt <hans-christian.egtvedt@atmel.com>
2008-10-02 14:32:07 +00:00
Ulf Samuelsson
126bb72fa0 Add prepatched AVR32 gcc-4.2.2 toolchain from www.atmel.no, move patch locations for prepatched toolchain to be under the toolchain directory 2008-07-04 08:39:35 +00:00
Peter Korsgaard
32ac555784 toolchain/gcc: use --disable-decimal-float for 4.3.x 2008-06-21 19:47:17 +00:00
Peter Korsgaard
e31844e307 toolchain/gcc: add 4.3.1
Based on Bernhards tree.
2008-06-19 19:06:04 +00:00
Peter Korsgaard
15d53f0d1b toolchain/gcc: use $(@D) 2008-06-18 15:46:48 +00:00
Peter Korsgaard
65b0f823b2 toolchain/gcc: use $(STRIP_STRIP_UNNEEDED) 2008-06-17 13:33:02 +00:00
Peter Korsgaard
e1c7bea59c toolchain/gcc-4.x: strip cross libgcc / libstdc++ 2008-06-17 13:28:37 +00:00
Peter Korsgaard
de87811186 toolchain/gcc: do not try to strip *-embedspu 2008-04-04 14:16:06 +00:00
Ivan Kuten
cb815ae003 Add support for GNU and kernel.org mirrors 2007-12-17 12:29:06 +00:00
Ivan Kuten
0062430ad5 revert 20646 rev (gcc-cc_links-fix.diff), it's broken for arm as mentioned in 1764 issue 2007-12-17 11:37:47 +00:00
Ivan Kuten
43cff997d7 fix gcc 3.x/4.x symlinks to cc 2007-12-13 12:09:56 +00:00
Ivan Kuten
74a374edb1 'make source' command working again for gcc 2007-10-20 18:09:53 +00:00
Ulf Samuelsson
8e650f6ec0 Allow library copy to fail 2007-10-12 21:01:41 +00:00
Ulf Samuelsson
d2b3ce5c1b Cannot copy shared c++ lib, if one has not been created 2007-10-12 12:30:14 +00:00
Ulf Samuelsson
06cd2634a2 Do not create directories, if they exist 2007-10-07 17:22:56 +00:00
Bernhard Reutner-Fischer
0c16c17f53 - start to think about GNU/hurd support.
Not yet functional. Help welcome
2007-10-05 11:06:56 +00:00
Bernhard Reutner-Fischer
1672e71f17 - remove misplaced comment 2007-10-01 21:06:50 +00:00
Bernhard Reutner-Fischer
14a71561a3 - just use the strip binary to avoid confusing libtool (quotes)
- use $(STRIPCMD) in packages to avoid clashes with $(STRIP)
2007-10-01 16:15:31 +00:00
Bernhard Reutner-Fischer
4ad141c338 - pass configure args for the -target compiler 2007-10-01 12:57:36 +00:00