Install cross-packages into the native sysroot
Cross is no longer required so can go away, we now install cross packages into the native sysroot and use them from there. This patch includes updates to classes and some recipes which reference CROSS_DIR. Others still need fixing an image can be built and run with this patch applied. Signed-off-by: Joshua Lock <josh@linux.intel.com>
This commit is contained in:
parent
00c5c97442
commit
c22ab5fc9f
|
@ -40,9 +40,9 @@ target_base_libdir := "${base_libdir}"
|
|||
target_prefix := "${prefix}"
|
||||
|
||||
# Overrides for paths
|
||||
prefix = "${CROSS_DIR}"
|
||||
base_prefix = "${prefix}"
|
||||
exec_prefix = "${prefix}"
|
||||
prefix = "${STAGING_DIR_NATIVE}${prefix_native}"
|
||||
base_prefix = "${STAGING_DIR_NATIVE}"
|
||||
exec_prefix = "${STAGING_DIR_NATIVE}${prefix_native}"
|
||||
base_sbindir = "${base_prefix}/bin"
|
||||
sbindir = "${exec_prefix}/bin"
|
||||
|
||||
|
|
|
@ -96,8 +96,8 @@ do_prep_locale_tree() {
|
|||
gunzip $i
|
||||
done
|
||||
cp -pPR ${PKGD}${base_libdir}/* $treedir/lib
|
||||
if [ -f ${CROSS_DIR}/${TARGET_SYS}/lib/libgcc_s.* ]; then
|
||||
cp -pPR ${CROSS_DIR}/${TARGET_SYS}/lib/libgcc_s.* $treedir/lib
|
||||
if [ -f ${STAGING_DIR_NATIVE}${prefix_native}/lib/libgcc_s.* ]; then
|
||||
cp -pPR ${STAGING_DIR_NATIVE}/${prefix_native}/lib/libgcc_s.* $treedir/lib
|
||||
fi
|
||||
install -m 0755 ${PKGD}${bindir}/localedef $treedir/bin
|
||||
}
|
||||
|
|
|
@ -46,8 +46,8 @@ def create_cross_env(bb,d):
|
|||
return ""
|
||||
|
||||
import tarfile, socket, time
|
||||
ice_dir = bb.data.expand('${CROSS_DIR}', d)
|
||||
prefix = bb.data.expand('${HOST_PREFIX}' , d)
|
||||
ice_dir = bb.data.expand("${STAGING_DIR_NATIVE}${prefix_native}")
|
||||
distro = bb.data.expand('${DISTRO}', d)
|
||||
target_sys = bb.data.expand('${TARGET_SYS}', d)
|
||||
target_prefix = bb.data.expand('${TARGET_PREFIX}', d)
|
||||
|
@ -93,7 +93,7 @@ def create_cross_env(bb,d):
|
|||
|
||||
def create_native_env(bb,d):
|
||||
import tarfile, socket, time
|
||||
ice_dir = bb.data.expand('${CROSS_DIR}', d)
|
||||
ice_dir = bb.data.expand("${STAGING_DIR_NATIVE}${prefix_native}")
|
||||
prefix = bb.data.expand('${HOST_PREFIX}' , d)
|
||||
distro = bb.data.expand('${DISTRO}', d)
|
||||
target_sys = bb.data.expand('${TARGET_SYS}', d)
|
||||
|
@ -131,7 +131,7 @@ def create_native_env(bb,d):
|
|||
|
||||
def create_cross_kernel_env(bb,d):
|
||||
import tarfile, socket, time
|
||||
ice_dir = bb.data.expand('${CROSS_DIR}', d)
|
||||
ice_dir = bb.data.expand("${STAGING_DIR_NATIVE}${prefix_native}")
|
||||
prefix = bb.data.expand('${HOST_PREFIX}' , d)
|
||||
distro = bb.data.expand('${DISTRO}', d)
|
||||
target_sys = bb.data.expand('${TARGET_SYS}', d)
|
||||
|
|
|
@ -18,8 +18,6 @@ python () {
|
|||
#STAGING_DIR_HOST = "${STAGING_DIR}/${HOST_SYS}-nativesdk"
|
||||
#STAGING_DIR_TARGET = "${STAGING_DIR}/${BASEPKG_TARGET_SYS}-nativesdk"
|
||||
|
||||
CROSS_DIR = "${TMPDIR}/cross/${HOST_ARCH}"
|
||||
|
||||
HOST_ARCH = "${SDK_ARCH}"
|
||||
HOST_VENDOR = "${SDK_VENDOR}"
|
||||
HOST_OS = "${SDK_OS}"
|
||||
|
|
|
@ -128,7 +128,6 @@ def pstage_cleanpackage(pkgname, d):
|
|||
else:
|
||||
bb.note("No. Manually removing any installed files")
|
||||
pstage_manualclean("sysroots", "STAGING_DIR", d)
|
||||
pstage_manualclean("cross", "CROSS_DIR", d)
|
||||
pstage_manualclean("deploy", "DEPLOY_DIR", d)
|
||||
|
||||
bb.utils.unlockfile(lf)
|
||||
|
@ -297,7 +296,6 @@ python packagedstage_stampfixing_eventhandler() {
|
|||
populate_sysroot_preamble () {
|
||||
if [ "$PSTAGING_ACTIVE" = "1" ]; then
|
||||
stage-manager -p ${STAGING_DIR} -c ${PSTAGE_WORKDIR}/stamp-cache-staging -u || true
|
||||
stage-manager -p ${CROSS_DIR} -c ${PSTAGE_WORKDIR}/stamp-cache-cross -u || true
|
||||
fi
|
||||
}
|
||||
|
||||
|
@ -313,7 +311,6 @@ populate_sysroot_postamble () {
|
|||
if [ "$exitcode" != "5" -a "$exitcode" != "0" ]; then
|
||||
exit $exitcode
|
||||
fi
|
||||
stage-manager -p ${CROSS_DIR} -c ${PSTAGE_WORKDIR}/stamp-cache-cross -u -d ${PSTAGE_TMPDIR_STAGE}/cross/${BASE_PACKAGE_ARCH}
|
||||
if [ "$exitcode" != "5" -a "$exitcode" != "0" ]; then
|
||||
exit $exitcode
|
||||
fi
|
||||
|
@ -324,9 +321,7 @@ populate_sysroot_postamble () {
|
|||
packagedstaging_fastpath () {
|
||||
if [ "$PSTAGING_ACTIVE" = "1" ]; then
|
||||
mkdir -p ${PSTAGE_TMPDIR_STAGE}/sysroots/
|
||||
mkdir -p ${PSTAGE_TMPDIR_STAGE}/cross/${BASE_PACKAGE_ARCH}/
|
||||
cp -fpPR ${SYSROOT_DESTDIR}/${STAGING_DIR}/* ${PSTAGE_TMPDIR_STAGE}/sysroots/ || /bin/true
|
||||
cp -fpPR ${SYSROOT_DESTDIR}/${CROSS_DIR}/* ${PSTAGE_TMPDIR_STAGE}/cross/${BASE_PACKAGE_ARCH}/ || /bin/true
|
||||
fi
|
||||
}
|
||||
|
||||
|
|
|
@ -355,9 +355,7 @@ EXTRA_IMAGEDEPENDS = ""
|
|||
# Toolchain info.
|
||||
##################################################################
|
||||
|
||||
CROSS_DIR = "${TMPDIR}/cross/${BASE_PACKAGE_ARCH}"
|
||||
CROSS_DATADIR = "${CROSS_DIR}/share"
|
||||
PATH_prepend = "${STAGING_BINDIR_CROSS}:${STAGING_DIR_NATIVE}${sbindir_native}:${STAGING_BINDIR_NATIVE}:${CROSS_DIR}/${bindir_cross}:${STAGING_DIR_NATIVE}${base_sbindir_native}:${STAGING_DIR_NATIVE}/${base_bindir_native}:"
|
||||
PATH_prepend = "${STAGING_BINDIR_CROSS}:${STAGING_DIR_NATIVE}${sbindir_native}:${STAGING_BINDIR_NATIVE}:${STAGING_DIR_NATIVE}${base_sbindir_native}:${STAGING_DIR_NATIVE}/${base_bindir_native}:"
|
||||
export PATH
|
||||
|
||||
##################################################################
|
||||
|
|
|
@ -11,7 +11,7 @@ RUNTIMETARGET = "libgcc libssp libstdc++-v3"
|
|||
# libgfortran
|
||||
|
||||
do_configure () {
|
||||
cp ${CROSS_DIR}/include/gcc-build-internal/* ${S}/gcc
|
||||
cp ${STAGING_DIR_NATIVE}${prefix_native}/include/gcc-build-internal/* ${S}/gcc
|
||||
for d in ${RUNTIMETARGET}; do
|
||||
echo "Configuring $d"
|
||||
mkdir -p ${B}/$d/
|
||||
|
|
|
@ -5,6 +5,6 @@ PR = "r1"
|
|||
|
||||
# Hack till we fix *libc properly
|
||||
do_install_append() {
|
||||
ln -sf ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${BINV}/include-fixed/* ${D}${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${BINV}/include/
|
||||
ln -sf ${STAGING_DIR_NATIVE}${prefix_native}/lib/gcc/${TARGET_SYS}/${BINV}/include-fixed/* ${D}${STAGING_DIR_NATIVE}${prefix_native}/lib/gcc/${TARGET_SYS}/${BINV}/include/
|
||||
}
|
||||
|
||||
|
|
|
@ -4,6 +4,6 @@ PR = "r1"
|
|||
|
||||
# Hack till we fix *libc properly
|
||||
do_install_append() {
|
||||
ln -sf ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${BINV}/include-fixed/* ${D}${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${BINV}/include/
|
||||
ln -sf ${STAGING_DIR_NATIVE}${prefix_native}/lib/gcc/${TARGET_SYS}/${BINV}/include-fixed/* ${D}${STAGING_DIR_NATIVE}${prefix_native}/lib/gcc/${TARGET_SYS}/${BINV}/include/
|
||||
}
|
||||
|
||||
|
|
|
@ -8,8 +8,8 @@ do_install () {
|
|||
|
||||
# Link gfortran to g77 to satisfy not-so-smart configure or hard coded g77
|
||||
# gfortran is fully backwards compatible. This is a safe and practical solution.
|
||||
ln -sf ${CROSS_DIR}/bin/${TARGET_PREFIX}gfortran ${CROSS_DIR}/bin/${TARGET_PREFIX}g77 || true
|
||||
ln -sf ${CROSS_DIR}/${TARGET_SYS}/bin/gfortran ${CROSS_DIR}/${TARGET_SYS}/bin/g77 || true
|
||||
ln -sf ${STAGING_DIR_NATIVE}${prefix_native}/bin/${TARGET_PREFIX}gfortran ${STAGING_DIR_NATIVE}${prefix_native}/bin/${TARGET_PREFIX}g77 || true
|
||||
ln -sf ${STAGING_DIR_NATIVE}${prefix_native}/${TARGET_SYS}/bin/gfortran ${STAGING_DIR_NATIVE}/${prefix_native}/${TARGET_SYS}/bin/g77 || true
|
||||
|
||||
# Remove things we don't need but keep share/java
|
||||
for d in info man share/doc share/locale share/man share/info; do
|
||||
|
|
Loading…
Reference in New Issue