commit:     884081f76bfb615b4ff37f2cbebe02195a94d6d6
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Fri Sep 25 14:49:55 2015 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Fri Sep 25 14:51:33 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=884081f7

sys-apps/systemd: Disable cleaning of /tmp and /var/tmp

Bug: https://bugs.gentoo.org/490676

Package-Manager: portage-2.2.21_p119

 sys-apps/systemd/files/218-noclean-tmp.patch       |  28 +++++
 sys-apps/systemd/files/226-noclean-tmp.patch       |  28 +++++
 .../{systemd-9999.ebuild => systemd-218-r4.ebuild} | 135 ++++++++++-----------
 .../{systemd-9999.ebuild => systemd-226-r1.ebuild} |   3 +-
 sys-apps/systemd/systemd-9999.ebuild               |   1 +
 5 files changed, 121 insertions(+), 74 deletions(-)

diff --git a/sys-apps/systemd/files/218-noclean-tmp.patch 
b/sys-apps/systemd/files/218-noclean-tmp.patch
new file mode 100644
index 0000000..5dcc4b9
--- /dev/null
+++ b/sys-apps/systemd/files/218-noclean-tmp.patch
@@ -0,0 +1,28 @@
+From 63e5f76a91e2401e8a6227d0d8ae5e75dd2213b0 Mon Sep 17 00:00:00 2001
+From: Mike Gilbert <flop...@gentoo.org>
+Date: Fri, 25 Sep 2015 10:26:18 -0400
+Subject: [PATCH] tmpfiles: Disable cleaning of /tmp and /var/tmp
+
+Bug: https://bugs.gentoo.org/490676
+---
+ tmpfiles.d/tmp.conf | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/tmpfiles.d/tmp.conf b/tmpfiles.d/tmp.conf
+index b80dab4..241fad5 100644
+--- a/tmpfiles.d/tmp.conf
++++ b/tmpfiles.d/tmp.conf
+@@ -8,8 +8,8 @@
+ # See tmpfiles.d(5) for details
+ 
+ # Clear tmp directories separately, to make them easier to override
+-d /tmp 1777 root root 10d
+-d /var/tmp 1777 root root 30d
++v /tmp 1777 root root
++v /var/tmp 1777 root root
+ 
+ # Exclude namespace mountpoints created with PrivateTmp=yes
+ x /tmp/systemd-private-%b-*
+-- 
+2.5.3
+

diff --git a/sys-apps/systemd/files/226-noclean-tmp.patch 
b/sys-apps/systemd/files/226-noclean-tmp.patch
new file mode 100644
index 0000000..290b1bd
--- /dev/null
+++ b/sys-apps/systemd/files/226-noclean-tmp.patch
@@ -0,0 +1,28 @@
+From 3a44775e2618896526d093f7142934205e46d33a Mon Sep 17 00:00:00 2001
+From: Mike Gilbert <flop...@gentoo.org>
+Date: Fri, 25 Sep 2015 10:26:18 -0400
+Subject: [PATCH] tmpfiles: Disable cleaning of /tmp and /var/tmp
+
+Bug: https://bugs.gentoo.org/490676
+---
+ tmpfiles.d/tmp.conf | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/tmpfiles.d/tmp.conf b/tmpfiles.d/tmp.conf
+index ffdd82f..241fad5 100644
+--- a/tmpfiles.d/tmp.conf
++++ b/tmpfiles.d/tmp.conf
+@@ -8,8 +8,8 @@
+ # See tmpfiles.d(5) for details
+ 
+ # Clear tmp directories separately, to make them easier to override
+-v /tmp 1777 root root 10d
+-v /var/tmp 1777 root root 30d
++v /tmp 1777 root root
++v /var/tmp 1777 root root
+ 
+ # Exclude namespace mountpoints created with PrivateTmp=yes
+ x /tmp/systemd-private-%b-*
+-- 
+2.5.3
+

diff --git a/sys-apps/systemd/systemd-9999.ebuild 
b/sys-apps/systemd/systemd-218-r4.ebuild
similarity index 84%
copy from sys-apps/systemd/systemd-9999.ebuild
copy to sys-apps/systemd/systemd-218-r4.ebuild
index 2ec9957..7be421d 100644
--- a/sys-apps/systemd/systemd-9999.ebuild
+++ b/sys-apps/systemd/systemd-218-r4.ebuild
@@ -4,32 +4,27 @@
 
 EAPI=5
 
-if [[ ${PV} == 9999 ]]; then
-       EGIT_REPO_URI="https://github.com/systemd/systemd.git";
-       inherit git-r3
-else
-       SRC_URI="https://github.com/systemd/systemd/archive/v${PV}.tar.gz -> 
${P}.tar.gz"
-       KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86"
-fi
-
-inherit autotools bash-completion-r1 linux-info multilib \
-       multilib-minimal pam systemd toolchain-funcs udev user
+AUTOTOOLS_PRUNE_LIBTOOL_FILES=all
+PYTHON_COMPAT=( python{2_7,3_3,3_4} )
+inherit autotools-utils bash-completion-r1 linux-info multilib \
+       multilib-minimal pam python-single-r1 systemd toolchain-funcs udev \
+       user
 
 DESCRIPTION="System and service manager for Linux"
 HOMEPAGE="http://www.freedesktop.org/wiki/Software/systemd";
+SRC_URI="http://www.freedesktop.org/software/systemd/${P}.tar.xz";
 
 LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
 SLOT="0/2"
-IUSE="acl apparmor audit cryptsetup curl elfutils gcrypt gnuefi http
-       idn importd +kdbus +kmod +lz4 lzma nat pam policykit
-       qrcode +seccomp selinux ssl sysv-utils test vanilla xkb"
-
-REQUIRED_USE="importd? ( curl gcrypt lzma )"
+KEYWORDS="alpha amd64 arm ia64 ppc ppc64 sparc x86"
+IUSE="acl apparmor audit cryptsetup curl doc elfutils gcrypt gudev http
+       idn introspection kdbus +kmod +lz4 lzma pam policykit python qrcode 
+seccomp
+       selinux ssl sysv-utils terminal test vanilla xkb"
 
-MINKV="3.11"
+MINKV="3.8"
 
-COMMON_DEPEND=">=sys-apps/util-linux-2.27:0=[${MULTILIB_USEDEP}]
-       sys-libs/libcap:0=[${MULTILIB_USEDEP}]
+COMMON_DEPEND=">=sys-apps/util-linux-2.25:0=
+       sys-libs/libcap:0=
        !<sys-libs/glibc-2.16
        acl? ( sys-apps/acl:0= )
        apparmor? ( sys-libs/libapparmor:0= )
@@ -38,26 +33,27 @@ 
COMMON_DEPEND=">=sys-apps/util-linux-2.27:0=[${MULTILIB_USEDEP}]
        curl? ( net-misc/curl:0= )
        elfutils? ( >=dev-libs/elfutils-0.158:0= )
        gcrypt? ( >=dev-libs/libgcrypt-1.4.5:0=[${MULTILIB_USEDEP}] )
+       gudev? ( >=dev-libs/glib-2.34.3:2=[${MULTILIB_USEDEP}] )
        http? (
                >=net-libs/libmicrohttpd-0.9.33:0=
                ssl? ( >=net-libs/gnutls-3.1.4:0= )
        )
        idn? ( net-dns/libidn:0= )
-       importd? (
-               app-arch/bzip2:0=
-               sys-libs/zlib:0=
-       )
+       introspection? ( >=dev-libs/gobject-introspection-1.31.1:0= )
        kmod? ( >=sys-apps/kmod-15:0= )
        lz4? ( >=app-arch/lz4-0_p119:0=[${MULTILIB_USEDEP}] )
        lzma? ( >=app-arch/xz-utils-5.0.5-r1:0=[${MULTILIB_USEDEP}] )
-       nat? ( net-firewall/iptables:0= )
        pam? ( virtual/pam:= )
+       python? ( ${PYTHON_DEPS} )
        qrcode? ( media-gfx/qrencode:0= )
        seccomp? ( sys-libs/libseccomp:0= )
        selinux? ( sys-libs/libselinux:0= )
        sysv-utils? (
                !sys-apps/systemd-sysv-utils
                !sys-apps/sysvinit )
+       terminal? ( >=dev-libs/libevdev-1.2:0=
+               >=x11-libs/libxkbcommon-0.5:0=
+               >=x11-libs/libdrm-2.4:0= )
        xkb? ( >=x11-libs/libxkbcommon-0.4.1:0= )
        abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20130224-r9
                !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] )"
@@ -67,11 +63,12 @@ RDEPEND="${COMMON_DEPEND}
        >=sys-apps/baselayout-2.2
        !sys-auth/nss-myhostname
        !sys-fs/eudev
-       !sys-fs/udev"
+       !sys-fs/udev
+       gudev? ( !dev-libs/libgudev )"
 
 # sys-apps/dbus: the daemon only (+ build-time lib dep for tests)
 PDEPEND=">=sys-apps/dbus-1.6.8-r1:0[systemd]
-       >=sys-apps/hwids-20150417[udev]
+       >=sys-apps/hwids-20130717-r1[udev]
        >=sys-fs/udev-init-scripts-25
        policykit? ( sys-auth/polkit )
        !vanilla? ( sys-apps/gentoo-systemd-integration )"
@@ -85,14 +82,16 @@ DEPEND="${COMMON_DEPEND}
        >=sys-devel/binutils-2.23.1
        >=sys-devel/gcc-4.6
        >=sys-kernel/linux-headers-${MINKV}
+       ia64? ( >=sys-kernel/linux-headers-3.9 )
        virtual/pkgconfig
-       gnuefi? ( >=sys-boot/gnu-efi-3.0.2 )
-       test? ( >=sys-apps/dbus-1.6.8-r1:0 )
-       app-text/docbook-xml-dtd:4.2
-       app-text/docbook-xml-dtd:4.5
-       app-text/docbook-xsl-stylesheets
-       dev-libs/libxslt:0
-       >=dev-libs/libgcrypt-1.4.5:0"
+       doc? ( >=dev-util/gtk-doc-1.18 )
+       python? ( dev-python/lxml[${PYTHON_USEDEP}] )
+       test? ( >=sys-apps/dbus-1.6.8-r1:0 )"
+
+PATCHES=(
+       "${FILESDIR}/218-Dont-enable-audit-by-default.patch"
+       "${FILESDIR}/218-noclean-tmp.patch"
+)
 
 pkg_pretend() {
        local CONFIG_CHECK="~AUTOFS4_FS ~BLK_DEV_BSG ~CGROUPS
@@ -133,20 +132,18 @@ pkg_pretend() {
 }
 
 pkg_setup() {
-       :
-}
-
-src_unpack() {
-       default
-       [[ ${PV} != 9999 ]] || git-r3_src_unpack
+       use python && python-single-r1_pkg_setup
 }
 
 src_prepare() {
        # Bug 463376
        sed -i -e 's/GROUP="dialout"/GROUP="uucp"/' rules/*.rules || die
-       epatch "${FILESDIR}/218-Dont-enable-audit-by-default.patch"
-       epatch_user
-       eautoreconf
+
+       # missing in tarball
+       cp "${FILESDIR}"/217-systemd-consoled.service.in \
+               units/user/systemd-consoled.service.in || die
+
+       autotools-utils_src_prepare
 }
 
 src_configure() {
@@ -155,9 +152,6 @@ src_configure() {
        # Fix systems broken by bug #509454.
        [[ ${MY_UDEVDIR} ]] || MY_UDEVDIR=/lib/udev
 
-       # Prevent conflicts with i686 cross toolchain, bug 559726
-       tc-export AR CC NM OBJCOPY RANLIB
-
        multilib-minimal_src_configure
 }
 
@@ -167,9 +161,6 @@ multilib_src_configure() {
                # and makes distcc less effective
                cc_cv_CFLAGS__flto=no
 
-               # Workaround for gcc-4.7, bug 554454.
-               cc_cv_CFLAGS__Werror_shadow=no
-
                # Workaround for bug 516346
                --enable-dependency-tracking
 
@@ -189,7 +180,6 @@ multilib_src_configure() {
                # no deps
                --enable-efi
                --enable-ima
-               --without-python
 
                # Optional components/dependencies
                $(multilib_native_use_enable acl)
@@ -197,48 +187,59 @@ multilib_src_configure() {
                $(multilib_native_use_enable audit)
                $(multilib_native_use_enable cryptsetup libcryptsetup)
                $(multilib_native_use_enable curl libcurl)
+               $(multilib_native_use_enable doc gtk-doc)
                $(multilib_native_use_enable elfutils)
                $(use_enable gcrypt)
-               $(multilib_native_use_enable gnuefi)
+               $(use_enable gudev)
                $(multilib_native_use_enable http microhttpd)
                $(usex http $(multilib_native_use_enable ssl gnutls) 
--disable-gnutls)
                $(multilib_native_use_enable idn libidn)
-               $(multilib_native_use_enable importd)
-               $(multilib_native_use_enable importd bzip2)
-               $(multilib_native_use_enable importd zlib)
+               $(multilib_native_use_enable introspection)
                $(use_enable kdbus)
                $(multilib_native_use_enable kmod)
                $(use_enable lz4)
                $(use_enable lzma xz)
-               $(multilib_native_use_enable nat libiptc)
                $(multilib_native_use_enable pam)
                $(multilib_native_use_enable policykit polkit)
+               $(multilib_native_use_with python)
+               $(multilib_native_use_enable python python-devel)
                $(multilib_native_use_enable qrcode qrencode)
                $(multilib_native_use_enable seccomp)
                $(multilib_native_use_enable selinux)
+               $(multilib_native_use_enable terminal)
                $(multilib_native_use_enable test tests)
                $(multilib_native_use_enable test dbus)
                $(multilib_native_use_enable xkb xkbcommon)
 
+               # not supported (avoid automagic deps in the future)
+               --disable-chkconfig
+
                # hardcode a few paths to spare some deps
                QUOTAON=/usr/sbin/quotaon
                QUOTACHECK=/usr/sbin/quotacheck
 
-               # TODO: we may need to restrict this to gcc
-               EFI_CC="$(tc-getCC)"
-
                # dbus paths
                --with-dbuspolicydir="${EPREFIX}/etc/dbus-1/system.d"
                
--with-dbussessionservicedir="${EPREFIX}/usr/share/dbus-1/services"
                
--with-dbussystemservicedir="${EPREFIX}/usr/share/dbus-1/system-services"
+               --with-dbusinterfacedir="${EPREFIX}/usr/share/dbus-1/interfaces"
 
                --with-ntp-servers="0.gentoo.pool.ntp.org 1.gentoo.pool.ntp.org 
2.gentoo.pool.ntp.org 3.gentoo.pool.ntp.org"
        )
 
+       if ! multilib_is_native_abi; then
+               myeconfargs+=(
+                       MOUNT_{CFLAGS,LIBS}=' '
+
+                       ac_cv_search_cap_init=
+                       ac_cv_header_sys_capability_h=yes
+               )
+       fi
+
        # Work around bug 463846.
        tc-export CC
 
-       ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+       autotools-utils_src_configure
 }
 
 multilib_src_compile() {
@@ -249,6 +250,9 @@ multilib_src_compile() {
        if multilib_is_native_abi; then
                emake "${mymakeopts[@]}"
        else
+               # prerequisites for gudev
+               use gudev && emake src/gudev/gudev{enumtypes,marshal}.{c,h}
+
                echo 'gentoo: $(BUILT_SOURCES)' | \
                emake "${mymakeopts[@]}" -f Makefile -f - gentoo
                echo 'gentoo: $(lib_LTLIBRARIES) $(pkgconfiglib_DATA)' | \
@@ -259,10 +263,6 @@ multilib_src_compile() {
 multilib_src_test() {
        multilib_is_native_abi || continue
 
-       # Needed for bus-related tests
-       local -x SANDBOX_WRITE=${SANDBOX_WRITE}
-       addwrite /sys/fs/kdbus
-
        default
 }
 
@@ -285,6 +285,7 @@ multilib_src_install() {
                        install-pkgconfiglibDATA
                        install-includeHEADERS
                        # safe to call unconditionally, 'installs' empty list
+                       install-libgudev_includeHEADERS
                        install-pkgincludeHEADERS
                )
 
@@ -330,7 +331,6 @@ multilib_src_install_all() {
        rm 
"${D}"/etc/systemd/system/multi-user.target.wants/systemd-networkd.service || 
die
        rm 
"${D}"/etc/systemd/system/multi-user.target.wants/systemd-resolved.service || 
die
        rm -r "${D}"/etc/systemd/system/network-online.target.wants || die
-       rm -r "${D}"/etc/systemd/system/sockets.target.wants || die
        rm -r "${D}"/etc/systemd/system/sysinit.target.wants || die
 }
 
@@ -406,14 +406,6 @@ migrate_net_name_slot() {
        fi
 }
 
-reenable_unit() {
-       if systemctl is-enabled --root="${ROOT}" "$1" &> /dev/null; then
-               ebegin "Re-enabling $1"
-               systemctl reenable --root="${ROOT}" "$1"
-               eend $? || FAIL=1
-       fi
-}
-
 pkg_postinst() {
        newusergroup() {
                enewgroup "$1"
@@ -448,9 +440,6 @@ pkg_postinst() {
        # Migrate 80-net-name-slot.rules -> 80-net-setup-link.rules
        migrate_net_name_slot
 
-       # Re-enable systemd-networkd for socket activation
-       reenable_unit systemd-networkd.service
-
        if [[ ${FAIL} ]]; then
                eerror "One of the postinst commands failed. Please check the 
postinst output"
                eerror "for errors. You may need to clean up your system and/or 
try installing"

diff --git a/sys-apps/systemd/systemd-9999.ebuild 
b/sys-apps/systemd/systemd-226-r1.ebuild
similarity index 99%
copy from sys-apps/systemd/systemd-9999.ebuild
copy to sys-apps/systemd/systemd-226-r1.ebuild
index 2ec9957..9a7bc96 100644
--- a/sys-apps/systemd/systemd-9999.ebuild
+++ b/sys-apps/systemd/systemd-226-r1.ebuild
@@ -28,7 +28,7 @@ REQUIRED_USE="importd? ( curl gcrypt lzma )"
 
 MINKV="3.11"
 
-COMMON_DEPEND=">=sys-apps/util-linux-2.27:0=[${MULTILIB_USEDEP}]
+COMMON_DEPEND=">=sys-apps/util-linux-2.26:0=[${MULTILIB_USEDEP}]
        sys-libs/libcap:0=[${MULTILIB_USEDEP}]
        !<sys-libs/glibc-2.16
        acl? ( sys-apps/acl:0= )
@@ -145,6 +145,7 @@ src_prepare() {
        # Bug 463376
        sed -i -e 's/GROUP="dialout"/GROUP="uucp"/' rules/*.rules || die
        epatch "${FILESDIR}/218-Dont-enable-audit-by-default.patch"
+       epatch "${FILESDIR}/226-noclean-tmp.patch"
        epatch_user
        eautoreconf
 }

diff --git a/sys-apps/systemd/systemd-9999.ebuild 
b/sys-apps/systemd/systemd-9999.ebuild
index 2ec9957..ca76f13 100644
--- a/sys-apps/systemd/systemd-9999.ebuild
+++ b/sys-apps/systemd/systemd-9999.ebuild
@@ -145,6 +145,7 @@ src_prepare() {
        # Bug 463376
        sed -i -e 's/GROUP="dialout"/GROUP="uucp"/' rules/*.rules || die
        epatch "${FILESDIR}/218-Dont-enable-audit-by-default.patch"
+       epatch "${FILESDIR}/226-noclean-tmp.patch"
        epatch_user
        eautoreconf
 }

Reply via email to