summaryrefslogtreecommitdiff
path: root/meta
diff options
context:
space:
mode:
authorDexuan Cui <dexuan.cui@intel.com>2011-01-15 18:47:50 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-01-17 22:04:50 +0000
commit0df3c481309e89b93e8a57773eb9c470b4dd13a7 (patch)
treed8f0bbaa5672dee61273d5502546409034d0a5d8 /meta
parent2ce2c1e6f9c5196c4346c3839bf594dd821c20ee (diff)
downloadopenembedded-core-0df3c481309e89b93e8a57773eb9c470b4dd13a7.tar.gz
openembedded-core-0df3c481309e89b93e8a57773eb9c470b4dd13a7.tar.bz2
openembedded-core-0df3c481309e89b93e8a57773eb9c470b4dd13a7.zip
libgcc: use the new recipe (rather than gcc-runtime) to install libgcc_s.so* and crt*.o
Currently gcc-runtime installs the files, but actually gcc-runtime's do_configure checks if the files are available, so before we build gcc-runtime, we should have some recipe install the files first! -- currently gcc-cross-intermediate actually does that(gcc-cross also installs the files, but it installs into the gcc-build-internal* directory), but gcc-cross-intermediate will have its own sysroot in future, after that, gcc-runtime won't build. So let us add this new target recipe and move the installation of the files from gcc-runtime into it. Signed-off-by: Dexuan Cui <dexuan.cui@intel.com>
Diffstat (limited to 'meta')
-rw-r--r--meta/conf/distro/poky.conf2
-rw-r--r--meta/recipes-devtools/gcc/gcc-configure-runtime.inc16
-rw-r--r--meta/recipes-devtools/gcc/gcc-package-runtime.inc8
-rw-r--r--meta/recipes-devtools/gcc/gcc-runtime_4.3.3.bb2
-rw-r--r--meta/recipes-devtools/gcc/gcc-runtime_4.5.1.bb2
-rw-r--r--meta/recipes-devtools/gcc/libgcc_4.5.1.bb42
6 files changed, 47 insertions, 25 deletions
diff --git a/meta/conf/distro/poky.conf b/meta/conf/distro/poky.conf
index 1c5c72104b..31f1e41ed1 100644
--- a/meta/conf/distro/poky.conf
+++ b/meta/conf/distro/poky.conf
@@ -87,6 +87,8 @@ VIRTUAL-RUNTIME_update-alternatives ?= "update-alternatives-cworth"
# Others:
PREFERRED_PROVIDER_linux-libc-headers ?= "linux-libc-headers"
PREFERRED_PROVIDER_linux-libc-headers-nativesdk ?= "linux-libc-headers-nativesdk"
+PREFERRED_PROVIDER_libgcc ?= "libgcc"
+PREFERRED_PROVIDER_libgcc-nativesdk ?= "libgcc-nativesdk"
PREFERRED_PROVIDER_dbus-glib ?= "dbus-glib"
PREFERRED_PROVIDER_dbus-glib-native ?= "dbus-glib-native"
PREFERRED_PROVIDER_gconf ?= "gconf-dbus"
diff --git a/meta/recipes-devtools/gcc/gcc-configure-runtime.inc b/meta/recipes-devtools/gcc/gcc-configure-runtime.inc
index f9ad61d129..6cc11e2ffe 100644
--- a/meta/recipes-devtools/gcc/gcc-configure-runtime.inc
+++ b/meta/recipes-devtools/gcc/gcc-configure-runtime.inc
@@ -31,28 +31,14 @@ do_compile () {
}
do_install () {
- target=`echo ${MULTIMACH_TARGET_SYS} | sed -e s#-nativesdk##`
-
- # Install libgcc from our gcc-cross saved data
- install -d ${D}${base_libdir} ${D}${libdir}
- cp -fpPR ${STAGING_INCDIR_NATIVE}/gcc-build-internal-$target/* ${D}
-
for d in ${RUNTIMETARGET}; do
cd ${B}/$d/
oe_runmake 'DESTDIR=${D}' install
done
-
- # Move libgcc_s into /lib
- mkdir -p ${D}${base_libdir}
- if [ -f ${D}${libdir}/nof/libgcc_s.so ]; then
- mv ${D}${libdir}/nof/libgcc* ${D}${base_libdir}
- else
- mv ${D}${libdir}/libgcc* ${D}${base_libdir} || true
- fi
}
INHIBIT_DEFAULT_DEPS = "1"
-DEPENDS = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++"
+DEPENDS = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++ libgcc"
PROVIDES = "virtual/${TARGET_PREFIX}compilerlibs"
BBCLASSEXTEND = "nativesdk"
diff --git a/meta/recipes-devtools/gcc/gcc-package-runtime.inc b/meta/recipes-devtools/gcc/gcc-package-runtime.inc
index 40a9ed0d70..e8c901131e 100644
--- a/meta/recipes-devtools/gcc/gcc-package-runtime.inc
+++ b/meta/recipes-devtools/gcc/gcc-package-runtime.inc
@@ -1,6 +1,4 @@
PACKAGES = "\
- libgcc \
- libgcc-dev \
libstdc++ \
libstdc++-precompile-dev \
libstdc++-dev \
@@ -14,12 +12,6 @@ PACKAGES = "\
libmudflap-dev \
"
-FILES_libgcc = "${base_libdir}/libgcc*.so.*"
-FILES_libgcc-dev = " \
- ${base_libdir}/libgcc*.so \
- ${libdir}/${TARGET_SYS}/${BINV}/crt* \
- ${libdir}/${TARGET_SYS}/${BINV}/libgcc*"
-
FILES_libg2c = "${target_libdir}/libg2c.so.*"
FILES_libg2c-dev = "\
${libdir}/libg2c.so \
diff --git a/meta/recipes-devtools/gcc/gcc-runtime_4.3.3.bb b/meta/recipes-devtools/gcc/gcc-runtime_4.3.3.bb
index 6b375f323a..99f927a8f3 100644
--- a/meta/recipes-devtools/gcc/gcc-runtime_4.3.3.bb
+++ b/meta/recipes-devtools/gcc/gcc-runtime_4.3.3.bb
@@ -1,4 +1,4 @@
-PR = "r17"
+PR = "r18"
require gcc-${PV}.inc
require gcc-configure-runtime.inc
diff --git a/meta/recipes-devtools/gcc/gcc-runtime_4.5.1.bb b/meta/recipes-devtools/gcc/gcc-runtime_4.5.1.bb
index ca22e8be38..093f9bf963 100644
--- a/meta/recipes-devtools/gcc/gcc-runtime_4.5.1.bb
+++ b/meta/recipes-devtools/gcc/gcc-runtime_4.5.1.bb
@@ -1,4 +1,4 @@
-PR = "r1"
+PR = "r2"
require gcc-${PV}.inc
require gcc-configure-runtime.inc
diff --git a/meta/recipes-devtools/gcc/libgcc_4.5.1.bb b/meta/recipes-devtools/gcc/libgcc_4.5.1.bb
new file mode 100644
index 0000000000..a99fdeffd4
--- /dev/null
+++ b/meta/recipes-devtools/gcc/libgcc_4.5.1.bb
@@ -0,0 +1,42 @@
+require gcc-${PV}.inc
+
+PR = "r0"
+
+INHIBIT_DEFAULT_DEPS = "1"
+DEPENDS = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++"
+
+PACKAGES = "\
+ ${PN} \
+ ${PN}-dev \
+ "
+
+FILES_${PN} = "${base_libdir}/libgcc*.so.*"
+FILES_${PN}-dev = " \
+ ${base_libdir}/libgcc*.so \
+ ${libdir}/${TARGET_SYS}/${BINV}/crt* \
+ ${libdir}/${TARGET_SYS}/${BINV}/libgcc*"
+
+do_fetch[noexec] = "1"
+do_unpack[noexec] = "1"
+do_patch[noexec] = "1"
+do_configure[noexec] = "1"
+do_compile[noexec] = "1"
+
+do_install () {
+ target=`echo ${MULTIMACH_TARGET_SYS} | sed -e s#-nativesdk##`
+
+ # Install libgcc from our gcc-cross saved data
+ install -d ${D}${base_libdir} ${D}${libdir}
+ cp -fpPR ${STAGING_INCDIR_NATIVE}/gcc-build-internal-$target/* ${D}
+
+ # Move libgcc_s into /lib
+ mkdir -p ${D}${base_libdir}
+ if [ -f ${D}${libdir}/nof/libgcc_s.so ]; then
+ mv ${D}${libdir}/nof/libgcc* ${D}${base_libdir}
+ else
+ mv ${D}${libdir}/libgcc* ${D}${base_libdir} || true
+ fi
+}
+
+BBCLASSEXTEND = "nativesdk"
+