From bc9d2fbfd4eaad0df5647dd5d07dfb9fcff80ff3 Mon Sep 17 00:00:00 2001 From: Dongxiao Xu Date: Tue, 18 Jan 2011 16:17:58 +0800 Subject: staging: Use relative path in sysroot-destdir for target recipes Original we used absolute path in sysroot-destdir for both native and target recipes. This commit changes target recipes to use relative path which is same as the image directory. [sgw: merged with libtool sysroot work] Signed-off-by: Dongxiao Xu Signed-off-by: Saul Wold --- meta/classes/binconfig.bbclass | 6 +++--- meta/classes/cross.bbclass | 2 ++ meta/classes/kernel.bbclass | 2 +- meta/classes/native.bbclass | 3 +++ meta/classes/siteconfig.bbclass | 5 +++-- meta/classes/staging.bbclass | 26 +++++++++++++------------- 6 files changed, 25 insertions(+), 19 deletions(-) (limited to 'meta/classes') diff --git a/meta/classes/binconfig.bbclass b/meta/classes/binconfig.bbclass index 73ca4d621..8e22d2d29 100644 --- a/meta/classes/binconfig.bbclass +++ b/meta/classes/binconfig.bbclass @@ -47,8 +47,8 @@ SYSROOT_PREPROCESS_FUNCS += "binconfig_sysroot_preprocess" binconfig_sysroot_preprocess () { for config in `find ${S} -name '${BINCONFIG_GLOB}'`; do configname=`basename $config` - install -d ${SYSROOT_DESTDIR}${STAGING_BINDIR_CROSS} - cat $config | sed ${@get_binconfig_mangle(d)} > ${SYSROOT_DESTDIR}${STAGING_BINDIR_CROSS}/$configname - chmod u+x ${SYSROOT_DESTDIR}${STAGING_BINDIR_CROSS}/$configname + install -d ${SYSROOT_DESTDIR}${bindir_crossscripts} + cat $config | sed ${@get_binconfig_mangle(d)} > ${SYSROOT_DESTDIR}${bindir_crossscripts}/$configname + chmod u+x ${SYSROOT_DESTDIR}${bindir_crossscripts}/$configname done } diff --git a/meta/classes/cross.bbclass b/meta/classes/cross.bbclass index 7c20be0b8..6ec98b239 100644 --- a/meta/classes/cross.bbclass +++ b/meta/classes/cross.bbclass @@ -50,6 +50,8 @@ base_sbindir = "${bindir}" libdir = "${exec_prefix}/lib/${MULTIMACH_TARGET_SYS}" libexecdir = "${exec_prefix}/libexec/${MULTIMACH_TARGET_SYS}" +do_populate_sysroot[sstate-inputdirs] = "${SYSROOT_DESTDIR}/${STAGING_DIR_NATIVE}" + do_install () { oe_runmake 'DESTDIR=${D}' install } diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass index 47110a21a..9d3b2bbd8 100644 --- a/meta/classes/kernel.bbclass +++ b/meta/classes/kernel.bbclass @@ -185,7 +185,7 @@ kernel_do_install() { } sysroot_stage_all_append() { - sysroot_stage_dir ${D}/kernel ${SYSROOT_DESTDIR}${STAGING_KERNEL_DIR} + sysroot_stage_dir ${D}/kernel ${SYSROOT_DESTDIR}/kernel } diff --git a/meta/classes/native.bbclass b/meta/classes/native.bbclass index 3ca9d6284..aec7fe38a 100644 --- a/meta/classes/native.bbclass +++ b/meta/classes/native.bbclass @@ -60,6 +60,9 @@ base_prefix = "${STAGING_DIR_NATIVE}" prefix = "${STAGING_DIR_NATIVE}${prefix_native}" exec_prefix = "${STAGING_DIR_NATIVE}${prefix_native}" +do_populate_sysroot[sstate-inputdirs] = "${SYSROOT_DESTDIR}/${STAGING_DIR_NATIVE}" +do_populate_sysroot[sstate-outputdirs] = "${STAGING_DIR_NATIVE}" + # Since we actually install these into situ there is no staging prefix STAGING_DIR_HOST = "" STAGING_DIR_TARGET = "" diff --git a/meta/classes/siteconfig.bbclass b/meta/classes/siteconfig.bbclass index 37d910e1d..e7cc9ae0d 100644 --- a/meta/classes/siteconfig.bbclass +++ b/meta/classes/siteconfig.bbclass @@ -20,8 +20,9 @@ siteconfig_do_siteconfig_gencache () { sed -n -e "/ac_cv_c_bigendian/p" -e "/ac_cv_sizeof_/p" \ -e "/ac_cv_type_/p" -e "/ac_cv_header_/p" -e "/ac_cv_func_/p" \ < ${PN}_cache > ${PN}_config - mkdir -p ${SYSROOT_DESTDIR}${SITECONFIG_SYSROOTCACHE} - cp ${PN}_config ${SYSROOT_DESTDIR}${SITECONFIG_SYSROOTCACHE} + mkdir -p ${SYSROOT_DESTDIR}${datadir}/${TARGET_SYS}_config_site.d + cp ${PN}_config ${SYSROOT_DESTDIR}${datadir}/${TARGET_SYS}_config_site.d + } do_populate_sysroot[sstate-interceptfuncs] += "do_siteconfig " diff --git a/meta/classes/staging.bbclass b/meta/classes/staging.bbclass index 438cf375b..72d77e2b5 100644 --- a/meta/classes/staging.bbclass +++ b/meta/classes/staging.bbclass @@ -32,25 +32,25 @@ sysroot_stage_dirs() { from="$1" to="$2" - sysroot_stage_dir $from${includedir} $to${STAGING_INCDIR} + sysroot_stage_dir $from${includedir} $to${includedir} if [ "${BUILD_SYS}" = "${HOST_SYS}" ]; then - sysroot_stage_dir $from${bindir} $to${STAGING_DIR_HOST}${bindir} - sysroot_stage_dir $from${sbindir} $to${STAGING_DIR_HOST}${sbindir} - sysroot_stage_dir $from${base_bindir} $to${STAGING_DIR_HOST}${base_bindir} - sysroot_stage_dir $from${base_sbindir} $to${STAGING_DIR_HOST}${base_sbindir} - sysroot_stage_dir $from${libexecdir} $to${STAGING_DIR_HOST}${libexecdir} - sysroot_stage_dir $from${sysconfdir} $to${STAGING_DIR_HOST}${sysconfdir} - sysroot_stage_dir $from${localstatedir} $to${STAGING_DIR_HOST}${localstatedir} + sysroot_stage_dir $from${bindir} $to${bindir} + sysroot_stage_dir $from${sbindir} $to${sbindir} + sysroot_stage_dir $from${base_bindir} $to${base_bindir} + sysroot_stage_dir $from${base_sbindir} $to${base_sbindir} + sysroot_stage_dir $from${libexecdir} $to${libexecdir} + sysroot_stage_dir $from${sysconfdir} $to${sysconfdir} + sysroot_stage_dir $from${localstatedir} $to${localstatedir} fi if [ -d $from${libdir} ] then - sysroot_stage_libdir $from/${libdir} $to${STAGING_LIBDIR} + sysroot_stage_libdir $from/${libdir} $to${libdir} fi if [ -d $from${base_libdir} ] then - sysroot_stage_libdir $from${base_libdir} $to${STAGING_DIR_HOST}${base_libdir} + sysroot_stage_libdir $from${base_libdir} $to${base_libdir} fi - sysroot_stage_dir $from${datadir} $to${STAGING_DATADIR} + sysroot_stage_dir $from${datadir} $to${datadir} } sysroot_stage_all() { @@ -90,8 +90,8 @@ python do_populate_sysroot () { SSTATETASKS += "do_populate_sysroot" do_populate_sysroot[sstate-name] = "populate-sysroot" -do_populate_sysroot[sstate-inputdirs] = "${SYSROOT_DESTDIR}/${STAGING_DIR}" -do_populate_sysroot[sstate-outputdirs] = "${TMPDIR}/sysroots" +do_populate_sysroot[sstate-inputdirs] = "${SYSROOT_DESTDIR}" +do_populate_sysroot[sstate-outputdirs] = "${STAGING_DIR_HOST}/" python do_populate_sysroot_setscene () { sstate_setscene(d) -- cgit v1.2.3