diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-12-07 13:54:35 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-12-07 15:04:26 +0000 |
commit | e859cdc479594f4ff8bd1b70c4e5c7ccc78f995e (patch) | |
tree | 3dbe62142c45a2b7817391bc741b1b3fbaac1493 /meta/recipes-core | |
parent | 9a8382422ddbb0972dc25b752204f4908bb9857c (diff) | |
download | openembedded-core-contrib-e859cdc479594f4ff8bd1b70c4e5c7ccc78f995e.tar.gz |
Recipe specific sysroot WIPrpurdie/wip-rss
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-core')
-rw-r--r-- | meta/recipes-core/base-passwd/base-passwd_3.5.29.bb | 29 | ||||
-rw-r--r-- | meta/recipes-core/glibc/glibc-collateral.inc | 1 | ||||
-rw-r--r-- | meta/recipes-core/glibc/glibc-initial.inc | 19 | ||||
-rw-r--r-- | meta/recipes-core/glibc/glibc.inc | 2 |
4 files changed, 11 insertions, 40 deletions
diff --git a/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb b/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb index 10457b2dec..e43bc0a007 100644 --- a/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb +++ b/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb @@ -23,8 +23,6 @@ UPSTREAM_CHECK_URI = "${DEBIAN_MIRROR}/main/b/base-passwd/" inherit autotools -SSTATEPOSTINSTFUNCS += "base_passwd_sstate_postinst" - do_install () { install -d -m 755 ${D}${sbindir} install -o root -g root -p -m 755 ${B}/update-passwd ${D}${sbindir}/ @@ -45,23 +43,16 @@ do_install () { install -p -m 644 ${S}/debian/copyright ${D}${docdir}/${BPN}/ } -base_passwd_sstate_postinst() { - if [ "${BB_CURRENTTASK}" = "populate_sysroot" -o "${BB_CURRENTTASK}" = "populate_sysroot_setscene" ] - then - # Staging does not copy ${sysconfdir} files into the - # target sysroot, so we need to do so manually. We - # put these files in the target sysroot so they can - # be used by recipes which use custom user/group - # permissions. - # Install passwd.master and group.master to sysconfdir and mv - # them to make sure they are atomically install. - install -d -m 755 ${STAGING_DIR_TARGET}${sysconfdir} - for i in passwd group; do - install -p -m 644 ${STAGING_DIR_TARGET}${datadir}/base-passwd/$i.master \ - ${STAGING_DIR_TARGET}${sysconfdir}/ - mv ${STAGING_DIR_TARGET}${sysconfdir}/$i.master ${STAGING_DIR_TARGET}${sysconfdir}/$i - done - fi +SYSROOT_DIRS += "${sysconfdir}" +SYSROOT_PREPROCESS_FUNCS += "base_passwd_tweaksysroot" + +base_passwd_tweaksysroot () { + # Install passwd.master and group.master to sysconfdir + install -d -m 755 ${SYSROOT_DESTDIR}${sysconfdir} + for i in passwd group; do + install -p -m 644 ${SYSROOT_DESTDIR}${datadir}/base-passwd/$i.master \ + ${SYSROOT_DESTDIR}${sysconfdir}/$i + done } python populate_packages_prepend() { diff --git a/meta/recipes-core/glibc/glibc-collateral.inc b/meta/recipes-core/glibc/glibc-collateral.inc index 60655eba3c..876977a655 100644 --- a/meta/recipes-core/glibc/glibc-collateral.inc +++ b/meta/recipes-core/glibc/glibc-collateral.inc @@ -15,6 +15,7 @@ do_patch[noexec] = "1" do_configure[noexec] = "1" do_compile[noexec] = "1" +do_install[prefuncs] += "extend_recipe_sysroot" do_install[depends] += "virtual/${MLPREFIX}libc:do_populate_sysroot" COMPATIBLE_HOST_libc-musl_class-target = "null" diff --git a/meta/recipes-core/glibc/glibc-initial.inc b/meta/recipes-core/glibc/glibc-initial.inc index 2e3bc8104a..7380bdbcac 100644 --- a/meta/recipes-core/glibc/glibc-initial.inc +++ b/meta/recipes-core/glibc/glibc-initial.inc @@ -6,7 +6,6 @@ PACKAGES_DYNAMIC = "" STAGINGCC = "gcc-cross-initial-${TARGET_ARCH}" STAGINGCC_class-nativesdk = "gcc-crosssdk-initial-${SDK_SYS}" -TOOLCHAIN_OPTIONS = " --sysroot=${STAGING_DIR_TCBOOTSTRAP}" do_configure () { (cd ${S} && gnu-configize) || die "failure in running gnu-configize" @@ -42,10 +41,6 @@ do_install () { if [ -e ${B}/bits/stdio_lim.h ]; then cp ${B}/bits/stdio_lim.h ${D}${includedir}/bits/ fi - # add links to linux-libc-headers: final glibc build need this. - for t in linux asm asm-generic; do - ln -s ${STAGING_DIR_TARGET}${includedir}/$t ${D}${includedir}/ - done } do_install_locale() { @@ -56,20 +51,6 @@ do_siteconfig () { : } -SSTATEPOSTINSTFUNCS += "glibcinitial_sstate_postinst" -glibcinitial_sstate_postinst() { - if [ "${BB_CURRENTTASK}" = "populate_sysroot" -o "${BB_CURRENTTASK}" = "populate_sysroot_setscene" ] - then - # Recreate the symlinks to ensure they point to the correct location - for t in linux asm asm-generic; do - rm -f ${STAGING_DIR_TCBOOTSTRAP}${includedir}/$t - ln -s ${STAGING_DIR_TARGET}${includedir}/$t ${STAGING_DIR_TCBOOTSTRAP}${includedir}/ - done - fi -} - -do_populate_sysroot[sstate-outputdirs] = "${STAGING_DIR_TCBOOTSTRAP}/" - # We don't install any scripts so there is nothing to evacuate do_evacuate_scripts () { : diff --git a/meta/recipes-core/glibc/glibc.inc b/meta/recipes-core/glibc/glibc.inc index e85c7044a0..98f1120d69 100644 --- a/meta/recipes-core/glibc/glibc.inc +++ b/meta/recipes-core/glibc/glibc.inc @@ -6,8 +6,6 @@ STAGINGCC = "gcc-cross-initial-${TARGET_ARCH}" STAGINGCC_class-nativesdk = "gcc-crosssdk-initial-${SDK_SYS}" PATH_prepend = "${STAGING_BINDIR_TOOLCHAIN}.${STAGINGCC}:" -TOOLCHAIN_OPTIONS = " --sysroot=${STAGING_DIR_TCBOOTSTRAP}" - python () { opt_effective = "-O" for opt in d.getVar('SELECTED_OPTIMIZATION', True).split(): |