diff options
| author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-04-24 15:24:09 +0100 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-04-25 17:19:18 +0100 |
| commit | 5f993cb112bf0b7a188efbe2a9580997509418fd (patch) | |
| tree | 369c704ed6c80ca007a9ac081d7bb6de6e2fe495 | |
| parent | ee758b69276d3ef8bdd7040ec8725cec2b4bad7c (diff) | |
| download | poky-5f993cb112bf0b7a188efbe2a9580997509418fd.tar.gz | |
gcc-cross-initial: Separate out libgcc-initial
Its useful to separate out the native (cross) binaries from the target
compilation. We already do this for libgcc, this now takes the same
approach for -initial.
(From OE-Core rev: 8a2aaf8b6bdca2d28c0047093c7f668750d57666)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
| -rw-r--r-- | meta/recipes-core/eglibc/eglibc-initial.inc | 2 | ||||
| -rw-r--r-- | meta/recipes-core/eglibc/eglibc.inc | 2 | ||||
| -rw-r--r-- | meta/recipes-devtools/gcc/gcc-cross-initial.inc | 13 | ||||
| -rw-r--r-- | meta/recipes-devtools/gcc/libgcc-initial.inc | 16 | ||||
| -rw-r--r-- | meta/recipes-devtools/gcc/libgcc-initial_4.8.bb | 2 |
5 files changed, 31 insertions, 4 deletions
diff --git a/meta/recipes-core/eglibc/eglibc-initial.inc b/meta/recipes-core/eglibc/eglibc-initial.inc index 0f0e1cd5e1..4cc6ffea99 100644 --- a/meta/recipes-core/eglibc/eglibc-initial.inc +++ b/meta/recipes-core/eglibc/eglibc-initial.inc | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | DEPENDS = "linux-libc-headers virtual/${TARGET_PREFIX}gcc-initial" | 1 | DEPENDS = "linux-libc-headers virtual/${TARGET_PREFIX}gcc-initial libgcc-initial" |
| 2 | PROVIDES = "virtual/${TARGET_PREFIX}libc-initial" | 2 | PROVIDES = "virtual/${TARGET_PREFIX}libc-initial" |
| 3 | 3 | ||
| 4 | PACKAGES = "" | 4 | PACKAGES = "" |
diff --git a/meta/recipes-core/eglibc/eglibc.inc b/meta/recipes-core/eglibc/eglibc.inc index 375b9bc116..04c5d9a237 100644 --- a/meta/recipes-core/eglibc/eglibc.inc +++ b/meta/recipes-core/eglibc/eglibc.inc | |||
| @@ -33,7 +33,7 @@ siteconfig_do_siteconfig_gencache_prepend = " \ | |||
| 33 | " | 33 | " |
| 34 | 34 | ||
| 35 | # nptl needs unwind support in gcc, which can't be built without glibc. | 35 | # nptl needs unwind support in gcc, which can't be built without glibc. |
| 36 | DEPENDS = "virtual/${TARGET_PREFIX}gcc-initial linux-libc-headers virtual/${TARGET_PREFIX}libc-initial" | 36 | DEPENDS = "virtual/${TARGET_PREFIX}gcc-initial libgcc-initial linux-libc-headers virtual/${TARGET_PREFIX}libc-initial" |
| 37 | # nptl needs libgcc but dlopens it, so our shlibs code doesn't detect this | 37 | # nptl needs libgcc but dlopens it, so our shlibs code doesn't detect this |
| 38 | #RDEPENDS_${PN} += "${@['','libgcc']['nptl' in '${GLIBC_ADDONS}']}" | 38 | #RDEPENDS_${PN} += "${@['','libgcc']['nptl' in '${GLIBC_ADDONS}']}" |
| 39 | PROVIDES = "virtual/libc virtual/${TARGET_PREFIX}libc-for-gcc" | 39 | PROVIDES = "virtual/libc virtual/${TARGET_PREFIX}libc-for-gcc" |
diff --git a/meta/recipes-devtools/gcc/gcc-cross-initial.inc b/meta/recipes-devtools/gcc/gcc-cross-initial.inc index 81845386f9..3870168863 100644 --- a/meta/recipes-devtools/gcc/gcc-cross-initial.inc +++ b/meta/recipes-devtools/gcc/gcc-cross-initial.inc | |||
| @@ -38,10 +38,11 @@ do_configure_prepend () { | |||
| 38 | } | 38 | } |
| 39 | 39 | ||
| 40 | do_compile () { | 40 | do_compile () { |
| 41 | oe_runmake all-gcc all-target-libgcc | 41 | oe_runmake all-gcc configure-target-libgcc |
| 42 | } | 42 | } |
| 43 | do_install () { | 43 | do_install () { |
| 44 | oe_runmake 'DESTDIR=${D}' install-gcc install-target-libgcc | 44 | ( cd ${B}/${TARGET_SYS}/libgcc; oe_runmake 'DESTDIR=${D}' install-unwind_h ) |
| 45 | oe_runmake 'DESTDIR=${D}' install-gcc | ||
| 45 | 46 | ||
| 46 | # We don't really need this (here shares/ contains man/, info/, locale/). | 47 | # We don't really need this (here shares/ contains man/, info/, locale/). |
| 47 | rm -rf ${D}${datadir}/ | 48 | rm -rf ${D}${datadir}/ |
| @@ -64,6 +65,14 @@ do_install () { | |||
| 64 | # so we overwirte the generated include-fixed/limits.h for gcc-cross-initial | 65 | # so we overwirte the generated include-fixed/limits.h for gcc-cross-initial |
| 65 | # to get rid references to real limits.h | 66 | # to get rid references to real limits.h |
| 66 | cp gcc/include-fixed/limits.h ${D}${gcclibdir}/${TARGET_SYS}/${BINV}/include-fixed/limits.h | 67 | cp gcc/include-fixed/limits.h ${D}${gcclibdir}/${TARGET_SYS}/${BINV}/include-fixed/limits.h |
| 68 | |||
| 69 | # gcc-runtime installs libgcc into a special location in staging since it breaks doing a standalone build | ||
| 70 | case ${PN} in | ||
| 71 | *gcc-cross-initial|*gcc-crosssdk-initial) | ||
| 72 | dest=${D}/${includedir}/gcc-build-internal-initial-${MULTIMACH_TARGET_SYS} | ||
| 73 | hardlinkdir . $dest | ||
| 74 | ;; | ||
| 75 | esac | ||
| 67 | } | 76 | } |
| 68 | # | 77 | # |
| 69 | # Override the default sysroot staging copy since this won't look like a target system | 78 | # Override the default sysroot staging copy since this won't look like a target system |
diff --git a/meta/recipes-devtools/gcc/libgcc-initial.inc b/meta/recipes-devtools/gcc/libgcc-initial.inc new file mode 100644 index 0000000000..2ba27a81d8 --- /dev/null +++ b/meta/recipes-devtools/gcc/libgcc-initial.inc | |||
| @@ -0,0 +1,16 @@ | |||
| 1 | require libgcc-common.inc | ||
| 2 | |||
| 3 | DEPENDS = "virtual/${TARGET_PREFIX}gcc-initial" | ||
| 4 | |||
| 5 | STAGINGCC = "gcc-cross-initial" | ||
| 6 | STAGINGCC_class-nativesdk = "gcc-crosssdk-initial" | ||
| 7 | PATH_prepend = "${STAGING_BINDIR_TOOLCHAIN}.${STAGINGCC}:" | ||
| 8 | |||
| 9 | PACKAGES = "" | ||
| 10 | |||
| 11 | EXTRA_OECONF += "--disable-shared" | ||
| 12 | |||
| 13 | LIBGCCBUILDTREENAME = "gcc-build-internal-initial-" | ||
| 14 | |||
| 15 | do_populate_sysroot[sstate-outputdirs] = "${STAGING_DIR_TCBOOTSTRAP}/" | ||
| 16 | |||
diff --git a/meta/recipes-devtools/gcc/libgcc-initial_4.8.bb b/meta/recipes-devtools/gcc/libgcc-initial_4.8.bb new file mode 100644 index 0000000000..19f253fce8 --- /dev/null +++ b/meta/recipes-devtools/gcc/libgcc-initial_4.8.bb | |||
| @@ -0,0 +1,2 @@ | |||
| 1 | require recipes-devtools/gcc/gcc-${PV}.inc | ||
| 2 | require libgcc-initial.inc | ||
