summaryrefslogtreecommitdiffstats
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
parent2ce2c1e6f9c5196c4346c3839bf594dd821c20ee (diff)
downloadpoky-0df3c481309e89b93e8a57773eb9c470b4dd13a7.tar.gz
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>
-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"
87# Others: 87# Others:
88PREFERRED_PROVIDER_linux-libc-headers ?= "linux-libc-headers" 88PREFERRED_PROVIDER_linux-libc-headers ?= "linux-libc-headers"
89PREFERRED_PROVIDER_linux-libc-headers-nativesdk ?= "linux-libc-headers-nativesdk" 89PREFERRED_PROVIDER_linux-libc-headers-nativesdk ?= "linux-libc-headers-nativesdk"
90PREFERRED_PROVIDER_libgcc ?= "libgcc"
91PREFERRED_PROVIDER_libgcc-nativesdk ?= "libgcc-nativesdk"
90PREFERRED_PROVIDER_dbus-glib ?= "dbus-glib" 92PREFERRED_PROVIDER_dbus-glib ?= "dbus-glib"
91PREFERRED_PROVIDER_dbus-glib-native ?= "dbus-glib-native" 93PREFERRED_PROVIDER_dbus-glib-native ?= "dbus-glib-native"
92PREFERRED_PROVIDER_gconf ?= "gconf-dbus" 94PREFERRED_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 () {
31} 31}
32 32
33do_install () { 33do_install () {
34 target=`echo ${MULTIMACH_TARGET_SYS} | sed -e s#-nativesdk##`
35
36 # Install libgcc from our gcc-cross saved data
37 install -d ${D}${base_libdir} ${D}${libdir}
38 cp -fpPR ${STAGING_INCDIR_NATIVE}/gcc-build-internal-$target/* ${D}
39
40 for d in ${RUNTIMETARGET}; do 34 for d in ${RUNTIMETARGET}; do
41 cd ${B}/$d/ 35 cd ${B}/$d/
42 oe_runmake 'DESTDIR=${D}' install 36 oe_runmake 'DESTDIR=${D}' install
43 done 37 done
44
45 # Move libgcc_s into /lib
46 mkdir -p ${D}${base_libdir}
47 if [ -f ${D}${libdir}/nof/libgcc_s.so ]; then
48 mv ${D}${libdir}/nof/libgcc* ${D}${base_libdir}
49 else
50 mv ${D}${libdir}/libgcc* ${D}${base_libdir} || true
51 fi
52} 38}
53 39
54INHIBIT_DEFAULT_DEPS = "1" 40INHIBIT_DEFAULT_DEPS = "1"
55DEPENDS = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++" 41DEPENDS = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++ libgcc"
56PROVIDES = "virtual/${TARGET_PREFIX}compilerlibs" 42PROVIDES = "virtual/${TARGET_PREFIX}compilerlibs"
57 43
58BBCLASSEXTEND = "nativesdk" 44BBCLASSEXTEND = "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 @@
1PACKAGES = "\ 1PACKAGES = "\
2 libgcc \
3 libgcc-dev \
4 libstdc++ \ 2 libstdc++ \
5 libstdc++-precompile-dev \ 3 libstdc++-precompile-dev \
6 libstdc++-dev \ 4 libstdc++-dev \
@@ -14,12 +12,6 @@ PACKAGES = "\
14 libmudflap-dev \ 12 libmudflap-dev \
15" 13"
16 14
17FILES_libgcc = "${base_libdir}/libgcc*.so.*"
18FILES_libgcc-dev = " \
19 ${base_libdir}/libgcc*.so \
20 ${libdir}/${TARGET_SYS}/${BINV}/crt* \
21 ${libdir}/${TARGET_SYS}/${BINV}/libgcc*"
22
23FILES_libg2c = "${target_libdir}/libg2c.so.*" 15FILES_libg2c = "${target_libdir}/libg2c.so.*"
24FILES_libg2c-dev = "\ 16FILES_libg2c-dev = "\
25 ${libdir}/libg2c.so \ 17 ${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 @@
1PR = "r17" 1PR = "r18"
2 2
3require gcc-${PV}.inc 3require gcc-${PV}.inc
4require gcc-configure-runtime.inc 4require 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 @@
1PR = "r1" 1PR = "r2"
2 2
3require gcc-${PV}.inc 3require gcc-${PV}.inc
4require gcc-configure-runtime.inc 4require 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 @@
1require gcc-${PV}.inc
2
3PR = "r0"
4
5INHIBIT_DEFAULT_DEPS = "1"
6DEPENDS = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++"
7
8PACKAGES = "\
9 ${PN} \
10 ${PN}-dev \
11 "
12
13FILES_${PN} = "${base_libdir}/libgcc*.so.*"
14FILES_${PN}-dev = " \
15 ${base_libdir}/libgcc*.so \
16 ${libdir}/${TARGET_SYS}/${BINV}/crt* \
17 ${libdir}/${TARGET_SYS}/${BINV}/libgcc*"
18
19do_fetch[noexec] = "1"
20do_unpack[noexec] = "1"
21do_patch[noexec] = "1"
22do_configure[noexec] = "1"
23do_compile[noexec] = "1"
24
25do_install () {
26 target=`echo ${MULTIMACH_TARGET_SYS} | sed -e s#-nativesdk##`
27
28 # Install libgcc from our gcc-cross saved data
29 install -d ${D}${base_libdir} ${D}${libdir}
30 cp -fpPR ${STAGING_INCDIR_NATIVE}/gcc-build-internal-$target/* ${D}
31
32 # Move libgcc_s into /lib
33 mkdir -p ${D}${base_libdir}
34 if [ -f ${D}${libdir}/nof/libgcc_s.so ]; then
35 mv ${D}${libdir}/nof/libgcc* ${D}${base_libdir}
36 else
37 mv ${D}${libdir}/libgcc* ${D}${base_libdir} || true
38 fi
39}
40
41BBCLASSEXTEND = "nativesdk"
42