summaryrefslogtreecommitdiff
path: root/meta/recipes-devtools/gcc
AgeCommit message (Collapse)AuthorFiles
2012-05-06gcc-4.6: disable cloog, change syntax to disable pplAndreas Oberritter1
* Backported from 523df15bcc21e1749771cca757613f3520243b8e as suggested by Khem. * Original commit message: If build system has those libraries installed gcc configure will pick them up. We want consistent builds so we disable them since we do not (yet) support them Signed-off-by: Andreas Oberritter <obi@opendreambox.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-04gcc-4.6: explicitly disable pplAndreas Oberritter1
* Fixes the following error after a system library upgrade | .../mipsel-oe-linux/4.6.4/cc1: error while loading shared libraries: libppl.so.10: cannot open shared object file: No such file or directory Signed-off-by: Andreas Oberritter <obi@opendreambox.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-03gcc-package-target: add libexec for pluginSaul Wold2
Fixes: ERROR: For recipe gcc, the following files/directories were installed but not shipped in any package: ERROR: /usr/libexec/gcc/i586-poky-linux/4.7.1/plugin/gengtype Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-05-02libgcc: Add MLPREFIX to sanity check skipSaul Wold1
Fixes: ERROR: QA Issue: non -staticdev package contains static .a library: lib32-libgcov-dev path '/work/x86-pokymllib32-linux/lib32-libgcc-4.7.0+svnr186651-r0/packages-split/lib32-libgcov-dev/usr/lib/i586-pokymllib32-linux/4.7.1/libgcov.a' ERROR: QA run found fatal errors. Please consider fixing them. ERROR: Function failed: do_package_qa ERROR: Logfile of failure stored in: /srv/home/pokybuild/yocto-autobuilder/yocto-slave/nightly-multilib/build/build/tmp/work/x86-pokymllib32-linux/lib32-libgcc-4.7.0+svnr186651-r0/temp/log.do_package.9691 NOTE: package lib32-libgcc-4.7.0+svnr186651-r0: task do_package: Failed ERROR: Task 1077 (virtual:multilib:lib32:/srv/home/pokybuild/yocto-autobuilder/yocto-slave/nightly-multilib/build/meta/recipes-devtools/gcc/libgcc_4.7.bb, do_package) failed with exit code '1' Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-05-01gcc-cross.inc: Fix cross testing scriptKhem Raj1
shift the cmdline argument after determining there is atleast 1 argument to shift otherwise it ends up in error when no argument is specified Signed-off-by: Khem Raj <raj.khem@gmail.com>
2012-04-26gcc-package-sdk: Package plugin files generated by gcc-4.7Khem Raj1
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2012-04-26gcc-4.7: Do not use --with-header option for cross-gccKhem Raj2
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2012-04-26gcc-4.7: Let cpp specs honor include searches in relocated install treeKhem Raj2
Fix from Yocto Bug 2074 Signed-off-by: Khem Raj <raj.khem@gmail.com>
2012-04-26gcc-4.7: Use full relative path in require directiveKhem Raj10
This will help in meta-linaro where it will be able to utilize maximum recipes from OE-Core and thereby keep close compatibility with OE-Core gcc recipes Signed-off-by: Khem Raj <raj.khem@gmail.com>
2012-04-26libgcc-4.7: Package libgcov nativesdk correctlyKhem Raj1
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2012-04-26gcc-4.7: Lower the internal consistency check level to releaseKhem Raj1
This should help in speeding up compilation at the expense of a bit less info when gcc ICEs but we dont get many gcc ICEs and therefore using --enable-checking=release is right balance Signed-off-by: Khem Raj <raj.khem@gmail.com>
2012-04-26gcc-4.7: Disable cloog and pplKhem Raj1
If build system has those libraries installed gcc configure will pick them up. We want consistent builds so we disable them since we do not (yet) support them Signed-off-by: Khem Raj <raj.khem@gmail.com>
2012-04-26gcc-package-target: Add the dangling files to specific packagesKhem Raj1
create a new package to have lto dev packages bundled Signed-off-by: Khem Raj <raj.khem@gmail.com>
2012-04-26gcc-crosssdk-intermediate: Use --with-native-system-header-dir for 4.7Khem Raj3
--with-native-system-header-dir is relative to sysroot which is what we want --with-headers is deprecated anyway Signed-off-by: Khem Raj <raj.khem@gmail.com>
2012-04-26gcc-cross-canadian_4.7.bb: Override ARCH_FLAGS_FOR_TARGETKhem Raj1
We need -isystem=${target_includedir} in there Signed-off-by: Khem Raj <raj.khem@gmail.com>
2012-04-26gcc-4.7: Define own do_configure_prependKhem Raj1
gcc-4.7 does not define STANDARD_INCLUDE_DIR Signed-off-by: Khem Raj <raj.khem@gmail.com>
2012-04-26gcc-4.7: Add recipesKhem Raj40
Add new recipes for gcc-4_7-branch right now gcc 4.7.0 is latest release from this branch Signed-off-by: Khem Raj <raj.khem@gmail.com>
2012-04-26gcc-configure-common.inc: Use libc-uclibc overrideKhem Raj1
Its better than duplicating the overrides Signed-off-by: Khem Raj <raj.khem@gmail.com>
2012-04-26gcc-4.6: Specify complete paths in require directiveKhem Raj10
This is needed for adjusting meta-linaro where linaro gcc recipes leverage the core recipe infrastructure and modifies minimal to keep compatibility with OE-Core so that any changes in OE-Core gcc recipes does not trigger changes in meta-linaro. Signed-off-by: Khem Raj <raj.khem@gmail.com>
2012-04-26gcc-4.6: Remove redundant overridesKhem Raj1
Use libc-uclibc override instead of TARGET_OS override Signed-off-by: Khem Raj <raj.khem@gmail.com>
2012-04-26libgcc_4.6: Package libgcov nativesdk correctlyKhem Raj1
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2012-04-26gcc-configure: Render --with-local-prefix harmlessKhem Raj7
this option by default points to /usr/local no matter what so we cant let it sit on sidelines otherwise it will access host machine's /usr/local which may not be desired. So disable this option. This also helps in making gcc's shared state more consistent Signed-off-by: Khem Raj <raj.khem@gmail.com>
2012-04-26gcc: Stash the gcc-cross builddir to reuse in libgcc and gcc-runtimeKhem Raj4
Currently we stash the libgcc install tree and then reuse that to populate libgcc recipe later. This mechanism does not work for gcc 4.7/trunk since now libstdc++ needs access to build tree of libgcc. This patch stashes the gcc-cross build tree and then reuses this in libgcc as well as in gcc-runtime recipe builds. Now we build libgcc in the libgcc recipe instead of just using the prebuilt install tree core-image-minimal build/run tested on all qemu machines Signed-off-by: Khem Raj <raj.khem@gmail.com>
2012-04-26gcc-configure: Pass distinct target flagsKhem Raj3
When building gcc-cross-canadian libgcc is built using headers from gcc-crosssdk and not the target sysroot because we do not pass proper CFLAGS for target bits so it ends up using CFLAGS that were meant for compiling canadian gcc itself. It does not show up as a problem when building SDK with eglibc because eglibc-nativesdk and eglibc have identical headers. The problem shows up clearly when you try to build uclibc based meta-toolchain since then nativesdk libc and target libc are different Signed-off-by: Khem Raj <raj.khem@gmail.com>
2012-04-24gcc: Add plugins package for ARM, fix /usr/incude packagingSaul Wold1
WARNING: For recipe gcc, the following files/directories were installed but not shipped in any package: WARNING: /usr/include WARNING: /usr/lib/gcc/arm-poky-linux-gnueabi/4.6.4/plugin/libgcc WARNING: /usr/lib/gcc/arm-poky-linux-gnueabi/4.6.4/plugin/libgcc/config WARNING: /usr/lib/gcc/arm-poky-linux-gnueabi/4.6.4/plugin/libgcc/config/arm WARNING: /usr/lib/gcc/arm-poky-linux-gnueabi/4.6.4/plugin/libgcc/config/arm/bpabi-lib.h Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-04-24libgcc: Package additional *crt*.o files for PPCSaul Wold1
WARNING: For recipe libgcc, the following files/directories were installed but not shipped in any package: WARNING: /usr/lib/powerpc-poky-linux/4.6.4/ecrti.o WARNING: /usr/lib/powerpc-poky-linux/4.6.4/ncrti.o WARNING: /usr/lib/powerpc-poky-linux/4.6.4/ecrtn.o WARNING: /usr/lib/powerpc-poky-linux/4.6.4/ncrtn.o Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-04-15gcc-configure-common.inc: Stop gcc looking at build system pathsRichard Purdie1
There were puzzling failures when you make a force recompile of any gcc component. The error was in do_configure with cross-compilation badness being detected in config.log files. gcc is different in that many of the config.log files are generated during the do_compile phase. This means this host contamination issue has always been present but only shows up on a rebuild. The fix is to force the appropriate configuration variable to "none required" then gcc won't look in the bad locations. [YOCTO #2279] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-04-13gcc-4.6: Add fix for relocation problem and ccacheRichard Purdie2
If the toolchain is reused from sstate and ccache is installed, build failures were occuring due to gcc trying to access the original sysroot rather than the new one, particularly if the old sysroot existed but was not readable by the current user. This turns out of the an issue inside gcc to do with preservation of the sysroot option. See the gcc patch for more details. It only triggers when preprocessed sources are used which happens when ccache is used. The same issue occurs with c++ and c++-cpp-output so the same fix is applied there. [YOCTO #2074] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-04-04gcc-cross-intermediate: fix do_install for x32Nitin A Kamble1
This Fixes [Ycoto #2223] bug. The gcc osdir is obtained in the do_install by invocation of command "gcc -print-multi-os-directory". For x32 it returns gcc osdir for the default abi which is x86_64. Fix this by adding target abi parameter to the gcc command line to get correct gcc osdir with invocation of command "gcc -mx32 -print-multi-os-directory" Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
2012-03-28gcc-cross-intermediate: Ensure we move the libraries from the correct locationRichard Purdie1
This fixes multilib issues if you try for example to use a BASELIB of /lib32 which wouldn't work without this change since the compiler install location is taken from gcc -print-multi-os-directory which can still turn out to be "/lib". The reason is that a 32 bit gcc has no multilib code enabled and will always return "." as that value rather than "../${base_libdir}" which our changes to gcc enable and return in 64 bit mode. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-27gcc-cross-canadian: Clean non shipped empty directories.Lianhao Lu1
Cleaning up non shipped empty directories. Signed-off-by: Lianhao Lu <lianhao.lu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-26gcc-cross-canadian: Fixed packaging warnings.Lianhao Lu1
Removed non-shipped empty directories: -${prefix}/${TARGET_SYS} -${libdir}/../lib -${prefix}/include Signed-off-by: Lianhao Lu <lianhao.lu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-23libgcc: corrected -nativesdk package namings.Lianhao Lu2
1. Corrected the -nativesdk package namings. 2. Fixed package QA warnings: WARNING: QA Issue: non -staticdev package contains static .a library: libgcc-nativesdk-dev path '/work/x86_64-nativesdk-pokysdk-linux/libgcc-nativesdk-4.6.3+svnr184847-r23/packages-split/libgcc-nativesdk-dev/opt/poky/1.1+snapshot/sysroots/x86_64-pokysdk-linux/usr/lib/x86_64-pokysdk-linux/4.6.4/libgcc.a' WARNING: QA Issue: non -staticdev package contains static .a library: libgcc-nativesdk-dev path '/work/x86_64-nativesdk-pokysdk-linux/libgcc-nativesdk-4.6.3+svnr184847-r23/packages-split/libgcc-nativesdk-dev/opt/poky/1.1+snapshot/sysroots/x86_64-pokysdk-linux/usr/lib/x86_64-pokysdk-linux/4.6.4/libgcc_eh.a' Signed-off-by: Lianhao Lu <lianhao.lu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-14Revert "gcc-cross: aviod creating invalid symlinks"Richard Purdie2
This reverts commit 7893e74311e53882d8f93ecb95a6bd9f5b14651e since it breaks the builds.
2012-03-14gcc-cross: aviod creating invalid symlinksRobert Yang2
There are several invalid symlinks in gcc-cross-initial, gcc-cross-intermediate and gcc-cross, these cause the error:(56 errors) tmp/work/i586-poky-linux/gcc-cross-initial-4.6.3+svnr184847-r23/temp/log.do_populate_sysroot: log.do_populate_sysroot:grep: /path/to/invalid/symlink: No such file or directory Avoid creating invalid symlinks would fix this problem. Use the: [ ! -e file ] || do_something But not use: [ -e file ] && do_something is because that if the "file" doesn't exist, then the whole statement would return false, and bitbake treats this an error, so use the "||" to let it always be true. [YOCTO #2095] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-08gcc: Upgrade to 4.6.3 releaseKhem Raj6
core-image-sato/core-image-minimal builds and boots on all qemu machines Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-05meta: Replace bb.data.expand(xxx, d) -> d.expand(xxx)Richard Purdie2
sed \ -e 's:bb.data.\(expand([^,()]*\), *\([^) ]*\) *):\2.\1):g' \ -i `grep -ril bb.data.expand *` Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-05meta: Convert getVar/getVarFlag(xxx, 1) -> (xxx, True)Richard Purdie2
Using "1" with getVar is bad coding style and "True" is preferred. This patch is a sed over the meta directory of the form: sed \ -e 's:\(\.getVar([^,()]*, \)1 *):\1True):g' \ -e 's:\(\.getVarFlag([^,()]*, [^,()]*, \)1 *):\1True):g' \ -i `grep -ril getVar *` Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-03gcc-cross.inc: Fix cross testing scripts to work with dashKhem Raj1
dash does not like >& so be explicit and say 2>&1 Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-02-26Quoting fixesRichard Purdie3
We have various variables which are either not quoted at all or are half quoted. This patch fixes the bad exmaples so everything is consistent. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-02-21gcc: Excluding the DATE/SRCDATE from do_patch dependency.Lianhao Lu1
Corrected the error introduced by commit afb400e of dropping DATE/SRCDATE out of the vardepsexlude list of do_patch. Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
2012-02-10gcc: Ensure same sstate hashes for shared soruce directoryLianhao Lu1
Ensure do_patch have the same sstate hashes for nativesdk variants of gcc family recipes, since they share the same source directory. Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
2012-02-10gcc-4.6: Some small performance tweaksRichard Purdie1
a) Use the system zlib to avoid building it for each gcc. b) -initial and -intermediate don't need plugins or lto-plugin so disable them. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-02-07gcc-cross-testing: Fix evaluation of user and target nameKhem Raj1
Dont use -q to grep we pipe to /dev/null anyway all we care is the return status of grep Signed-off-by: Khem Raj <raj.khem@gmail.com>
2012-02-01gcc-runtime: fix override from poky-lsb to linuxstdbaseSaul Wold1
Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-01-26libgcc: Add INSANE_SKIP of staticdev for libgcc-dev and libgcov-devSaul Wold1
Skip the staticdev QA test since the static archives belong with the -dev. Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-25gcc-cross: Don't reference machine specific variablesRichard Purdie1
gcc-cross is installed into a package architecture specific directory and is not meant to be machine specific. This patch replaces MACHINE_ARCH with PACKAGE_ARCH to ensure this is really the case. This was found by examining sstate checksums. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-24gcc-common.inc: Fix commentRichard Purdie1
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-24gcc-common.inc: Ensure WORKDIR doesn't adversly affect sstate checksumsRichard Purdie1
Changes in WORKDIR were changing the do_patch stamps between gcc-crosssdk and gcc-cross. This excludes the variable since in this case, we don't need want those changes to affect the signatures. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-24gcc: move shared .a to their own packageSaul Wold2
Keep the *_nonshared.a in the libgcc-dev package as required for linking, moved the other *.a libraries into their respective packages (libstdc++ and libssp). Signed-off-by: Saul Wold <sgw@linux.intel.com>