gcc-cross-sdk: Totally rewrite packaging so it consists of a single package. Disable shlibs code causing build breakage. Add useful symlinks to gcc and cc
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@3655 311d38ba-8fff-0310-9ca6-ca027cbcb966
This commit is contained in:
parent
c51985fbd1
commit
d38751f4e4
|
@ -3,7 +3,7 @@ HOMEPAGE = "http://www.gnu.org/software/gcc/"
|
|||
SECTION = "devel"
|
||||
LICENSE = "GPL"
|
||||
require gcc_${PV}.bb
|
||||
PR = "r2"
|
||||
PR = "r3"
|
||||
|
||||
inherit sdk
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
PR = "r5"
|
||||
PR = "r6"
|
||||
|
||||
inherit sdk
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
PR = "r0"
|
||||
PR = "r1"
|
||||
|
||||
inherit sdk
|
||||
|
||||
|
|
|
@ -1,20 +1,58 @@
|
|||
# Packages emitted by our gcc-cross builds.
|
||||
#
|
||||
# Note gcc-package.inc was already included before us.
|
||||
#
|
||||
# We override PACKAGES and FILES to change the packaging
|
||||
#
|
||||
|
||||
INHIBIT_PACKAGE_STRIP ?= ""
|
||||
HAS_G2C ?= "yes"
|
||||
HAS_GFORTRAN ?= "no"
|
||||
OLD_INHIBIT_PACKAGE_STRIP := "${INHIBIT_PACKAGE_STRIP}"
|
||||
INHIBIT_PACKAGE_STRIP = "1"
|
||||
|
||||
python do_package() {
|
||||
if bb.data.getVar('DEBIAN_NAMES', d, 1):
|
||||
bb.data.setVar('PKG_libgcc', 'libgcc1', d)
|
||||
bb.build.exec_func('package_do_package', d)
|
||||
}
|
||||
# Having anything auto depending on gcc-cross-sdk is a really bad idea...
|
||||
EXCLUDE_FROM_SHLIBS = "1"
|
||||
|
||||
PACKAGES = "${PN} ${PN}-doc"
|
||||
|
||||
FILES_${PN} = "\
|
||||
${bindir}/* \
|
||||
${libexecdir}/gcc/${TARGET_SYS}/${BINV}/cc1 \
|
||||
${libexecdir}/gcc/${TARGET_SYS}/${BINV}/collect2 \
|
||||
${libexecdir}/gcc/${TARGET_SYS}/${BINV}/f771 \
|
||||
${libexecdir}/gcc/${TARGET_SYS}/${BINV}/cc1plus \
|
||||
${gcclibdir}/${TARGET_SYS}/${BINV}/*.o \
|
||||
${gcclibdir}/${TARGET_SYS}/${BINV}/specs \
|
||||
${gcclibdir}/${TARGET_SYS}/${BINV}/lib* \
|
||||
${gcclibdir}/${TARGET_SYS}/${BINV}/include \
|
||||
${includedir}/c++/${BINV} \
|
||||
${prefix}/${TARGET_SYS}/bin/* \
|
||||
${prefix}/${TARGET_SYS}/lib/* \
|
||||
"
|
||||
do_install () {
|
||||
oe_runmake 'DESTDIR=${D}' install
|
||||
|
||||
# Cleanup some of the ${libdir}{,exec}/gcc stuff ...
|
||||
rm -r ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/install-tools
|
||||
rm -r ${D}${libexecdir}/gcc/${TARGET_SYS}/${BINV}/install-tools
|
||||
|
||||
# We care about g++ not c++
|
||||
rm -f ${D}${bindir}/*c++
|
||||
|
||||
# We don't care about the gcc-<version> copies
|
||||
rm -f ${D}${bindir}/*gcc-?.?*
|
||||
|
||||
# We use libiberty from binutils
|
||||
rm -f ${D}${prefix}/${TARGET_SYS}/lib/libiberty.a
|
||||
rm -f ${D}${libdir}/libiberty.a
|
||||
|
||||
# Create the ${prefix}/${TARGET_SYS}/bin/* symlinks
|
||||
install -d ${D}${prefix}/${TARGET_SYS}/bin/
|
||||
for l in ${D}${bindir}/*; do
|
||||
ln -sf "${bindir}/`basename $l`" "${D}${prefix}/${TARGET_SYS}/bin/`basename $l | sed -e 's,${TARGET_PREFIX},,'`"
|
||||
done
|
||||
ln -sf "${bindir}/${TARGET_PREFIX}gcc" "${D}${prefix}/${TARGET_SYS}/bin/cc"
|
||||
|
||||
# Manually run the target stripper since we won't get it run by
|
||||
# the packaging.
|
||||
if [ "x${OLD_INHIBIT_PACKAGE_STRIP}" != "x1" ]; then
|
||||
|
@ -24,17 +62,3 @@ do_install () {
|
|||
fi
|
||||
}
|
||||
|
||||
FILES_libgcc = "${prefix}/${TARGET_SYS}/lib/libgcc*.so.*"
|
||||
FILES_libgcc-dev = "${prefix}/${TARGET_SYS}/lib/libgcc*.so"
|
||||
|
||||
FILES_libstdc++ = "${prefix}/${TARGET_SYS}/lib/libstdc++.so.*"
|
||||
FILES_libstdc++-dev = "${includedir}/c++/${BINV} \
|
||||
${prefix}/${TARGET_SYS}/lib/libstdc++.so \
|
||||
${prefix}/${TARGET_SYS}/lib/libstdc++.a \
|
||||
${prefix}/${TARGET_SYS}/lib/libsupc++.a"
|
||||
|
||||
FILES_libmudflap = "${prefix}/${TARGET_SYS}/lib/libmudflap*.so.*"
|
||||
FILES_libmudflap-dev = "${prefix}/${TARGET_SYS}/lib/libmudflap*.so \
|
||||
${prefix}/${TARGET_SYS}/lib/libmudflap*.a"
|
||||
|
||||
RRECOMMENDS_${PN} += "libgcc libgcc-dev cpp g++ libstdc++ libstdc++-dev"
|
||||
|
|
Loading…
Reference in New Issue