Commit Graph

826 Commits

Author SHA1 Message Date
Ilya Yanok
44f59d24d9 gcc_4.5.1: add pr44290.patch
Add fix for PR44290 as proposed in
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44290

(From OE-Core rev: 94311ba57cd95b6b163d162587c6318da8c3b16a)

Signed-off-by: Ilya Yanok <yanok@emcraft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-20 15:27:35 +01:00
Ilya Yanok
94a6e47402 gcc_4.5.1: add pr43810.patch
Add fix for PR43810 as proposed in
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43810

Building on powerpc-eabi* with --enable-target-optspace
still fails for me though.

(From OE-Core rev: 7dc3865dd88cec50e4fb0660ea678736ec0eb46c)

Signed-off-by: Ilya Yanok <yanok@emcraft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-20 15:27:35 +01:00
Ilya Yanok
aa18b3cc98 gcc_4.5.1: fix arm_bswapsi2.patch
Acoording to http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44392
correct fix should be
TARGET_EITHER && (arm_arch6 || !optimize_size)
not
TARGET_EITHER && (arm_arch6 && !optimize_size)

(From OE-Core rev: 7306e0113a158418acc9cc13d2e82125cb772389)

Signed-off-by: Ilya Yanok <yanok@emcraft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-20 15:27:35 +01:00
Kumar Gala
e10a1d6cd3 gcc: Add gcc configure for PowerPC e500v2/SPE embedded floating point ABI
The e500v2 core utilizes a unique floating point programming model / ABI.
We utilize TARGET_FPU = "ppc-efd" to distinguish this choice (Embedded
scalar single-precision floating-point).  When building the toolchain for
this ABI we need configure gcc with --enable-e500_double.

(From OE-Core rev: 5136c4ad6279c1593301f6dde9b959ad26a2fd0f)

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-20 15:27:34 +01:00
Koen Kooi
3c9206f97d gcc-package-target: don't fail if the .la files we try to delete are not there to start with
This fixes:

| rm: cannot remove `/OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-4.5-r39.1+svnr175127/image/usr/libexec/gcc/arm-angstrom-linux-gnueabi/4.5.4/*.la': No such file or directory
| ERROR: Function 'do_install' failed (see /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-4.5-r39.1+svnr175127/temp/log.do_install.19514 for further information)
NOTE: package gcc-4.5-r39.1+svnr175127: task do_install: Failed

(From OE-Core rev: 4db073061bdd1d3361ff90d309049a1621f06704)

Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-19 17:34:20 +01:00
Phil Blundell
51128384a7 gcc-4.6: update to 4.6.1 release
Set SRCREV to match the point at which 4.6.1 was released, update PV appropriately.

(From OE-Core rev: d575031f3bcd7acbc7dae25f17a60f0d493643fb)

Signed-off-by: Phil Blundell <philb@gnu.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-19 17:34:17 +01:00
Saul Wold
2429773613 gcc: Fix packaging correctly
[YOCTO #1233]

This fix directly packages the contents in  and adds the lib*.so
correctly to the -dev package.

(From OE-Core rev: d3c5f93714165e5c089ce80194f2be07e31d920c)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-12 15:00:46 +01:00
Nitin A Kamble
860d8fdd27 gcc-runtime: fix installed but unpackaged files
gcc recipes has changed, currently ${PV} is 4.6 and ${BINV} is 4.6.1 version.

Fix these QA warnings.
WARNING: For recipe gcc-runtime, the following files were installed but not shipped in any package:
WARNING:   /usr/share/gcc-4.6.1/python/libstdcxx/__init__.py
WARNING:   /usr/share/gcc-4.6.1/python/libstdcxx/v6/__init__.py
WARNING:   /usr/share/gcc-4.6.1/python/libstdcxx/v6/printers.py

(From OE-Core rev: e29a8601c7b028696527c70aa0d4862157ce2d81)

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-08 16:39:10 +01:00
Richard Purdie
42242d6aee gcc: Fix unpackaged files warnings, broken symlink and superfluous files
(From OE-Core rev: 696f00b67217242f3a372d070c2473f8ced639ed)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-07 10:57:45 +01:00
Richard Purdie
463b38f605 gcc-package-cross: Switch to using pattern matching to detect when to stash libgcc into the sysroot
Currently, we stash libgcc if PN is gcc-cross or gcc-crosssdk. This patch
changes it to work for *gcc-cross and *-gcc-crosssdk which means it
will patch for multilib extended toolchains.

(From OE-Core rev: a39cbed2ec887fb83335ba93e92d971c84a0f4d8)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-05 11:39:09 +01:00
Richard Purdie
2f22d86f4c gcc: Remove unneeded module .la file and .so link
This avoids a QA error.

(From OE-Core rev: 6d284d656e129be526e272f61405d1b004fe0ec9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-05 11:39:08 +01:00
Richard Purdie
21effd6640 gcc: Fix removal of libiberty.a
The changes in commit 553a92c442bc3a35d1520a22e640a3a0e377b8f7 were not applying correctly
due to the error: "find: paths must precede expression"

This patch corrects the find syntax.

[YOCTO #1199]

(From OE-Core rev: b8d72e3af93ff9e2808fef4fe7b9d00b68bf9715)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-05 11:39:08 +01:00
Phil Blundell
b78173f176 binutils: allow distro to select gold as default linker
But ensure that gcc-cross-intermediate always uses ld.bfd since
(e)glibc won't build with gold.

(From OE-Core rev: 207a9013670560d62c793a66f01e19f4760a71a8)

Signed-off-by: Phil Blundell <philb@gnu.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-06-30 22:42:04 +01:00
Robert Yang
64be701305 gcc-4.6: share work directories
* Fix configure and Makefile to read the defaults.h and t-oe from ${B},
  so that the ${S} can be shared.

* Change ${S} to the shared source directory.

(From OE-Core rev: c1ec5100da76d35afb91de7353599564e5b653dc)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-06-30 20:56:34 +01:00
Robert Yang
e4f43aa5df gcc-4.5.1: share work directories
Fix configure and Makefile to read the defaults.h and t-oe from ${B},
so that the ${S} can be shared.

(From OE-Core rev: d8c6f6e01421455db30eeb4b0882720874dcb31b)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-06-30 20:56:34 +01:00
Robert Yang
3e08c1f078 Share gcc work directories
This patched is derived from Richard, make gcc use the shared source
directory during the different building:

1) Make gcc-cross, gcc-cross-initial, gcc-cross-intermediate and
   gcc-runtime share the same source directory.

2) The source directory is ${TMPDIR}/work-shared/gcc-${PV}, for example:
   tmp/work-shared/gcc-4.5.1

3) Fix do_clean to clean the shared source directory and stamps

4) gcc uses sed and creates config files against ${S} which means the
   directory should not be shared. Change the way to make it work:

   * The configure option --with-headers=${STAGING_DIR_TARGET}${SYSTEMHEADERS}
     can replace the sed command, see the code in configure:

        if test "x$with_headers" != x; then
          glibc_header_dir=$with_headers

    This has the same effect as the sed command:

    sed -i 's:^\([  ]*\)glibc_header_dir=\"${with_build_sysroot}/usr/include\": ...

    so add the --with-headers=${STAGING_DIR_TARGET}${SYSTEMHEADERS} to
    gcc-configure-cross.inc( not add to gcc-configure-common.inc, since
    not all the gcc building need this, the one which has its own do_configure
    doesn't need it).

   * Move t-oe from ${T} to ${B}/gcc, so that the patched Makefile.in
     can read it easily, please see the commit for gcc-4.5.1 and
     gcc-4.6.0.

   * Use the defaults.h in ${B}/gcc instead of ${S}/gcc, and the patched
     configure.ac(configure) can read it correctly, please see the
     commit for gcc-4.5.1 and gcc-4.6.0.

   * The gcc-crosssdk.inc used sed to edit ${S}/config/*/linux*.h
     to change the GLIBC_DYNAMIC_LINKER, which made the source
     incompatible. To make the source compatible:
     - Use:
	 sed -i ${S}/gcc/config/*/linux*.h -e \
		's#\(GLIBC_DYNAMIC_LINKER[^ ]*\)\( *"/lib.*\)#\1 SYSTEMLIBS_DIR\2#'

	so entries in the files that look like:
	#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2"
	would become
	#define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR"/ld-linux-x86-64.so.2"
	and we define SYSTEMLIBS_DIR in defaults.h.

	NOTE:
	#define GLIBC_DYNAMIC_LINKER64 (SYSTEMLIBS_DIR "/ld-linux-x86-64.so.2")
	doesn't work in in the following define:
	#define LINUX_DYNAMIC_LINKER \
  		CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER)
	so use
	#define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR"/ld-linux-x86-64.so.2"

5) Add do_configure_prepend to gcc-configure-common.inc and remove the
   one in gcc-crosssdk.inc, this makes it easy to share the source,
   otherwise we need do extra changes in gcc-configure-sdk.inc.

6) Use "cat > file <_EOF" to replace the "echo > file"

(From OE-Core rev: 934d38530c9a67562e53d4034aee5531f0f26750)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-06-30 20:56:33 +01:00
Koen Kooi
fb38001789 gcc-cross-kernel: update to match new toolchain sysroot layout
The versioned gcc binary gets installed and the needed binutils symlinks are made.

To make it fully work again the following is needed in kernel recipes/classes:

PATH_prepend = "${STAGING_BINDIR_TOOLCHAIN}.gcc-cross-kernel:"

(From OE-Core rev: 3f0ee65462acf199b69ed18897ca65755907340e)

Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-06-28 15:06:53 +01:00
Mark Hatle
1d640c9436 gcc: Fix file ownership
Most of the files that end up in the gcc include dir and other
misc files scattered throughout the install get the build users
uid and gid.

(From OE-Core rev: db99a65b3e93dfacc27ea821c788f15b5de3a497)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-06-28 13:55:40 +01:00
Beth Flanagan
7cd2ac0e40 common-licenses: Additions and corrections
I've added more licenses from SPDX and corrected the gcc license
so that it is a. parsable and b. accurate to the SPDX standard.

I've also done some cleanup of license text and gdb's LICENSE
field.

(From OE-Core rev: e47343d12ee571281238bbf5663b074c0e32049f)

Signed-off-by: Beth Flanagan <elizabeth.flanagan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-06-23 23:44:49 +01:00
Khem Raj
0faa5f7299 gcc-4.6: Switch to using svn SRC_URI for recipe
We call the recipes 4.6
Remove the backport patches

(From OE-Core rev: 68b545f4ff719f2b6e57d68b002dc9845c7a14ae)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-06-23 11:50:07 +01:00
Khem Raj
ec9b6d061b gcc-4.6.0: Bring in patches from FSF 4.6 branch
This brings in new patches from 4.6 release branch
updates the comment section of existing branch to not
contain patch numbers.

Tested build on qemu for arm ppc mips x86 and x86_64

(From OE-Core rev: 3968f33b6542cf20cf63cf49bfbc033bd2486295)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-06-14 15:29:15 +01:00
Richard Purdie
b30cb584a7 Revert "gcc: rebase the patch to avoid patch rejection"
This reverts commit c553b3934f45db8a6e77cfc7673787db3cc64f85.

This change clearly breaks builds since subsequent patches
depend on changes this patch removes. Not sure what's going
on here but this change isn't correct.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-06-10 13:30:28 +01:00
Nitin A Kamble
eb50e84798 gcc: rebase the patch to avoid patch rejection
(From OE-Core rev: c553b3934f45db8a6e77cfc7673787db3cc64f85)

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-06-10 12:37:07 +01:00
Phil Blundell
1b817aa64a gcc-package-cross: also install the symlinks in libexec with target prefix
.. since this is where collect2 seems to look for them.  This seems like
it is really a bug in collect2, but installing the symlinks is an easy
workaround.  Without this you get "could not find ld" errors when using -flto.

(From OE-Core rev: d69561d80a995a52f3c7abfdbfd183fc7846046d)

Signed-off-by: Phil Blundell <philb@gnu.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-06-06 15:58:40 +01:00
Saul Wold
83158a384f gcc: Fix volatile access issue for ARM
[YOCTO #1130]

This patch brings in a patch from gcc for the following issue:

http://gcc.gnu.org/ml/gcc-patches/2011-03/msg01477.html

(From OE-Core rev: 347c30801b6f935a6aefa5578d723a8afcf52790)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-06-02 14:55:55 +01:00
Richard Purdie
ed93e02b57 gcc-cross-csl-2008q1: Drop last remaining fail-fast override use and make it unconditional
(From OE-Core rev: 8a5117d54057987b9bf470e5e0011800ca221a8c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-05-30 08:33:24 +01:00
Nitin A Kamble
e080d8e18e gcc: remove unused patches and move patches in proper dir
gcc: update upstream-status for patches

python: update upstream-status for patches

libtool: update upstream-status of patches

m4: update upstream status for patches

eglibc: remove unused patches

eglibc: update upstream status of patches

glibc: update upstream-status of patches & remove unused patches

(From OE-Core rev: d10df0e5a363fe8b305ffac7e8ac231da8e07552)

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-05-18 14:32:47 +01:00
Saul Wold
3fcdbf9fc1 gcc: Move 4.3.3 and Special kernel 3.4.4 to meta-extras
(From OE-Core rev: 44d2be0c0ba6440afa0706f703606154ae569d63)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-05-18 14:32:44 +01:00
Nitin A Kamble
42d2170f86 recipes: Update upstream-status of patches
python: update upstream-status for patches
binutils: update upstream-status for patches
gcc 4.5.1 4.6.0: update upstream-status for patches
autoconf: update upstream-status for patches
automake: update upstream-status for patches
bison: update upstream-status for patches
distcc: update upstream-status of patches
fstests: update upstream-status for patches
gdb: update upstream-status of patches
intltool: update upstream-status of patches
libtool: update upstream status of patches
linux-libc-headers: update upstream-status for patches
make: update upstream-status for patches
perl: update upstream-status for patches
python-pycurl: update upstream-status for patches
python-pygobject: update upstream status for patches
python-pyrex: update upstream-status for patches
quilt: update upstream-status of patches
tcl: update upstream-status for patches
gnu-config: update upstream-status for patches
gmp: update upstream-status for patches

(From OE-Core rev: a62fa9b213b09bf48c48499d2e3c66a9ee306deb)

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-05-13 11:02:19 +01:00
Nitin A Kamble
9233fdcee2 gcc 4.5.1 4.6.0: remove unused patches
(From OE-Core rev: 2b4975c536dace131d160798cf8fe45b86c03734)

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-05-13 11:02:15 +01:00
Nitin A Kamble
021e792988 gcc: fix target gcc runtime issue
The liblto_plugin.so file is not packages for the target recipe causing this
gcc failure on the target.

gcc: fatal error: -fuse-linker-plugin, but liblto_plugin.so not found

(From OE-Core rev: a121494f9bdebb940e3f2f121040988be6dca592)

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-05-13 10:29:02 +01:00
Nitin A Kamble
2e4518bf18 recipes: Fix the Upstream-Status format
(From OE-Core rev: d7237140554ad076be12edf915d6d15206c9b8c7)

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-05-11 17:14:26 +01:00
Tom Rini
6e884c3bd7 gcc-package-target: Switch to TARGET_PREFIX in symlinks
When TARGET_PREFIX and TARGET_SYS didn't match up, the symlinks we made
were invalid.  TARGET_PREFIX is what we use when configuring so it's what we
should be using here.

This is 05143e9b5d0a42e32ee0dd3c7fde482ff8d63f63 from OE.

(From OE-Core rev: c0d6ba1ead3e68509718bea09d0b4d5a49a5f73e)

Signed-off-by: Tom Rini <tom_rini@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-05-09 14:09:08 +01:00
Nitin A Kamble
73bb65d480 gcc-4.5.1: update upstream status of patches
(From OE-Core rev: 263293127306fb521efb7e195c7720ed238cf2cc)

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-05-09 14:09:05 +01:00
Khem Raj
478deec11f gcc-4.6.0: Backport FSF 4.6 branch patches
This is set of bugfixes that has been done on
FSF gcc-4_2-branch since 4.6.0 was released

They will roll into 4.6.1 release once that
happens in coming approx 6 months time then
we can simply remove them thats the reason
so use a separate .inc file to define the
SRC_URI additions

(From OE-Core rev: b0d5b9f12adbce2c4a0df6059f5671188cd32293)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-05-05 12:26:41 +01:00
Khem Raj
d42dccf886 gcc-4.6.0: Add missing recipes for gcc-cross-canadian and gcc-crosssdk
Reset PR in gcc-crosssdk-initial_4.6.0.bb and
gcc-crosssdk-intermediate_4.6.0.bb

(From OE-Core rev: 81859b136c0153e8d5be71d56e910dcc3e8cdb66)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-05-05 12:26:34 +01:00
Khem Raj
3669de7f96 gcc: Add recipes for 4.6.0
This is initial set of patches for testing them out
The patches need documentation is pending
Some patches especially uclibc related are not
needed they must be dropped.

(From OE-Core rev: 26858099bc104efc3b3d15d9298018285c551b9a)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-04-28 10:44:21 +01:00
Richard Purdie
fc2cee5cc6 Rename poky-lsb override to linuxstdbase
(From OE-Core rev: 73a227a738da17229baac142ccd889c7929402ba)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-04-21 00:29:32 +01:00
Jingdong Lu
7b59ebe3c3 gcc: Add "--enable-clocale=gnu" option for LSB.
Add "--enable-clocale=gun" option for gcc configuration explicitly for LSB distro
in order to make sure C++ library can use correct locale module.
Fixes [YOCTO #796]

(From OE-Core rev: 8fc7b1e8881872535379d99a8ff940249632b5f7)

Signed-off-by: Jingdong Lu <jingdong.lu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-04-18 05:49:44 +01:00
Khem Raj
1413f2b008 gcc-runtime_4.5.1.bb: Do not filter out -feliminate-dwarf2-dups
This is already taken care by bitbake.conf

(From OE-Core rev: 59d0aed3615ce08203139137d70d38ea8b9fe9d9)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-04-04 14:09:44 +01:00
Khem Raj
3909b764b7 recipes: Use -uclibceabi instead of -uclibcgnueabi
(From OE-Core rev: 3aa429406184d27bdb8a771c4c12bde1dcccb95b)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-04-04 14:09:33 +01:00
Richard Purdie
e41671ea1d Revert "bitbake/gcc: Enable a shared common source tree"
This reverts commit 12b163dbd8 as it
was an unintended change for master
2011-03-29 00:34:11 +01:00
Richard Purdie
12b163dbd8 bitbake/gcc: Enable a shared common source tree
This patch is a quick proof of concept to show how source code could
be shared between recipes which use ${B} to have a separate build
directory compared to source directory ${S}.

Issues:

a) gcc uses sed and creates config files against ${S} which means
the directory should not be shared. Need to change the way that works.

b) Could be extended to cover eglibc except there is a patch applied
against nativesdk versions which again makes the source incompatible.

c) Need to clean up the layout in work-shared and make a directory level deeper
to ensure patch separation.

d) clean task does not remove stamps

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-03-28 15:09:50 +01:00
Khem Raj
b6b9f7ae63 gcc-runtime_4.5.1.bb: Fix ICE in gcc-runtime with -feliminate-dwarf2-dups
GCC 4.5 ends up in an ICE when compiling libstdc++ pre compiled header
so we eliminate -feliminate-dwarf2-dups for gcc-runtime

(From OE-Core rev: e0eeb10144db74c0671acd684059e8a6f82a572f)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-03-24 12:33:36 +00:00
Mark Hatle
84b877ba36 gcc-runtime: Fix dbg files
In order to debug certain C++ items, you need the helper python
components.  These components should live in the -dbg package, ensure
they are added to the recipe.

(From OE-Core rev: 285fbd8a206eee061e27f37430499fcbe1e7284d)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-03-10 18:46:03 -08:00
Lianhao Lu
70cd64a9c6 gcc/collect2: Added --sysroot support into collect2 in gcc.
[YOCTO #815] Added --sysroot into COLLECT_GCC_OPTIONS to allow the
collect2 support user specifed sysroot.

(From OE-Core rev: 868f8d3dd04e3c6dbbce154742cf877fda460a3e)

Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-03-10 18:14:26 -08:00
Mark Hatle
2c52b652bf gcc-runtime: Ensure that gcc-runtime builds a debug package
The gcc-runtime package will now create the proper dbg package.  The
RRECOMMENDS change is required to deal with the default.  This is
documented in bug 824.

(From OE-Core rev: 724137e50762f190438e8e87d3f0f9edd99ea11d)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-03-10 18:14:24 -08:00
Khem Raj
5a7466aeb2 gcc-configure-runtime.inc: Add immediate evaluation otherwise it ends in circular dependency
(From OE-Core rev: 547c62361b21d9cae281d58c54ec2d19a5e25306)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-03-10 18:14:21 -08:00
Nitin A Kamble
cbbfbfc54f gcc-runtime: fix LSB library checks for libstdc++.so.6
[YOCTO #795]

When we run library check of LSB on qemux86 and qemuppc, we got some failures
about 'libstdc++.so.6'.

Test environment:
Platform: Qemu-x86, Qemu-ppc
lsb image: poky-image-lsb-qemux86-test.ext3(Feb 26th, auto-build server)
Library check of LSB: 4.1.0-1

The error log:
Did not find _ZNKSt5ctypeIcE8do_widenEPKcS2_Pc (GLIBCXX_3.4) in libstdc++.so.6
Unmangled symbol name: std::ctype<char>::do_widen(char const*, char const*,
char*) const
...

 found that some weak symbols ('W') change into local ('t') during link time
and be stripped. According to compiling log, the option
"-fvisibility-inlines-hidden" is used for gcc. And this option caused some weak
symbols change into local.

see http://bugzilla.pokylinux.org/show_bug.cgi?id=795 for more information on the bug.

(From OE-Core rev: 4bb281ef5f12096d0889ba8efcc3fd3bb0ed3b3c)

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Jingdong Lu <jingdong.lu@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-03-10 18:14:13 -08:00
Nitin A Kamble
bc009ed6a4 gcc: take out libiberty files from gcc packages
this Fixes [BUGID #754]

(From OE-Core rev: 553a92c442bc3a35d1520a22e640a3a0e377b8f7)

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-03-03 16:56:14 +00:00