]> code.ossystems Code Review - openembedded-core.git/commitdiff
libgcc: use the new recipe (rather than gcc-runtime) to install libgcc_s.so* and...
authorDexuan Cui <dexuan.cui@intel.com>
Sat, 15 Jan 2011 10:47:50 +0000 (18:47 +0800)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Mon, 17 Jan 2011 22:04:50 +0000 (22:04 +0000)
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>
meta/conf/distro/poky.conf
meta/recipes-devtools/gcc/gcc-configure-runtime.inc
meta/recipes-devtools/gcc/gcc-package-runtime.inc
meta/recipes-devtools/gcc/gcc-runtime_4.3.3.bb
meta/recipes-devtools/gcc/gcc-runtime_4.5.1.bb
meta/recipes-devtools/gcc/libgcc_4.5.1.bb [new file with mode: 0644]

index 1c5c72104b70037d282fa19a5b66ae297ef47ae7..31f1e41ed13ff78a3605ec05f2fd3941963f32c7 100644 (file)
@@ -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"
index f9ad61d129a4c6848a5006be1fc0608096a32d84..6cc11e2ffe64c9152504f374e6abe13eac2a7475 100644 (file)
@@ -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"
index 40a9ed0d703fac4f3c20bf095b501180ccb31982..e8c901131e45018779a7a3b1c35bb8c23b242d8b 100644 (file)
@@ -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 \
index 6b375f323a1ba14ef6bc52edfd5f79713538c361..99f927a8f302b313160a1b1a780e40af0c0f05be 100644 (file)
@@ -1,4 +1,4 @@
-PR = "r17"
+PR = "r18"
 
 require gcc-${PV}.inc
 require gcc-configure-runtime.inc
index ca22e8be38db1b0b380ab418ce17591212cf83ca..093f9bf9638416c8a4dfb53735944726105b75dc 100644 (file)
@@ -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 (file)
index 0000000..a99fdef
--- /dev/null
@@ -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"
+