summaryrefslogtreecommitdiffstats
path: root/package/gcc/gcc-final
Commit message (Collapse)AuthorAgeFilesLines
...
* gcc: fix Objective-C supportThomas Petazzoni2013-09-151-1/+5
| | | | | | | | | | | | | | | | | This commit fixes the Objective-C support in the gcc package by making sure that the runtime Objective-C library is properly installed to the target. It also takes this opportunity to slightly reword the Config.in option help text to have a more meaningful explanation. Finally, it fixes the gcc-final.mk code to use the correct BR2_INSTALL_OBJC option rather than the non-existing BR2_GCC_CROSS_OBJC option, to decide whether Objective-C support should be enabled or not in the cross-compiler. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* gcc: fix Fortran supportThomas Petazzoni2013-09-151-1/+5
| | | | | | | | | | | | | | | | | | This commit fixes the Fortran support in the gcc package by making sure that the runtime Fortran library is properly installed to the target. It also takes this opportunity to slightly reword the Config.in option help text, to no longer mention gcc < 4.2 since they are no longer supported in Buildroot, and to have a more meaningful explanation. Finally, it fixes the gcc-final.mk code to use the correct BR2_INSTALL_FORTRAN option rather than the non-existing BR2_GCC_CROSS_FORTRAN option, to decide whether Fortran support should be enabled or not in the cross-compiler. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* gcc: pass MAKEINFO=missing in the environment rather than as a ./configure argPeter Korsgaard2013-09-041-0/+3
| | | | | | | | | | | | | | Fixes a build issue with the avr32 toolchain: http://jenkins.free-electrons.com/job/buildroot/config=atngw100_defconfig/104/ Invalid configuration `MAKEINFO=missing': machine `MAKEINFO=missing' not recognized Instead pass it in the environment of ./configure, similar to how it was done originally in 62322acb2ce (toolchain/gcc: disable makeinfo). Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* gcc-final: Drop obsolete code for handling lib64Markos Chandras2013-08-281-14/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | Since 5628776c4a4d29d0715633ea463b64cc19e19c5a "toolchain-external: fix lib64 symlinks" lib64 is a symlink to lib so there is no reason to copy the libraries to lib64 anymore. This fixes multiple building problems for buildroot toolchains: [...] mv: 'output/host/usr/mips64-buildroot-linux-uclibc/sysroot/lib64/libuClibc-0.9.33.2.so' and 'output/host/usr/mips64-buildroot-linux-uclibc/sysroot/lib/libuClibc-0.9.33.2.so' are the same file mv: 'output/host/usr/mips64-buildroot-linux-uclibc/sysroot/lib64/libutil-0.9.33.2.so' and 'output/host/usr/mips64-buildroot-linux-uclibc/sysroot/lib/libutil-0.9.33.2.so' are the same file mv: 'output/host/usr/mips64-buildroot-linux-uclibc/sysroot/lib64/libutil.so.0' and 'output/host/usr/mips64-buildroot-linux-uclibc/sysroot/lib/libutil.so.0' are the same file rmdir: failed to remove 'output/host/usr/mips64-buildroot-linux-uclibc/sysroot/lib64': Not a directory [...] Signed-off-by: Markos Chandras <markos.chandras@imgtec.com> Reviewed-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* gcc: fix !BR2_LARGEFILE buildsFrancois Perrad2013-08-071-0/+1
| | | | | | | | see http://lists.busybox.net/pipermail/buildroot/2013-August/076278.html Signed-off-by: Francois Perrad <francois.perrad@gadz.org> Tested-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* gcc-final: ensure TARGET_DIR/usr/lib exists before copying to itPeter Korsgaard2013-07-171-0/+1
| | | | | | Got dropped in the toolchain/gcc -> package/gcc conversion. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* gcc: create symbolic link to ld-linux in EABIhf/gcc 4.7/eglibcThomas Petazzoni2013-07-161-0/+12
| | | | | | | | | | | When using eglibc, the ld-linux loader is installed as ld-linux-armhf.so.3, but gcc 4.7.x was not yet updated, and generates binaries that reference ld-linux.so.3. This was fixed starting with gcc 4.8.x. In order to be able to use gcc 4.7, we create the appropriate symbolic link. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* gcc: remove BR2_GCC_SHARED_LIBGCC optionThomas Petazzoni2013-07-111-9/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | Commit 6b48b4803450 ("add a know to enable/disable building a shared libgcc"), from october 2006, isn't really as to why a BR2_GCC_SHARED_LIBGCC option was needed. However, now that gcc has been converted to the package infrastructure, it causes problems because the host packages are always being passed --enable-shared --disable-static, so re-adding --disable-shared on top of that break things. Moreover, our tests indicate that both a shared *and* a static version of libgcc are built, and that linking dynamically and statically a program that uses libgcc_s gives correct results: dynamically linked against libgcc_s in the first case, statically linked in the second case. Therefore, it appears that this option is no longer necessary, and removing it has the advantage of fixing the builds of qemu_mips64_malta_defconfig and qemu_sparc_ss10_defconfig, both of which had BR2_GCC_SHARED_LIBGCC not enabled. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Tested-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Acked-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* eglibc: enable support in the Buildroot toolchain backendThomas Petazzoni2013-07-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | Using the newly introduced 'eglibc' package, this commit enables the option of building a toolchain using the eglibc C library in the Buildroot toolchain backend. In details, this commit: * Creates a choice to select uClibc or eglibc in the Buildroot toolchain backend (in toolchain/toolchain-buildroot/Config.in), and removes the fact that the Buildroot toolchain backend forcefully enables uClibc (toolchain/Config.in). * Creates a BUILDROOT_LIBC variables, which points to the package implementing the C library (i.e either 'uclibc' or 'eglibc'). * Modifies the gcc-final and gcc-intermediate makefiles to use the BUILDROOT_LIBC variable instead of hardcoding the use of uclibc. * Ensures that TLS support is always enabled when building eglibc. [Peter: fix commit text to refer to BUILDROOT_LIBC] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* gcc-initial, gcc-intermediate, gcc-final: optimize extractionThomas Petazzoni2013-07-031-0/+2
| | | | | | | | | | | | | | | | Several sub-directories of the gcc code base are in fact not needed for the Buildroot build: libjava/, libgo/ and gcc/testsuite/ being the biggest ones. Avoiding their extraction saves quite a bit of disk space, and compensates a bit the fact that we now extract three times the gcc source code. This requires changing the 100-uclibc-conf.patch to no longer patch files from the libjava/ directory, since this directory is no longer extracted. [Peter: add comment about why this is done] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* gcc-final: new packageThomas Petazzoni2013-07-031-0/+135
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
OpenPOWER on IntegriCloud