commit: b2797114262b5a238e002897cb504c1c6ad5d1d5
Author: Arfrever Frehtes Taifersar Arahesis <Arfrever <AT> Apache <DOT> Org>
AuthorDate: Thu Sep 12 02:17:14 2019 +0000
Commit: Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Thu Sep 12 15:36:25 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b2797114
sys-apps/systemd: Add pkg_preinst check for system layout with USE="-split-usr".
Signed-off-by: Arfrever Frehtes Taifersar Arahesis <Arfrever <AT> Apache.Org>
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>
sys-apps/systemd/systemd-243.ebuild | 16 ++++++++++++++++
sys-apps/systemd/systemd-9999.ebuild | 16 ++++++++++++++++
2 files changed, 32 insertions(+)
diff --git a/sys-apps/systemd/systemd-243.ebuild
b/sys-apps/systemd/systemd-243.ebuild
index d38227b0738..267a18fcc1c 100644
--- a/sys-apps/systemd/systemd-243.ebuild
+++ b/sys-apps/systemd/systemd-243.ebuild
@@ -419,6 +419,22 @@ save_enabled_units() {
pkg_preinst() {
save_enabled_units {machines,remote-{cryptsetup,fs}}.target
[email protected]
+
+ if ! use split-usr; then
+ local dir
+ for dir in bin sbin lib; do
+ if [[ ! ${EROOT}/${dir} -ef ${EROOT}/usr/${dir} ]]; then
+ eerror "\"${EROOT}/${dir}\" and
\"${EROOT}/usr/${dir}\" are not merged."
+ eerror "One of them should be a symbolic link
to the other one."
+ FAIL=1
+ fi
+ done
+ if [[ ${FAIL} ]]; then
+ eerror "Migration to system layout with merged
directories must be performed before"
+ eerror "rebuilding ${CATEGORY}/${PN} with
USE=\"-split-usr\" to avoid run-time breakage."
+ die "System layout with split directories still used"
+ fi
+ fi
}
pkg_postinst() {
diff --git a/sys-apps/systemd/systemd-9999.ebuild
b/sys-apps/systemd/systemd-9999.ebuild
index d38227b0738..267a18fcc1c 100644
--- a/sys-apps/systemd/systemd-9999.ebuild
+++ b/sys-apps/systemd/systemd-9999.ebuild
@@ -419,6 +419,22 @@ save_enabled_units() {
pkg_preinst() {
save_enabled_units {machines,remote-{cryptsetup,fs}}.target
[email protected]
+
+ if ! use split-usr; then
+ local dir
+ for dir in bin sbin lib; do
+ if [[ ! ${EROOT}/${dir} -ef ${EROOT}/usr/${dir} ]]; then
+ eerror "\"${EROOT}/${dir}\" and
\"${EROOT}/usr/${dir}\" are not merged."
+ eerror "One of them should be a symbolic link
to the other one."
+ FAIL=1
+ fi
+ done
+ if [[ ${FAIL} ]]; then
+ eerror "Migration to system layout with merged
directories must be performed before"
+ eerror "rebuilding ${CATEGORY}/${PN} with
USE=\"-split-usr\" to avoid run-time breakage."
+ die "System layout with split directories still used"
+ fi
+ fi
}
pkg_postinst() {