public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: sys-fs/udev/, sys-fs/udev/files/
@ 2016-03-09 16:45 William Hubbs
  0 siblings, 0 replies; 13+ messages in thread
From: William Hubbs @ 2016-03-09 16:45 UTC (permalink / raw
  To: gentoo-commits

commit:     c3d441415006ddb8285b8b649373b02da6cbcb42
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Wed Mar  9 16:38:56 2016 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Wed Mar  9 16:40:13 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c3d44141

sys-fs/udev: remove unstable versions

Package-Manager: portage-2.2.26

 sys-fs/udev/Manifest                               |   9 -
 ...e-getxpid-syscall-on-alpha-for-raw_getpid.patch |  30 --
 sys-fs/udev/udev-217.ebuild                        | 497 --------------------
 sys-fs/udev/udev-218.ebuild                        | 504 --------------------
 sys-fs/udev/udev-219.ebuild                        | 504 --------------------
 sys-fs/udev/udev-220-r3.ebuild                     | 507 ---------------------
 sys-fs/udev/udev-222.ebuild                        | 435 ------------------
 sys-fs/udev/udev-224-r1.ebuild                     | 434 ------------------
 sys-fs/udev/udev-224-r2.ebuild                     | 435 ------------------
 sys-fs/udev/udev-224.ebuild                        | 433 ------------------
 sys-fs/udev/udev-229-r1.ebuild                     | 440 ------------------
 sys-fs/udev/udev-229.ebuild                        | 440 ------------------
 12 files changed, 4668 deletions(-)

diff --git a/sys-fs/udev/Manifest b/sys-fs/udev/Manifest
index 0ce06f3..19ea782 100644
--- a/sys-fs/udev/Manifest
+++ b/sys-fs/udev/Manifest
@@ -1,15 +1,6 @@
 DIST systemd-216.tar.xz 3612960 SHA256 945d3db7d840d6ffe98aa68394428e13317161ae79905397faab6671619728f3 SHA512 f4eee6664368168eafd61939f1355ac21c7eeecce6247de98ef36f40bb6a942d12c006ced4ee15f3d8f11699c194990222d5a5115b45f2aa81f2a1abafebbdd2 WHIRLPOOL 505e09b55209a4f9d8cec077970571b2e1298e8db02946a6c79df139dece9d1a08e46c86ef6c8053274abfd46c9a5ea09157f5bc9dc1f7461322c596e84ef494
-DIST systemd-217.tar.xz 3694524 SHA256 a031e6fbcdc7077b37338bae8074d9428ee2fa98033beb4923a62871890f7498 SHA512 7a0b13330b621ec179499018bfbe9619a91cdbd120ae2067e19cbb9bbc25c80dd0f80aac217d823be1332054439bc9b2153ac78fc1eb231fa0fd55cb3bf7a70f WHIRLPOOL f22674a629b7b928875b6b06b0cffaf5874cdcb90c44787279cd8ff2a798e5bc525c1058f8b2bfe746d100c4d7686e36a6f604276d5735f7554122e4caad6689
-DIST systemd-218.tar.xz 3782276 SHA256 1b0768b53b6c6d813a93a4b8fe1f80cf53561b09075010a97c7aa08eee3fd59b SHA512 c183cce8532ccb4716b84587c96a626eea390202a5469b9d89c8cee7f703e40d7c584e05f29501d375b8cd2a1409d011de564df16f54e27f66b3c3007a6e5bd4 WHIRLPOOL 4d0bcf3ddfecd3354d9f4ab13851f8da6baf31e89e64d3b1ac671159f16f23597d88cc2525aece2f867c140fc97e80bce086a5af91f84b8095e2503c13995e6d
-DIST systemd-219.tar.xz 3938228 SHA256 5c57113454e37c040d0cb481bd960ae7cf3a3fe0a231ff4945259bc74503f2d9 SHA512 19a92891996723bbd83fe745f365d25b2879a059466670aebb9e9fbb6a79a3ed6e1a93e8b76042605038766cabad3ddb89aff40b4a11ab830ffa7dc64f87234f WHIRLPOOL 440868c47bed26571084009fa86d267c921cd5cbbc63b596c1161ef7f33a1b9427ad315450014cd729c761b27bf42542c3b0b7ca68e09b23fc8f606147e7e9fb
-DIST systemd-220.tar.xz 4036028 SHA256 3659588c40221ee7257502c0735491f72796dbe17be560013f6d310deb446332 SHA512 c309b4309f8b8d2d97450fb281053feec7b89227626b69e37f3a0d2154c2810c217e58e218f17da11c04f703c6196cec21c4afdcf63879bc736bbdca058a5da5 WHIRLPOOL 2f8974eacb706987e85c7907a517f6b2d47b009f9259a36375537c8bd09bc4774c81e8dc853aa83e644d7c1b579f5113d0bb8a504c7caa5a9240750f9936d561
-DIST systemd-222.tar.gz 4015599 SHA256 b49f51f9855127987adc98aad3b6d608e4e53eaa029b629f2ea2089ce0234f34 SHA512 83f0acf0ca90c89c902c268af6eef4b61380a30380013cbe89c929357959f51682cd3961a6a4f772abc09d5ca09404ae290edf2c3253fab1b20dc2b5b3ecde47 WHIRLPOOL dd0151034de374b072e70448e7a9ff47693df0190e8a2a11488593400d3d7e53e0a91d86037d027c750584089e6c68e58c437647d608a72f8826f091e3253879
-DIST systemd-224.tar.gz 3868075 SHA256 0d7ac1532a57639fbc828f8a5051a090883c6ad2908618a7a13ab386db831bfc SHA512 7717d340c6de11afd589234b7ec8952fe2ffcd05829622bd7ea8e008870c0e3b83eb1eaf20e85ffffa7adafc9c0c0b94fd93784510792109240e22e6b963f198 WHIRLPOOL 645b08ff0c20994b17b8ed585fb0eef682336961d7fedf25031fa4dc89a4d9a2b58c254e0f9baeedcb228435316fdfb562f9fefd21e5a63f94499d2f1040e093
 DIST systemd-225.tar.gz 3878442 SHA256 b2f576bb3688e9315f2f49b98e141ac6f964567370e98ebd8fd7332a0a6f9701 SHA512 35b3946509c7b01660da4370d3c51ff0e6a537dadd9dbb0a039c4f7ed552fd4e02ebac6eb8a788f61f1e3ba99444238d959051dd004c174b027729a80368ac19 WHIRLPOOL 47cd3b5690dafdf3c0ef6a9767e947666b1853541f8aefd17eb5c07eee1477daf32f3b249b04327b1c56d8ec430745725383750b97755bb6cf594d354a7ffdf8
 DIST systemd-228.tar.gz 4034401 SHA256 dd124ff561a07e6439ed2b3713f38ca914df7747f110ce86deea17b56d245ae6 SHA512 e54f282f550854dc082a4788709905e5767b75d2057e18d749b54821f2e44e0a8d1349b1a9180036cc854ecccaf5ff86b3b1dba4d3c2ce1b1fc766930ea4c0ea WHIRLPOOL 16b28367edc29a74f5b08691839da39a02d55bf5bcdffef55bfb1a2e8065eeecbe22a2b661e2d5f161f008d05baa000aff60d662d65db380d6c3fe0c1380eea1
 DIST systemd-229.tar.gz 4319173 SHA256 b51b0a48d1beb388d95bd6a98d62be05490335d4bb388aefecdcb576e91e0741 SHA512 d692c0c9fc82f2fce64a5ec1caa4a0f8cf9edaeb1bdaaa1c462669db8f78b3dd6b33c87ef926ff21823582d0460f7b63aa3755792f9ae2cd6fb813ba08a35c39 WHIRLPOOL aa44f7161d80cc680226f19755579ba72c52cfe7bd671aefb09c414981f3a5a5c852f07d3449ac6f96d4ca91120cfb1464225d995b1637f1e2c108baf3c4a392
 DIST udev-216-patches-2.tar.xz 1264 SHA256 18b7b8f852f11c2ac2a58458462ce686ebec48859562df99c5b9c29c95ddfa3c SHA512 1f5912f3bbc3e40a4efad9de8b1fab2b3a750f3f23c9f2e33a581658959d22cf23f9ff1b8f51597874e7bca1d0f757f37fd5550b4112160261559524eda261f4 WHIRLPOOL 8f93f982de2d1fa10f7e3c6541c559f2c881730276498b14d4d27b8577bdb340d49b2dc7a50a40e8a13fcabbbabb3dfa5f1605aa842e325d12c17e82d2dc787b
-DIST udev-217-patches-1.tar.xz 616 SHA256 80c0e57caa2845164b3fda1a9a74d07763a6b18e55c6e1ec60c0d888cdf24cf8 SHA512 e0ffd9c515c79da30b51448f1a78f6cc442ca595dd0bcd0f766fee31fd1324af6b820238ab342c8e40d6953ce17b872344deb0e7d1803830952d7dcc6f3479cd WHIRLPOOL a4e28fdae7b67fcd65a2d0fbf7e080e9dde6b4cdaacaa845d2bffc26717aa8f7a498fc0e6ad6edf8a553759a0f4b4ddb5da768211b294a1b37a21eecc225cf10
-DIST udev-218-patches-1.tar.xz 616 SHA256 80c0e57caa2845164b3fda1a9a74d07763a6b18e55c6e1ec60c0d888cdf24cf8 SHA512 e0ffd9c515c79da30b51448f1a78f6cc442ca595dd0bcd0f766fee31fd1324af6b820238ab342c8e40d6953ce17b872344deb0e7d1803830952d7dcc6f3479cd WHIRLPOOL a4e28fdae7b67fcd65a2d0fbf7e080e9dde6b4cdaacaa845d2bffc26717aa8f7a498fc0e6ad6edf8a553759a0f4b4ddb5da768211b294a1b37a21eecc225cf10
-DIST udev-220-patches-4.tar.xz 3432 SHA256 b17c676c7984d90bcafb57d087e77bc9e435a3244187f51e8c5ce1b3d4248ac9 SHA512 747e6d36faaed145bbe630e794bdd636d4e39d55fc2fc422d815cee3ab4aa579f15abbd1ff88c0448667546c8b04f72663cffa46d07861199076912bd009d25d WHIRLPOOL 0a349daae71b6ac95afc7414aa931f8aaa7328d2a0e7058cf6099b794531a1148bcd198f404d5d4bab7b250b1390adeb6938e8771da90fb7f56114560fd03a82
 DIST udev-229-patches-1.tar.xz 996 SHA256 29fe3d2ebbbfed8d30237b79275865ab486ca636282bba40f499b624166e4d2d SHA512 1d6f80311049a441acc49fa88e316e83f4a22a4015e2bfc5b76b6b512ed35b431791acdb11d3bcc4a70913019bb23cfcfaeefcf38bdacace1412a9946cba1a74 WHIRLPOOL 580874fc492e84c66e8f1771d7d4da531f9358802e94b0e4bbbda21f0e08e987295553429c55adba56dcd4c333a231dc2ea2c0a2dc42ac999bb018168f200549

diff --git a/sys-fs/udev/files/224-0002-Use-getxpid-syscall-on-alpha-for-raw_getpid.patch b/sys-fs/udev/files/224-0002-Use-getxpid-syscall-on-alpha-for-raw_getpid.patch
deleted file mode 100644
index 40e2d1c..0000000
--- a/sys-fs/udev/files/224-0002-Use-getxpid-syscall-on-alpha-for-raw_getpid.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From a242a99d42276b6b764f80bd0de70c26e5c5f1d4 Mon Sep 17 00:00:00 2001
-From: Matt Turner <mattst88@gmail.com>
-Date: Tue, 4 Aug 2015 14:47:01 -0700
-Subject: [PATCH] Use getxpid syscall on alpha for raw_getpid()
-
-Alpha does not have a getpid syscall, but rather has getxpid to match
-OSF/1.
----
- src/basic/missing.h | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/src/basic/missing.h b/src/basic/missing.h
-index ed6cd80..34ab025 100644
---- a/src/basic/missing.h
-+++ b/src/basic/missing.h
-@@ -977,7 +977,11 @@ static inline int raw_clone(unsigned long flags, void *child_stack) {
- }
- 
- static inline pid_t raw_getpid(void) {
-+#if defined(__alpha__)
-+        return (pid_t) syscall(__NR_getxpid);
-+#else
-         return (pid_t) syscall(__NR_getpid);
-+#endif
- }
- 
- #if !HAVE_DECL_RENAMEAT2
--- 
-2.5.0
-

diff --git a/sys-fs/udev/udev-217.ebuild b/sys-fs/udev/udev-217.ebuild
deleted file mode 100644
index a55cf51..0000000
--- a/sys-fs/udev/udev-217.ebuild
+++ /dev/null
@@ -1,497 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-inherit autotools bash-completion-r1 eutils linux-info multilib multilib-minimal toolchain-funcs udev user versionator
-
-if [[ ${PV} = 9999* ]]; then
-	EGIT_REPO_URI="git://anongit.freedesktop.org/systemd/systemd"
-	inherit git-2
-	patchset=
-else
-	patchset=1
-	SRC_URI="http://www.freedesktop.org/software/systemd/systemd-${PV}.tar.xz"
-	if [[ -n "${patchset}" ]]; then
-		SRC_URI+="
-			https://dev.gentoo.org/~ssuominen/${P}-patches-${patchset}.tar.xz
-			https://dev.gentoo.org/~williamh/dist/${P}-patches-${patchset}.tar.xz"
-	fi
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
-fi
-
-DESCRIPTION="Linux dynamic and persistent device naming support (aka userspace devfs)"
-HOMEPAGE="http://www.freedesktop.org/wiki/Software/systemd"
-
-LICENSE="LGPL-2.1 MIT GPL-2"
-SLOT="0"
-IUSE="acl doc gudev introspection +kmod selinux static-libs"
-
-RESTRICT="test"
-
-COMMON_DEPEND=">=sys-apps/util-linux-2.20
-	acl? ( sys-apps/acl )
-	gudev? ( >=dev-libs/glib-2.34.3[${MULTILIB_USEDEP}] )
-	introspection? ( >=dev-libs/gobject-introspection-1.38 )
-	kmod? ( >=sys-apps/kmod-16 )
-	selinux? ( >=sys-libs/libselinux-2.1.9 )
-	!<sys-libs/glibc-2.11
-	!sys-apps/gentoo-systemd-integration
-	!sys-apps/systemd
-	abi_x86_32? (
-		!<=app-emulation/emul-linux-x86-baselibs-20130224-r7
-		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
-	)"
-# Force new make >= -r4 to skip some parallel build issues
-DEPEND="${COMMON_DEPEND}
-	dev-util/gperf
-	>=sys-apps/coreutils-8.16
-	sys-libs/libcap
-	virtual/os-headers
-	virtual/pkgconfig
-	>=sys-devel/make-3.82-r4
-	>=sys-kernel/linux-headers-3.7
-	doc? ( >=dev-util/gtk-doc-1.18 )"
-# Try with `emerge -C docbook-xml-dtd` to see the build failure without DTDs
-if [[ ${PV} = 9999* ]]; then
-	DEPEND="${DEPEND}
-		app-text/docbook-xml-dtd:4.2
-		app-text/docbook-xml-dtd:4.5
-		app-text/docbook-xsl-stylesheets
-		dev-libs/libxslt"
-fi
-RDEPEND="${COMMON_DEPEND}
-	!<sys-fs/lvm2-2.02.103
-	!<sec-policy/selinux-base-2.20120725-r10
-	gudev? ( !dev-libs/libgudev )"
-PDEPEND=">=sys-apps/hwids-20140304[udev]
-	>=sys-fs/udev-init-scripts-26"
-
-S=${WORKDIR}/systemd-${PV}
-
-# The multilib-build.eclass doesn't handle situation where the installed headers
-# are different in ABIs. In this case, we install libgudev headers in native
-# ABI but not for non-native ABI.
-multilib_check_headers() { :; }
-
-check_default_rules() {
-	# Make sure there are no sudden changes to upstream rules file
-	# (more for my own needs than anything else ...)
-	local udev_rules_md5=c18b74c4f8bf4a397ee667ee419f3a8e
-	MD5=$(md5sum < "${S}"/rules/50-udev-default.rules)
-	MD5=${MD5/  -/}
-	if [[ ${MD5} != ${udev_rules_md5} ]]; then
-		eerror "50-udev-default.rules has been updated, please validate!"
-		eerror "md5sum: ${MD5}"
-		die "50-udev-default.rules has been updated, please validate!"
-	fi
-}
-
-pkg_setup() {
-	if [[ ${MERGE_TYPE} != buildonly ]]; then
-		CONFIG_CHECK="~BLK_DEV_BSG ~DEVTMPFS ~!IDE ~INOTIFY_USER ~!SYSFS_DEPRECATED ~!SYSFS_DEPRECATED_V2 ~SIGNALFD ~EPOLL ~FHANDLE ~NET ~!FW_LOADER_USER_HELPER"
-		linux-info_pkg_setup
-
-		# CONFIG_FHANDLE was introduced by 2.6.39
-		local MINKV=2.6.39
-
-		if kernel_is -lt ${MINKV//./ }; then
-			eerror "Your running kernel is too old to run this version of ${P}"
-			eerror "You need to upgrade kernel at least to ${MINKV}"
-		fi
-
-		if kernel_is -lt 3 7; then
-			ewarn "Your running kernel is too old to have firmware loader and"
-			ewarn "this version of ${P} doesn't have userspace firmware loader"
-			ewarn "If you need firmware support, you need to upgrade kernel at least to 3.7"
-		fi
-	fi
-}
-
-src_prepare() {
-	if ! [[ ${PV} = 9999* ]]; then
-		# secure_getenv() disable for non-glibc systems wrt bug #443030
-		if ! [[ $(grep -r secure_getenv * | wc -l) -eq 28 ]]; then
-			eerror "The line count for secure_getenv() failed, see bug #443030"
-			die
-		fi
-	fi
-
-	# backport some patches
-	if [[ -n "${patchset}" ]]; then
-		EPATCH_SUFFIX=patch EPATCH_FORCE=yes epatch
-	fi
-
-	cat <<-EOF > "${T}"/40-gentoo.rules
-	# Gentoo specific floppy and usb groups
-	SUBSYSTEM=="block", KERNEL=="fd[0-9]", GROUP="floppy"
-	SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GROUP="usb"
-	EOF
-
-	# change rules back to group uucp instead of dialout for now wrt #454556
-	sed -i -e 's/GROUP="dialout"/GROUP="uucp"/' rules/*.rules || die
-
-	# apply user patches
-	epatch_user
-
-	if [[ ! -e configure ]]; then
-		if use doc; then
-			gtkdocize --docdir docs || die "gtkdocize failed"
-		else
-			echo 'EXTRA_DIST =' > docs/gtk-doc.make
-		fi
-		eautoreconf
-	else
-		check_default_rules
-		elibtoolize
-	fi
-
-	# Restore possibility of running --enable-static wrt #472608
-	sed -i \
-		-e '/--enable-static is not supported by systemd/s:as_fn_error:echo:' \
-		configure || die
-
-	if ! use elibc_glibc; then #443030
-		echo '#define secure_getenv(x) NULL' >> config.h.in
-		sed -i -e '/error.*secure_getenv/s:.*:#define secure_getenv(x) NULL:' src/shared/missing.h || die
-	fi
-}
-
-multilib_src_configure() {
-	tc-export CC #463846
-	export cc_cv_CFLAGS__flto=no #502950
-
-	# Keep sorted by ./configure --help and only pass --disable flags
-	# when *required* to avoid external deps or unnecessary compile
-	local econf_args
-	econf_args=(
-		ac_cv_search_cap_init=
-		--libdir=/usr/$(get_libdir)
-		--docdir=/usr/share/doc/${PF}
-		$(multilib_native_use_enable static-libs static)
-		--disable-nls
-		$(multilib_native_use_enable doc gtk-doc)
-		$(multilib_native_use_enable introspection)
-		--disable-python-devel
-		--disable-dbus
-		$(multilib_native_use_enable kmod)
-		--disable-seccomp
-		$(multilib_native_use_enable selinux)
-		--disable-xz
-		--disable-lz4
-		--disable-pam
-		$(multilib_native_use_enable acl)
-		--disable-gcrypt
-		--disable-audit
-		--disable-libcryptsetup
-		--disable-qrencode
-		--disable-microhttpd
-		--disable-gnutls
-		--disable-libcurl
-		--disable-libidn
-		--disable-quotacheck
-		--disable-logind
-		--disable-polkit
-		--disable-terminal
-		--disable-myhostname
-		$(use_enable gudev)
-		$(multilib_is_native_abi || echo "--disable-manpages")
-		--enable-split-usr
-		--with-html-dir=/usr/share/doc/${PF}/html
-		--without-python
-		--with-bashcompletiondir="$(get_bashcompdir)"
-		--with-rootprefix=
-		$(multilib_is_native_abi && echo "--with-rootlibdir=/$(get_libdir)")
-	)
-
-	# Use pregenerated copies when possible wrt #480924
-	[[ ${PV} = 9999* ]] || econf_args+=( --disable-manpages )
-
-	ECONF_SOURCE=${S} econf "${econf_args[@]}"
-}
-
-multilib_src_compile() {
-	echo 'BUILT_SOURCES: $(BUILT_SOURCES)' > "${T}"/Makefile.extra
-	emake -f Makefile -f "${T}"/Makefile.extra BUILT_SOURCES
-
-	# Most of the parallel build problems were solved by >=sys-devel/make-3.82-r4,
-	# but not everything -- separate building of the binaries as a workaround,
-	# which will force internal libraries required for the helpers to be built
-	# early enough, like eg. libsystemd-shared.la
-	if multilib_is_native_abi; then
-		local lib_targets=( libudev.la )
-		use gudev && lib_targets+=( libgudev-1.0.la )
-		emake "${lib_targets[@]}"
-
-		local exec_targets=(
-			systemd-udevd
-			udevadm
-		)
-		emake "${exec_targets[@]}"
-
-		local helper_targets=(
-			ata_id
-			cdrom_id
-			collect
-			scsi_id
-			v4l_id
-			accelerometer
-			mtd_probe
-		)
-		emake "${helper_targets[@]}"
-
-		if [[ ${PV} = 9999* ]]; then
-			local man_targets=(
-				man/udev.conf.5
-				man/systemd.link.5
-				man/udev.7
-				man/systemd-udevd.service.8
-				man/udevadm.8
-			)
-			emake "${man_targets[@]}"
-		fi
-
-		if use doc; then
-			emake -C docs/libudev
-			use gudev && emake -C docs/gudev
-		fi
-	else
-		local lib_targets=( libudev.la )
-		use gudev && lib_targets+=( libgudev-1.0.la )
-		emake "${lib_targets[@]}"
-	fi
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		local lib_LTLIBRARIES="libudev.la" \
-			pkgconfiglib_DATA="src/libudev/libudev.pc"
-
-		local targets=(
-			install-libLTLIBRARIES
-			install-includeHEADERS
-			install-libgudev_includeHEADERS
-			install-rootbinPROGRAMS
-			install-rootlibexecPROGRAMS
-			install-udevlibexecPROGRAMS
-			install-dist_udevconfDATA
-			install-dist_udevrulesDATA
-			install-girDATA
-			install-pkgconfiglibDATA
-			install-sharepkgconfigDATA
-			install-typelibsDATA
-			install-dist_docDATA
-			libudev-install-hook
-			install-directories-hook
-			install-dist_bashcompletionDATA
-			install-dist_networkDATA
-		)
-
-		if use gudev; then
-			lib_LTLIBRARIES+=" libgudev-1.0.la"
-			pkgconfiglib_DATA+=" src/gudev/gudev-1.0.pc"
-		fi
-
-		# add final values of variables:
-		targets+=(
-			rootlibexec_PROGRAMS=systemd-udevd
-			rootbin_PROGRAMS=udevadm
-			lib_LTLIBRARIES="${lib_LTLIBRARIES}"
-			pkgconfiglib_DATA="${pkgconfiglib_DATA}"
-			INSTALL_DIRS='$(sysconfdir)/udev/rules.d \
-					$(sysconfdir)/udev/hwdb.d \
-					$(sysconfdir)/systemd/network'
-			dist_bashcompletion_DATA="shell-completion/bash/udevadm"
-			dist_network_DATA="network/99-default.link"
-		)
-		emake -j1 DESTDIR="${D}" "${targets[@]}"
-
-		if use doc; then
-			emake -C docs/libudev DESTDIR="${D}" install
-			use gudev && emake -C docs/gudev DESTDIR="${D}" install
-		fi
-
-		if [[ ${PV} = 9999* ]]; then
-			doman man/{udev.conf.5,systemd.link.5,udev.7,systemd-udevd.service.8,udevadm.8}
-		else
-			doman "${S}"/man/{udev.conf.5,systemd.link.5,udev.7,systemd-udevd.service.8,udevadm.8}
-		fi
-	else
-		local lib_LTLIBRARIES="libudev.la" \
-			pkgconfiglib_DATA="src/libudev/libudev.pc" \
-			include_HEADERS="src/libudev/libudev.h"
-
-		local targets=(
-			install-libLTLIBRARIES
-			install-includeHEADERS
-			install-pkgconfiglibDATA
-		)
-
-		if use gudev; then
-			lib_LTLIBRARIES+=" libgudev-1.0.la"
-			pkgconfiglib_DATA+=" src/gudev/gudev-1.0.pc"
-		fi
-
-		targets+=(
-			lib_LTLIBRARIES="${lib_LTLIBRARIES}"
-			pkgconfiglib_DATA="${pkgconfiglib_DATA}"
-			include_HEADERS="${include_HEADERS}"
-			)
-		emake -j1 DESTDIR="${D}" "${targets[@]}"
-	fi
-}
-
-multilib_src_install_all() {
-	dodoc TODO
-
-	prune_libtool_files --all
-	rm -f \
-		"${D}"/lib/udev/rules.d/99-systemd.rules \
-		"${D}"/usr/share/doc/${PF}/{LICENSE.*,GVARIANT-SERIALIZATION,DIFFERENCES,PORTING-DBUS1,sd-shutdown.h}
-
-	# see src_prepare() for content of 40-gentoo.rules
-	insinto /lib/udev/rules.d
-	doins "${T}"/40-gentoo.rules
-
-	# maintainer note: by not letting the upstream build-sys create the .so
-	# link, you also avoid a parallel make problem
-	mv "${D}"/usr/share/man/man8/systemd-udevd{.service,}.8
-
-	if ! [[ ${PV} = 9999* ]]; then
-		insinto /usr/share/doc/${PF}/html/gudev
-		doins "${S}"/docs/gudev/html/*
-
-		insinto /usr/share/doc/${PF}/html/libudev
-		doins "${S}"/docs/libudev/html/*
-	fi
-}
-
-pkg_preinst() {
-	local htmldir
-	for htmldir in gudev libudev; do
-		if [[ -d ${ROOT%/}/usr/share/gtk-doc/html/${htmldir} ]]; then
-			rm -rf "${ROOT%/}"/usr/share/gtk-doc/html/${htmldir}
-		fi
-		if [[ -d ${D}/usr/share/doc/${PF}/html/${htmldir} ]]; then
-			dosym ../../doc/${PF}/html/${htmldir} \
-				/usr/share/gtk-doc/html/${htmldir}
-		fi
-	done
-}
-
-pkg_postinst() {
-	mkdir -p "${ROOT%/}"/run
-
-	# "losetup -f" is confused if there is an empty /dev/loop/, Bug #338766
-	# So try to remove it here (will only work if empty).
-	rmdir "${ROOT%/}"/dev/loop 2>/dev/null
-	if [[ -d ${ROOT%/}/dev/loop ]]; then
-		ewarn "Please make sure your remove /dev/loop,"
-		ewarn "else losetup may be confused when looking for unused devices."
-	fi
-
-	local fstab="${ROOT%/}"/etc/fstab dev path fstype rest
-	while read -r dev path fstype rest; do
-		if [[ ${path} == /dev && ${fstype} != devtmpfs ]]; then
-			ewarn "You need to edit your /dev line in ${fstab} to have devtmpfs"
-			ewarn "filesystem. Otherwise udev won't be able to boot."
-			ewarn "See, https://bugs.gentoo.org/453186"
-		fi
-	done < "${fstab}"
-
-	if [[ -d ${ROOT%/}/usr/lib/udev ]]; then
-		ewarn
-		ewarn "Please re-emerge all packages on your system which install"
-		ewarn "rules and helpers in /usr/lib/udev. They should now be in"
-		ewarn "/lib/udev."
-		ewarn
-		ewarn "One way to do this is to run the following command:"
-		ewarn "emerge -av1 \$(qfile -q -S -C /usr/lib/udev)"
-		ewarn "Note that qfile can be found in app-portage/portage-utils"
-	fi
-
-	local old_cd_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-cd.rules
-	local old_net_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-net.rules
-	for old_rules in "${old_cd_rules}" "${old_net_rules}"; do
-		if [[ -f ${old_rules} ]]; then
-			ewarn
-			ewarn "File ${old_rules} is from old udev installation but if you still use it,"
-			ewarn "rename it to something else starting with 70- to silence this deprecation"
-			ewarn "warning."
-		fi
-	done
-
-	elog
-	elog "Starting from version >= 197 the new predictable network interface names are"
-	elog "used by default, see:"
-	elog "http://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames"
-	elog "http://cgit.freedesktop.org/systemd/systemd/tree/src/udev/udev-builtin-net_id.c"
-	elog
-	elog "Example command to get the information for the new interface name before booting"
-	elog "(replace <ifname> with, for example, eth0):"
-	elog "# udevadm test-builtin net_id /sys/class/net/<ifname> 2> /dev/null"
-	elog
-	elog "You can use either kernel parameter \"net.ifnames=0\", create empty"
-	elog "file /etc/systemd/network/99-default.link, or symlink it to /dev/null"
-	elog "to disable the feature."
-
-	if has_version 'sys-apps/biosdevname'; then
-		ewarn
-		ewarn "You can replace the functionality of sys-apps/biosdevname which has been"
-		ewarn "detected to be installed with the new predictable network interface names."
-	fi
-
-	ewarn
-	ewarn "You need to restart udev as soon as possible to make the upgrade go"
-	ewarn "into effect."
-	ewarn "The method you use to do this depends on your init system."
-	if has_version 'sys-apps/openrc'; then
-		ewarn "For sys-apps/openrc users it is:"
-		ewarn "# /etc/init.d/udev --nodeps restart"
-	fi
-
-	elog
-	elog "For more information on udev on Gentoo, upgrading, writing udev rules, and"
-	elog "fixing known issues visit:"
-	elog "https://wiki.gentoo.org/wiki/Udev"
-	elog "https://wiki.gentoo.org/wiki/Udev/upgrade"
-
-	# If user has disabled 80-net-name-slot.rules using a empty file or a symlink to /dev/null,
-	# do the same for 80-net-setup-link.rules to keep the old behavior
-	local net_move=no
-	local net_name_slot_sym=no
-	local net_rules_path="${ROOT%/}"/etc/udev/rules.d
-	local net_name_slot="${net_rules_path}"/80-net-name-slot.rules
-	local net_setup_link="${net_rules_path}"/80-net-setup-link.rules
-	if [[ ! -e ${net_setup_link} ]]; then
-		[[ -f ${net_name_slot} && $(sed -e "/^#/d" -e "/^\W*$/d" ${net_name_slot} | wc -l) == 0 ]] && net_move=yes
-		if [[ -L ${net_name_slot} && $(readlink ${net_name_slot}) == /dev/null ]]; then
-			net_move=yes
-			net_name_slot_sym=yes
-		fi
-	fi
-	if [[ ${net_move} == yes ]]; then
-		ebegin "Copying ${net_name_slot} to ${net_setup_link}"
-
-		if [[ ${net_name_slot_sym} == yes ]]; then
-			ln -nfs /dev/null "${net_setup_link}"
-		else
-			cp "${net_name_slot}" "${net_setup_link}"
-		fi
-		eend $?
-	fi
-
-	# http://cgit.freedesktop.org/systemd/systemd/commit/rules/50-udev-default.rules?id=3dff3e00e044e2d53c76fa842b9a4759d4a50e69
-	# https://bugs.gentoo.org/246847
-	# https://bugs.gentoo.org/514174
-	enewgroup input
-
-	# Update hwdb database in case the format is changed by udev version.
-	if has_version 'sys-apps/hwids[udev]'; then
-		udevadm hwdb --update --root="${ROOT%/}"
-		# Only reload when we are not upgrading to avoid potential race w/ incompatible hwdb.bin and the running udevd
-		# http://cgit.freedesktop.org/systemd/systemd/commit/?id=1fab57c209035f7e66198343074e9cee06718bda
-		[[ -z ${REPLACING_VERSIONS} ]] && udev_reload
-	fi
-}

diff --git a/sys-fs/udev/udev-218.ebuild b/sys-fs/udev/udev-218.ebuild
deleted file mode 100644
index b805dda..0000000
--- a/sys-fs/udev/udev-218.ebuild
+++ /dev/null
@@ -1,504 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-inherit autotools bash-completion-r1 eutils linux-info multilib multilib-minimal toolchain-funcs udev user versionator
-
-if [[ ${PV} = 9999* ]]; then
-	EGIT_REPO_URI="git://anongit.freedesktop.org/systemd/systemd"
-	inherit git-2
-	patchset=
-else
-	patchset=1
-	SRC_URI="http://www.freedesktop.org/software/systemd/systemd-${PV}.tar.xz"
-	if [[ -n "${patchset}" ]]; then
-		SRC_URI+="
-			https://dev.gentoo.org/~ssuominen/${P}-patches-${patchset}.tar.xz
-			https://dev.gentoo.org/~williamh/dist/${P}-patches-${patchset}.tar.xz"
-	fi
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
-fi
-
-DESCRIPTION="Linux dynamic and persistent device naming support (aka userspace devfs)"
-HOMEPAGE="http://www.freedesktop.org/wiki/Software/systemd"
-
-LICENSE="LGPL-2.1 MIT GPL-2"
-SLOT="0"
-IUSE="acl doc gudev introspection +kmod selinux static-libs"
-
-RESTRICT="test"
-
-COMMON_DEPEND=">=sys-apps/util-linux-2.20
-	acl? ( sys-apps/acl )
-	gudev? ( >=dev-libs/glib-2.34.3[${MULTILIB_USEDEP}] )
-	introspection? ( >=dev-libs/gobject-introspection-1.38 )
-	kmod? ( >=sys-apps/kmod-16 )
-	selinux? ( >=sys-libs/libselinux-2.1.9 )
-	!<sys-libs/glibc-2.11
-	!sys-apps/gentoo-systemd-integration
-	!sys-apps/systemd
-	abi_x86_32? (
-		!<=app-emulation/emul-linux-x86-baselibs-20130224-r7
-		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
-	)"
-# Force new make >= -r4 to skip some parallel build issues
-DEPEND="${COMMON_DEPEND}
-	dev-util/gperf
-	>=sys-apps/coreutils-8.16
-	sys-libs/libcap
-	virtual/os-headers
-	virtual/pkgconfig
-	>=sys-devel/make-3.82-r4
-	>=sys-kernel/linux-headers-3.7
-	doc? ( >=dev-util/gtk-doc-1.18 )"
-# Try with `emerge -C docbook-xml-dtd` to see the build failure without DTDs
-if [[ ${PV} = 9999* ]]; then
-	DEPEND="${DEPEND}
-		app-text/docbook-xml-dtd:4.2
-		app-text/docbook-xml-dtd:4.5
-		app-text/docbook-xsl-stylesheets
-		dev-libs/libxslt"
-fi
-RDEPEND="${COMMON_DEPEND}
-	!<sys-fs/lvm2-2.02.103
-	!<sec-policy/selinux-base-2.20120725-r10
-	gudev? ( !dev-libs/libgudev )"
-PDEPEND=">=sys-apps/hwids-20140304[udev]
-	>=sys-fs/udev-init-scripts-26"
-
-S=${WORKDIR}/systemd-${PV}
-
-# The multilib-build.eclass doesn't handle situation where the installed headers
-# are different in ABIs. In this case, we install libgudev headers in native
-# ABI but not for non-native ABI.
-multilib_check_headers() { :; }
-
-check_default_rules() {
-	# Make sure there are no sudden changes to upstream rules file
-	# (more for my own needs than anything else ...)
-	local udev_rules_md5=c18b74c4f8bf4a397ee667ee419f3a8e
-	MD5=$(md5sum < "${S}"/rules/50-udev-default.rules)
-	MD5=${MD5/  -/}
-	if [[ ${MD5} != ${udev_rules_md5} ]]; then
-		eerror "50-udev-default.rules has been updated, please validate!"
-		eerror "md5sum: ${MD5}"
-		die "50-udev-default.rules has been updated, please validate!"
-	fi
-}
-
-pkg_setup() {
-	if [[ ${MERGE_TYPE} != buildonly ]]; then
-		CONFIG_CHECK="~BLK_DEV_BSG ~DEVTMPFS ~!IDE ~INOTIFY_USER ~!SYSFS_DEPRECATED ~!SYSFS_DEPRECATED_V2 ~SIGNALFD ~EPOLL ~FHANDLE ~NET ~!FW_LOADER_USER_HELPER"
-		linux-info_pkg_setup
-
-		# CONFIG_FHANDLE was introduced by 2.6.39
-		local MINKV=2.6.39
-
-		if kernel_is -lt ${MINKV//./ }; then
-			eerror "Your running kernel is too old to run this version of ${P}"
-			eerror "You need to upgrade kernel at least to ${MINKV}"
-		fi
-
-		if kernel_is -lt 3 7; then
-			ewarn "Your running kernel is too old to have firmware loader and"
-			ewarn "this version of ${P} doesn't have userspace firmware loader"
-			ewarn "If you need firmware support, you need to upgrade kernel at least to 3.7"
-		fi
-	fi
-}
-
-src_prepare() {
-	if ! [[ ${PV} = 9999* ]]; then
-		# secure_getenv() disable for non-glibc systems wrt bug #443030
-		if ! [[ $(grep -r secure_getenv * | wc -l) -eq 27 ]]; then
-			eerror "The line count for secure_getenv() failed, see bug #443030"
-			die
-		fi
-	fi
-
-	# backport some patches
-	if [[ -n "${patchset}" ]]; then
-		EPATCH_SUFFIX=patch EPATCH_FORCE=yes epatch
-	fi
-
-	cat <<-EOF > "${T}"/40-gentoo.rules
-	# Gentoo specific floppy and usb groups
-	SUBSYSTEM=="block", KERNEL=="fd[0-9]", GROUP="floppy"
-	SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GROUP="usb"
-	EOF
-
-	# change rules back to group uucp instead of dialout for now wrt #454556
-	sed -i -e 's/GROUP="dialout"/GROUP="uucp"/' rules/*.rules || die
-
-	# apply user patches
-	epatch_user
-
-	if [[ ! -e configure ]]; then
-		if use doc; then
-			gtkdocize --docdir docs || die "gtkdocize failed"
-		else
-			echo 'EXTRA_DIST =' > docs/gtk-doc.make
-		fi
-		eautoreconf
-	else
-		check_default_rules
-		elibtoolize
-	fi
-
-	# Restore possibility of running --enable-static wrt #472608
-	sed -i \
-		-e '/--enable-static is not supported by systemd/s:as_fn_error:echo:' \
-		configure || die
-
-	if ! use elibc_glibc; then #443030
-		echo '#define secure_getenv(x) NULL' >> config.h.in
-		sed -i -e '/error.*secure_getenv/s:.*:#define secure_getenv(x) NULL:' src/shared/missing.h || die
-	fi
-}
-
-multilib_src_configure() {
-	tc-export CC #463846
-	export cc_cv_CFLAGS__flto=no #502950
-
-	# Keep sorted by ./configure --help and only pass --disable flags
-	# when *required* to avoid external deps or unnecessary compile
-	local econf_args
-	econf_args=(
-		ac_cv_search_cap_init=
-		--libdir=/usr/$(get_libdir)
-		--docdir=/usr/share/doc/${PF}
-		$(multilib_native_use_enable static-libs static)
-		--disable-nls
-		$(multilib_native_use_enable doc gtk-doc)
-		$(multilib_native_use_enable introspection)
-		--disable-python-devel
-		--disable-dbus
-		$(multilib_native_use_enable kmod)
-		--disable-xkbcommon
-		--disable-seccomp
-		$(multilib_native_use_enable selinux)
-		--disable-xz
-		--disable-lz4
-		--disable-pam
-		$(multilib_native_use_enable acl)
-		--disable-gcrypt
-		--disable-audit
-		--disable-libcryptsetup
-		--disable-qrencode
-		--disable-microhttpd
-		--disable-gnutls
-		--disable-libcurl
-		--disable-libidn
-		--disable-quotacheck
-		--disable-logind
-		--disable-polkit
-		--disable-terminal
-		--disable-myhostname
-		$(use_enable gudev)
-		$(multilib_is_native_abi || echo "--disable-manpages")
-		--enable-split-usr
-		--with-html-dir=/usr/share/doc/${PF}/html
-		--without-python
-		--with-bashcompletiondir="$(get_bashcompdir)"
-		--with-rootprefix=
-		$(multilib_is_native_abi && echo "--with-rootlibdir=/$(get_libdir)")
-	)
-
-	if ! multilib_is_native_abi; then
-		econf_args+=(
-			MOUNT_{CFLAGS,LIBS}=' '
-		)
-	fi
-
-	# Use pregenerated copies when possible wrt #480924
-	[[ ${PV} = 9999* ]] || econf_args+=( --disable-manpages )
-
-	ECONF_SOURCE=${S} econf "${econf_args[@]}"
-}
-
-multilib_src_compile() {
-	echo 'BUILT_SOURCES: $(BUILT_SOURCES)' > "${T}"/Makefile.extra
-	emake -f Makefile -f "${T}"/Makefile.extra BUILT_SOURCES
-
-	# Most of the parallel build problems were solved by >=sys-devel/make-3.82-r4,
-	# but not everything -- separate building of the binaries as a workaround,
-	# which will force internal libraries required for the helpers to be built
-	# early enough, like eg. libsystemd-shared.la
-	if multilib_is_native_abi; then
-		local lib_targets=( libudev.la )
-		use gudev && lib_targets+=( libgudev-1.0.la )
-		emake "${lib_targets[@]}"
-
-		local exec_targets=(
-			systemd-udevd
-			udevadm
-		)
-		emake "${exec_targets[@]}"
-
-		local helper_targets=(
-			ata_id
-			cdrom_id
-			collect
-			scsi_id
-			v4l_id
-			accelerometer
-			mtd_probe
-		)
-		emake "${helper_targets[@]}"
-
-		if [[ ${PV} = 9999* ]]; then
-			local man_targets=(
-				man/udev.conf.5
-				man/systemd.link.5
-				man/udev.7
-				man/systemd-udevd.service.8
-				man/udevadm.8
-			)
-			emake "${man_targets[@]}"
-		fi
-
-		if use doc; then
-			emake -C docs/libudev
-			use gudev && emake -C docs/gudev
-		fi
-	else
-		local lib_targets=( libudev.la )
-		use gudev && lib_targets+=( libgudev-1.0.la )
-		emake "${lib_targets[@]}"
-	fi
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		local lib_LTLIBRARIES="libudev.la" \
-			pkgconfiglib_DATA="src/libudev/libudev.pc"
-
-		local targets=(
-			install-libLTLIBRARIES
-			install-includeHEADERS
-			install-libgudev_includeHEADERS
-			install-rootbinPROGRAMS
-			install-rootlibexecPROGRAMS
-			install-udevlibexecPROGRAMS
-			install-dist_udevconfDATA
-			install-dist_udevrulesDATA
-			install-girDATA
-			install-pkgconfiglibDATA
-			install-sharepkgconfigDATA
-			install-typelibsDATA
-			install-dist_docDATA
-			libudev-install-hook
-			install-directories-hook
-			install-dist_bashcompletionDATA
-			install-dist_networkDATA
-		)
-
-		if use gudev; then
-			lib_LTLIBRARIES+=" libgudev-1.0.la"
-			pkgconfiglib_DATA+=" src/gudev/gudev-1.0.pc"
-		fi
-
-		# add final values of variables:
-		targets+=(
-			rootlibexec_PROGRAMS=systemd-udevd
-			rootbin_PROGRAMS=udevadm
-			lib_LTLIBRARIES="${lib_LTLIBRARIES}"
-			pkgconfiglib_DATA="${pkgconfiglib_DATA}"
-			INSTALL_DIRS='$(sysconfdir)/udev/rules.d \
-					$(sysconfdir)/udev/hwdb.d \
-					$(sysconfdir)/systemd/network'
-			dist_bashcompletion_DATA="shell-completion/bash/udevadm"
-			dist_network_DATA="network/99-default.link"
-		)
-		emake -j1 DESTDIR="${D}" "${targets[@]}"
-
-		if use doc; then
-			emake -C docs/libudev DESTDIR="${D}" install
-			use gudev && emake -C docs/gudev DESTDIR="${D}" install
-		fi
-
-		if [[ ${PV} = 9999* ]]; then
-			doman man/{udev.conf.5,systemd.link.5,udev.7,systemd-udevd.service.8,udevadm.8}
-		else
-			doman "${S}"/man/{udev.conf.5,systemd.link.5,udev.7,systemd-udevd.service.8,udevadm.8}
-		fi
-	else
-		local lib_LTLIBRARIES="libudev.la" \
-			pkgconfiglib_DATA="src/libudev/libudev.pc" \
-			include_HEADERS="src/libudev/libudev.h"
-
-		local targets=(
-			install-libLTLIBRARIES
-			install-includeHEADERS
-			install-pkgconfiglibDATA
-		)
-
-		if use gudev; then
-			lib_LTLIBRARIES+=" libgudev-1.0.la"
-			pkgconfiglib_DATA+=" src/gudev/gudev-1.0.pc"
-		fi
-
-		targets+=(
-			lib_LTLIBRARIES="${lib_LTLIBRARIES}"
-			pkgconfiglib_DATA="${pkgconfiglib_DATA}"
-			include_HEADERS="${include_HEADERS}"
-			)
-		emake -j1 DESTDIR="${D}" "${targets[@]}"
-	fi
-}
-
-multilib_src_install_all() {
-	dodoc TODO
-
-	prune_libtool_files --all
-	rm -f \
-		"${D}"/lib/udev/rules.d/99-systemd.rules \
-		"${D}"/usr/share/doc/${PF}/{LICENSE.*,GVARIANT-SERIALIZATION,DIFFERENCES,PORTING-DBUS1,sd-shutdown.h}
-
-	# see src_prepare() for content of 40-gentoo.rules
-	insinto /lib/udev/rules.d
-	doins "${T}"/40-gentoo.rules
-
-	# maintainer note: by not letting the upstream build-sys create the .so
-	# link, you also avoid a parallel make problem
-	mv "${D}"/usr/share/man/man8/systemd-udevd{.service,}.8
-
-	if ! [[ ${PV} = 9999* ]]; then
-		insinto /usr/share/doc/${PF}/html/gudev
-		doins "${S}"/docs/gudev/html/*
-
-		insinto /usr/share/doc/${PF}/html/libudev
-		doins "${S}"/docs/libudev/html/*
-	fi
-}
-
-pkg_preinst() {
-	local htmldir
-	for htmldir in gudev libudev; do
-		if [[ -d ${ROOT%/}/usr/share/gtk-doc/html/${htmldir} ]]; then
-			rm -rf "${ROOT%/}"/usr/share/gtk-doc/html/${htmldir}
-		fi
-		if [[ -d ${D}/usr/share/doc/${PF}/html/${htmldir} ]]; then
-			dosym ../../doc/${PF}/html/${htmldir} \
-				/usr/share/gtk-doc/html/${htmldir}
-		fi
-	done
-}
-
-pkg_postinst() {
-	mkdir -p "${ROOT%/}"/run
-
-	# "losetup -f" is confused if there is an empty /dev/loop/, Bug #338766
-	# So try to remove it here (will only work if empty).
-	rmdir "${ROOT%/}"/dev/loop 2>/dev/null
-	if [[ -d ${ROOT%/}/dev/loop ]]; then
-		ewarn "Please make sure your remove /dev/loop,"
-		ewarn "else losetup may be confused when looking for unused devices."
-	fi
-
-	local fstab="${ROOT%/}"/etc/fstab dev path fstype rest
-	while read -r dev path fstype rest; do
-		if [[ ${path} == /dev && ${fstype} != devtmpfs ]]; then
-			ewarn "You need to edit your /dev line in ${fstab} to have devtmpfs"
-			ewarn "filesystem. Otherwise udev won't be able to boot."
-			ewarn "See, https://bugs.gentoo.org/453186"
-		fi
-	done < "${fstab}"
-
-	if [[ -d ${ROOT%/}/usr/lib/udev ]]; then
-		ewarn
-		ewarn "Please re-emerge all packages on your system which install"
-		ewarn "rules and helpers in /usr/lib/udev. They should now be in"
-		ewarn "/lib/udev."
-		ewarn
-		ewarn "One way to do this is to run the following command:"
-		ewarn "emerge -av1 \$(qfile -q -S -C /usr/lib/udev)"
-		ewarn "Note that qfile can be found in app-portage/portage-utils"
-	fi
-
-	local old_cd_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-cd.rules
-	local old_net_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-net.rules
-	for old_rules in "${old_cd_rules}" "${old_net_rules}"; do
-		if [[ -f ${old_rules} ]]; then
-			ewarn
-			ewarn "File ${old_rules} is from old udev installation but if you still use it,"
-			ewarn "rename it to something else starting with 70- to silence this deprecation"
-			ewarn "warning."
-		fi
-	done
-
-	elog
-	elog "Starting from version >= 197 the new predictable network interface names are"
-	elog "used by default, see:"
-	elog "http://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames"
-	elog "http://cgit.freedesktop.org/systemd/systemd/tree/src/udev/udev-builtin-net_id.c"
-	elog
-	elog "Example command to get the information for the new interface name before booting"
-	elog "(replace <ifname> with, for example, eth0):"
-	elog "# udevadm test-builtin net_id /sys/class/net/<ifname> 2> /dev/null"
-	elog
-	elog "You can use either kernel parameter \"net.ifnames=0\", create empty"
-	elog "file /etc/systemd/network/99-default.link, or symlink it to /dev/null"
-	elog "to disable the feature."
-
-	if has_version 'sys-apps/biosdevname'; then
-		ewarn
-		ewarn "You can replace the functionality of sys-apps/biosdevname which has been"
-		ewarn "detected to be installed with the new predictable network interface names."
-	fi
-
-	ewarn
-	ewarn "You need to restart udev as soon as possible to make the upgrade go"
-	ewarn "into effect."
-	ewarn "The method you use to do this depends on your init system."
-	if has_version 'sys-apps/openrc'; then
-		ewarn "For sys-apps/openrc users it is:"
-		ewarn "# /etc/init.d/udev --nodeps restart"
-	fi
-
-	elog
-	elog "For more information on udev on Gentoo, upgrading, writing udev rules, and"
-	elog "fixing known issues visit:"
-	elog "https://wiki.gentoo.org/wiki/Udev"
-	elog "https://wiki.gentoo.org/wiki/Udev/upgrade"
-
-	# If user has disabled 80-net-name-slot.rules using a empty file or a symlink to /dev/null,
-	# do the same for 80-net-setup-link.rules to keep the old behavior
-	local net_move=no
-	local net_name_slot_sym=no
-	local net_rules_path="${ROOT%/}"/etc/udev/rules.d
-	local net_name_slot="${net_rules_path}"/80-net-name-slot.rules
-	local net_setup_link="${net_rules_path}"/80-net-setup-link.rules
-	if [[ ! -e ${net_setup_link} ]]; then
-		[[ -f ${net_name_slot} && $(sed -e "/^#/d" -e "/^\W*$/d" ${net_name_slot} | wc -l) == 0 ]] && net_move=yes
-		if [[ -L ${net_name_slot} && $(readlink ${net_name_slot}) == /dev/null ]]; then
-			net_move=yes
-			net_name_slot_sym=yes
-		fi
-	fi
-	if [[ ${net_move} == yes ]]; then
-		ebegin "Copying ${net_name_slot} to ${net_setup_link}"
-
-		if [[ ${net_name_slot_sym} == yes ]]; then
-			ln -nfs /dev/null "${net_setup_link}"
-		else
-			cp "${net_name_slot}" "${net_setup_link}"
-		fi
-		eend $?
-	fi
-
-	# http://cgit.freedesktop.org/systemd/systemd/commit/rules/50-udev-default.rules?id=3dff3e00e044e2d53c76fa842b9a4759d4a50e69
-	# https://bugs.gentoo.org/246847
-	# https://bugs.gentoo.org/514174
-	enewgroup input
-
-	# Update hwdb database in case the format is changed by udev version.
-	if has_version 'sys-apps/hwids[udev]'; then
-		udevadm hwdb --update --root="${ROOT%/}"
-		# Only reload when we are not upgrading to avoid potential race w/ incompatible hwdb.bin and the running udevd
-		# http://cgit.freedesktop.org/systemd/systemd/commit/?id=1fab57c209035f7e66198343074e9cee06718bda
-		[[ -z ${REPLACING_VERSIONS} ]] && udev_reload
-	fi
-}

diff --git a/sys-fs/udev/udev-219.ebuild b/sys-fs/udev/udev-219.ebuild
deleted file mode 100644
index def594a..0000000
--- a/sys-fs/udev/udev-219.ebuild
+++ /dev/null
@@ -1,504 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-inherit autotools bash-completion-r1 eutils linux-info multilib multilib-minimal toolchain-funcs udev user versionator
-
-if [[ ${PV} = 9999* ]]; then
-	EGIT_REPO_URI="git://anongit.freedesktop.org/systemd/systemd"
-	inherit git-2
-	patchset=
-else
-	patchset=
-	SRC_URI="http://www.freedesktop.org/software/systemd/systemd-${PV}.tar.xz"
-	if [[ -n "${patchset}" ]]; then
-		SRC_URI+="
-			https://dev.gentoo.org/~ssuominen/${P}-patches-${patchset}.tar.xz
-			https://dev.gentoo.org/~williamh/dist/${P}-patches-${patchset}.tar.xz"
-	fi
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
-fi
-
-DESCRIPTION="Linux dynamic and persistent device naming support (aka userspace devfs)"
-HOMEPAGE="http://www.freedesktop.org/wiki/Software/systemd"
-
-LICENSE="LGPL-2.1 MIT GPL-2"
-SLOT="0"
-IUSE="acl doc gudev introspection +kmod selinux static-libs"
-
-RESTRICT="test"
-
-COMMON_DEPEND=">=sys-apps/util-linux-2.20
-	acl? ( sys-apps/acl )
-	gudev? ( >=dev-libs/glib-2.34.3[${MULTILIB_USEDEP}] )
-	introspection? ( >=dev-libs/gobject-introspection-1.38 )
-	kmod? ( >=sys-apps/kmod-16 )
-	selinux? ( >=sys-libs/libselinux-2.1.9 )
-	!<sys-libs/glibc-2.11
-	!sys-apps/gentoo-systemd-integration
-	!sys-apps/systemd
-	abi_x86_32? (
-		!<=app-emulation/emul-linux-x86-baselibs-20130224-r7
-		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
-	)"
-# Force new make >= -r4 to skip some parallel build issues
-DEPEND="${COMMON_DEPEND}
-	dev-util/gperf
-	>=sys-apps/coreutils-8.16
-	sys-libs/libcap
-	virtual/os-headers
-	virtual/pkgconfig
-	>=sys-devel/make-3.82-r4
-	>=sys-kernel/linux-headers-3.9
-	doc? ( >=dev-util/gtk-doc-1.18 )"
-# Try with `emerge -C docbook-xml-dtd` to see the build failure without DTDs
-if [[ ${PV} = 9999* ]]; then
-	DEPEND="${DEPEND}
-		app-text/docbook-xml-dtd:4.2
-		app-text/docbook-xml-dtd:4.5
-		app-text/docbook-xsl-stylesheets
-		dev-libs/libxslt"
-fi
-RDEPEND="${COMMON_DEPEND}
-	!<sys-fs/lvm2-2.02.103
-	!<sec-policy/selinux-base-2.20120725-r10
-	gudev? ( !dev-libs/libgudev )"
-PDEPEND=">=sys-apps/hwids-20140304[udev]
-	>=sys-fs/udev-init-scripts-26"
-
-S=${WORKDIR}/systemd-${PV}
-
-# The multilib-build.eclass doesn't handle situation where the installed headers
-# are different in ABIs. In this case, we install libgudev headers in native
-# ABI but not for non-native ABI.
-multilib_check_headers() { :; }
-
-check_default_rules() {
-	# Make sure there are no sudden changes to upstream rules file
-	# (more for my own needs than anything else ...)
-	local udev_rules_md5=c18b74c4f8bf4a397ee667ee419f3a8e
-	MD5=$(md5sum < "${S}"/rules/50-udev-default.rules)
-	MD5=${MD5/  -/}
-	if [[ ${MD5} != ${udev_rules_md5} ]]; then
-		eerror "50-udev-default.rules has been updated, please validate!"
-		eerror "md5sum: ${MD5}"
-		die "50-udev-default.rules has been updated, please validate!"
-	fi
-}
-
-pkg_setup() {
-	if [[ ${MERGE_TYPE} != buildonly ]]; then
-		CONFIG_CHECK="~BLK_DEV_BSG ~DEVTMPFS ~!IDE ~INOTIFY_USER ~!SYSFS_DEPRECATED ~!SYSFS_DEPRECATED_V2 ~SIGNALFD ~EPOLL ~FHANDLE ~NET ~!FW_LOADER_USER_HELPER"
-		linux-info_pkg_setup
-
-		# CONFIG_FHANDLE was introduced by 2.6.39
-		local MINKV=2.6.39
-
-		if kernel_is -lt ${MINKV//./ }; then
-			eerror "Your running kernel is too old to run this version of ${P}"
-			eerror "You need to upgrade kernel at least to ${MINKV}"
-		fi
-
-		if kernel_is -lt 3 7; then
-			ewarn "Your running kernel is too old to have firmware loader and"
-			ewarn "this version of ${P} doesn't have userspace firmware loader"
-			ewarn "If you need firmware support, you need to upgrade kernel at least to 3.7"
-		fi
-	fi
-}
-
-src_prepare() {
-	if ! [[ ${PV} = 9999* ]]; then
-		# secure_getenv() disable for non-glibc systems wrt bug #443030
-		if ! [[ $(grep -r secure_getenv * | wc -l) -eq 27 ]]; then
-			eerror "The line count for secure_getenv() failed, see bug #443030"
-			die
-		fi
-	fi
-
-	# backport some patches
-	if [[ -n "${patchset}" ]]; then
-		EPATCH_SUFFIX=patch EPATCH_FORCE=yes epatch
-	fi
-
-	cat <<-EOF > "${T}"/40-gentoo.rules
-	# Gentoo specific floppy and usb groups
-	SUBSYSTEM=="block", KERNEL=="fd[0-9]", GROUP="floppy"
-	SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GROUP="usb"
-	EOF
-
-	# change rules back to group uucp instead of dialout for now wrt #454556
-	sed -i -e 's/GROUP="dialout"/GROUP="uucp"/' rules/*.rules || die
-
-	# apply user patches
-	epatch_user
-
-	if [[ ! -e configure ]]; then
-		if use doc; then
-			gtkdocize --docdir docs || die "gtkdocize failed"
-		else
-			echo 'EXTRA_DIST =' > docs/gtk-doc.make
-		fi
-		eautoreconf
-	else
-		check_default_rules
-		elibtoolize
-	fi
-
-	# Restore possibility of running --enable-static wrt #472608
-	sed -i \
-		-e '/--enable-static is not supported by systemd/s:as_fn_error:echo:' \
-		configure || die
-
-	if ! use elibc_glibc; then #443030
-		echo '#define secure_getenv(x) NULL' >> config.h.in
-		sed -i -e '/error.*secure_getenv/s:.*:#define secure_getenv(x) NULL:' src/shared/missing.h || die
-	fi
-}
-
-multilib_src_configure() {
-	tc-export CC #463846
-	export cc_cv_CFLAGS__flto=no #502950
-
-	# Keep sorted by ./configure --help and only pass --disable flags
-	# when *required* to avoid external deps or unnecessary compile
-	local econf_args
-	econf_args=(
-		ac_cv_search_cap_init=
-		--libdir=/usr/$(get_libdir)
-		--docdir=/usr/share/doc/${PF}
-		$(multilib_native_use_enable static-libs static)
-		--disable-nls
-		$(multilib_native_use_enable doc gtk-doc)
-		$(multilib_native_use_enable introspection)
-		--disable-python-devel
-		--disable-dbus
-		$(multilib_native_use_enable kmod)
-		--disable-xkbcommon
-		--disable-seccomp
-		$(multilib_native_use_enable selinux)
-		--disable-xz
-		--disable-lz4
-		--disable-pam
-		$(multilib_native_use_enable acl)
-		--disable-gcrypt
-		--disable-audit
-		--disable-libcryptsetup
-		--disable-qrencode
-		--disable-microhttpd
-		--disable-gnutls
-		--disable-libcurl
-		--disable-libidn
-		--disable-quotacheck
-		--disable-logind
-		--disable-polkit
-		--disable-terminal
-		--disable-myhostname
-		$(use_enable gudev)
-		$(multilib_is_native_abi || echo "--disable-manpages")
-		--enable-split-usr
-		--with-html-dir=/usr/share/doc/${PF}/html
-		--without-python
-		--with-bashcompletiondir="$(get_bashcompdir)"
-		--with-rootprefix=
-		$(multilib_is_native_abi && echo "--with-rootlibdir=/$(get_libdir)")
-	)
-
-	if ! multilib_is_native_abi; then
-		econf_args+=(
-			MOUNT_{CFLAGS,LIBS}=' '
-		)
-	fi
-
-	# Use pregenerated copies when possible wrt #480924
-	[[ ${PV} = 9999* ]] || econf_args+=( --disable-manpages )
-
-	ECONF_SOURCE=${S} econf "${econf_args[@]}"
-}
-
-multilib_src_compile() {
-	echo 'BUILT_SOURCES: $(BUILT_SOURCES)' > "${T}"/Makefile.extra
-	emake -f Makefile -f "${T}"/Makefile.extra BUILT_SOURCES
-
-	# Most of the parallel build problems were solved by >=sys-devel/make-3.82-r4,
-	# but not everything -- separate building of the binaries as a workaround,
-	# which will force internal libraries required for the helpers to be built
-	# early enough, like eg. libsystemd-shared.la
-	if multilib_is_native_abi; then
-		local lib_targets=( libudev.la )
-		use gudev && lib_targets+=( libgudev-1.0.la )
-		emake "${lib_targets[@]}"
-
-		local exec_targets=(
-			systemd-udevd
-			udevadm
-		)
-		emake "${exec_targets[@]}"
-
-		local helper_targets=(
-			ata_id
-			cdrom_id
-			collect
-			scsi_id
-			v4l_id
-			accelerometer
-			mtd_probe
-		)
-		emake "${helper_targets[@]}"
-
-		if [[ ${PV} = 9999* ]]; then
-			local man_targets=(
-				man/udev.conf.5
-				man/systemd.link.5
-				man/udev.7
-				man/systemd-udevd.service.8
-				man/udevadm.8
-			)
-			emake "${man_targets[@]}"
-		fi
-
-		if use doc; then
-			emake -C docs/libudev
-			use gudev && emake -C docs/gudev
-		fi
-	else
-		local lib_targets=( libudev.la )
-		use gudev && lib_targets+=( libgudev-1.0.la )
-		emake "${lib_targets[@]}"
-	fi
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		local lib_LTLIBRARIES="libudev.la" \
-			pkgconfiglib_DATA="src/libudev/libudev.pc"
-
-		local targets=(
-			install-libLTLIBRARIES
-			install-includeHEADERS
-			install-libgudev_includeHEADERS
-			install-rootbinPROGRAMS
-			install-rootlibexecPROGRAMS
-			install-udevlibexecPROGRAMS
-			install-dist_udevconfDATA
-			install-dist_udevrulesDATA
-			install-girDATA
-			install-pkgconfiglibDATA
-			install-sharepkgconfigDATA
-			install-typelibsDATA
-			install-dist_docDATA
-			libudev-install-hook
-			install-directories-hook
-			install-dist_bashcompletionDATA
-			install-dist_networkDATA
-		)
-
-		if use gudev; then
-			lib_LTLIBRARIES+=" libgudev-1.0.la"
-			pkgconfiglib_DATA+=" src/gudev/gudev-1.0.pc"
-		fi
-
-		# add final values of variables:
-		targets+=(
-			rootlibexec_PROGRAMS=systemd-udevd
-			rootbin_PROGRAMS=udevadm
-			lib_LTLIBRARIES="${lib_LTLIBRARIES}"
-			pkgconfiglib_DATA="${pkgconfiglib_DATA}"
-			INSTALL_DIRS='$(sysconfdir)/udev/rules.d \
-					$(sysconfdir)/udev/hwdb.d \
-					$(sysconfdir)/systemd/network'
-			dist_bashcompletion_DATA="shell-completion/bash/udevadm"
-			dist_network_DATA="network/99-default.link"
-		)
-		emake -j1 DESTDIR="${D}" "${targets[@]}"
-
-		if use doc; then
-			emake -C docs/libudev DESTDIR="${D}" install
-			use gudev && emake -C docs/gudev DESTDIR="${D}" install
-		fi
-
-		if [[ ${PV} = 9999* ]]; then
-			doman man/{udev.conf.5,systemd.link.5,udev.7,systemd-udevd.service.8,udevadm.8}
-		else
-			doman "${S}"/man/{udev.conf.5,systemd.link.5,udev.7,systemd-udevd.service.8,udevadm.8}
-		fi
-	else
-		local lib_LTLIBRARIES="libudev.la" \
-			pkgconfiglib_DATA="src/libudev/libudev.pc" \
-			include_HEADERS="src/libudev/libudev.h"
-
-		local targets=(
-			install-libLTLIBRARIES
-			install-includeHEADERS
-			install-pkgconfiglibDATA
-		)
-
-		if use gudev; then
-			lib_LTLIBRARIES+=" libgudev-1.0.la"
-			pkgconfiglib_DATA+=" src/gudev/gudev-1.0.pc"
-		fi
-
-		targets+=(
-			lib_LTLIBRARIES="${lib_LTLIBRARIES}"
-			pkgconfiglib_DATA="${pkgconfiglib_DATA}"
-			include_HEADERS="${include_HEADERS}"
-			)
-		emake -j1 DESTDIR="${D}" "${targets[@]}"
-	fi
-}
-
-multilib_src_install_all() {
-	dodoc TODO
-
-	prune_libtool_files --all
-	rm -f \
-		"${D}"/lib/udev/rules.d/99-systemd.rules \
-		"${D}"/usr/share/doc/${PF}/{LICENSE.*,GVARIANT-SERIALIZATION,DIFFERENCES,PORTING-DBUS1,sd-shutdown.h}
-
-	# see src_prepare() for content of 40-gentoo.rules
-	insinto /lib/udev/rules.d
-	doins "${T}"/40-gentoo.rules
-
-	# maintainer note: by not letting the upstream build-sys create the .so
-	# link, you also avoid a parallel make problem
-	mv "${D}"/usr/share/man/man8/systemd-udevd{.service,}.8
-
-	if ! [[ ${PV} = 9999* ]]; then
-		insinto /usr/share/doc/${PF}/html/gudev
-		doins "${S}"/docs/gudev/html/*
-
-		insinto /usr/share/doc/${PF}/html/libudev
-		doins "${S}"/docs/libudev/html/*
-	fi
-}
-
-pkg_preinst() {
-	local htmldir
-	for htmldir in gudev libudev; do
-		if [[ -d ${ROOT%/}/usr/share/gtk-doc/html/${htmldir} ]]; then
-			rm -rf "${ROOT%/}"/usr/share/gtk-doc/html/${htmldir}
-		fi
-		if [[ -d ${D}/usr/share/doc/${PF}/html/${htmldir} ]]; then
-			dosym ../../doc/${PF}/html/${htmldir} \
-				/usr/share/gtk-doc/html/${htmldir}
-		fi
-	done
-}
-
-pkg_postinst() {
-	mkdir -p "${ROOT%/}"/run
-
-	# "losetup -f" is confused if there is an empty /dev/loop/, Bug #338766
-	# So try to remove it here (will only work if empty).
-	rmdir "${ROOT%/}"/dev/loop 2>/dev/null
-	if [[ -d ${ROOT%/}/dev/loop ]]; then
-		ewarn "Please make sure your remove /dev/loop,"
-		ewarn "else losetup may be confused when looking for unused devices."
-	fi
-
-	local fstab="${ROOT%/}"/etc/fstab dev path fstype rest
-	while read -r dev path fstype rest; do
-		if [[ ${path} == /dev && ${fstype} != devtmpfs ]]; then
-			ewarn "You need to edit your /dev line in ${fstab} to have devtmpfs"
-			ewarn "filesystem. Otherwise udev won't be able to boot."
-			ewarn "See, https://bugs.gentoo.org/453186"
-		fi
-	done < "${fstab}"
-
-	if [[ -d ${ROOT%/}/usr/lib/udev ]]; then
-		ewarn
-		ewarn "Please re-emerge all packages on your system which install"
-		ewarn "rules and helpers in /usr/lib/udev. They should now be in"
-		ewarn "/lib/udev."
-		ewarn
-		ewarn "One way to do this is to run the following command:"
-		ewarn "emerge -av1 \$(qfile -q -S -C /usr/lib/udev)"
-		ewarn "Note that qfile can be found in app-portage/portage-utils"
-	fi
-
-	local old_cd_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-cd.rules
-	local old_net_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-net.rules
-	for old_rules in "${old_cd_rules}" "${old_net_rules}"; do
-		if [[ -f ${old_rules} ]]; then
-			ewarn
-			ewarn "File ${old_rules} is from old udev installation but if you still use it,"
-			ewarn "rename it to something else starting with 70- to silence this deprecation"
-			ewarn "warning."
-		fi
-	done
-
-	elog
-	elog "Starting from version >= 197 the new predictable network interface names are"
-	elog "used by default, see:"
-	elog "http://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames"
-	elog "http://cgit.freedesktop.org/systemd/systemd/tree/src/udev/udev-builtin-net_id.c"
-	elog
-	elog "Example command to get the information for the new interface name before booting"
-	elog "(replace <ifname> with, for example, eth0):"
-	elog "# udevadm test-builtin net_id /sys/class/net/<ifname> 2> /dev/null"
-	elog
-	elog "You can use either kernel parameter \"net.ifnames=0\", create empty"
-	elog "file /etc/systemd/network/99-default.link, or symlink it to /dev/null"
-	elog "to disable the feature."
-
-	if has_version 'sys-apps/biosdevname'; then
-		ewarn
-		ewarn "You can replace the functionality of sys-apps/biosdevname which has been"
-		ewarn "detected to be installed with the new predictable network interface names."
-	fi
-
-	ewarn
-	ewarn "You need to restart udev as soon as possible to make the upgrade go"
-	ewarn "into effect."
-	ewarn "The method you use to do this depends on your init system."
-	if has_version 'sys-apps/openrc'; then
-		ewarn "For sys-apps/openrc users it is:"
-		ewarn "# /etc/init.d/udev --nodeps restart"
-	fi
-
-	elog
-	elog "For more information on udev on Gentoo, upgrading, writing udev rules, and"
-	elog "fixing known issues visit:"
-	elog "https://wiki.gentoo.org/wiki/Udev"
-	elog "https://wiki.gentoo.org/wiki/Udev/upgrade"
-
-	# If user has disabled 80-net-name-slot.rules using a empty file or a symlink to /dev/null,
-	# do the same for 80-net-setup-link.rules to keep the old behavior
-	local net_move=no
-	local net_name_slot_sym=no
-	local net_rules_path="${ROOT%/}"/etc/udev/rules.d
-	local net_name_slot="${net_rules_path}"/80-net-name-slot.rules
-	local net_setup_link="${net_rules_path}"/80-net-setup-link.rules
-	if [[ ! -e ${net_setup_link} ]]; then
-		[[ -f ${net_name_slot} && $(sed -e "/^#/d" -e "/^\W*$/d" ${net_name_slot} | wc -l) == 0 ]] && net_move=yes
-		if [[ -L ${net_name_slot} && $(readlink ${net_name_slot}) == /dev/null ]]; then
-			net_move=yes
-			net_name_slot_sym=yes
-		fi
-	fi
-	if [[ ${net_move} == yes ]]; then
-		ebegin "Copying ${net_name_slot} to ${net_setup_link}"
-
-		if [[ ${net_name_slot_sym} == yes ]]; then
-			ln -nfs /dev/null "${net_setup_link}"
-		else
-			cp "${net_name_slot}" "${net_setup_link}"
-		fi
-		eend $?
-	fi
-
-	# http://cgit.freedesktop.org/systemd/systemd/commit/rules/50-udev-default.rules?id=3dff3e00e044e2d53c76fa842b9a4759d4a50e69
-	# https://bugs.gentoo.org/246847
-	# https://bugs.gentoo.org/514174
-	enewgroup input
-
-	# Update hwdb database in case the format is changed by udev version.
-	if has_version 'sys-apps/hwids[udev]'; then
-		udevadm hwdb --update --root="${ROOT%/}"
-		# Only reload when we are not upgrading to avoid potential race w/ incompatible hwdb.bin and the running udevd
-		# http://cgit.freedesktop.org/systemd/systemd/commit/?id=1fab57c209035f7e66198343074e9cee06718bda
-		[[ -z ${REPLACING_VERSIONS} ]] && udev_reload
-	fi
-}

diff --git a/sys-fs/udev/udev-220-r3.ebuild b/sys-fs/udev/udev-220-r3.ebuild
deleted file mode 100644
index e311f19..0000000
--- a/sys-fs/udev/udev-220-r3.ebuild
+++ /dev/null
@@ -1,507 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-inherit autotools bash-completion-r1 eutils linux-info multilib multilib-minimal toolchain-funcs udev user versionator
-
-if [[ ${PV} = 9999* ]]; then
-	EGIT_REPO_URI="git://anongit.freedesktop.org/systemd/systemd"
-	inherit git-2
-	patchset=
-else
-	patchset=4
-	SRC_URI="http://www.freedesktop.org/software/systemd/systemd-${PV}.tar.xz"
-	if [[ -n "${patchset}" ]]; then
-		SRC_URI+="
-			https://dev.gentoo.org/~ssuominen/${P}-patches-${patchset}.tar.xz
-			https://dev.gentoo.org/~williamh/dist/${P}-patches-${patchset}.tar.xz"
-	fi
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
-fi
-
-DESCRIPTION="Linux dynamic and persistent device naming support (aka userspace devfs)"
-HOMEPAGE="http://www.freedesktop.org/wiki/Software/systemd"
-
-LICENSE="LGPL-2.1 MIT GPL-2"
-SLOT="0"
-IUSE="acl doc gudev introspection +kmod selinux static-libs"
-
-RESTRICT="test"
-
-COMMON_DEPEND=">=sys-apps/util-linux-2.20
-	acl? ( sys-apps/acl )
-	gudev? ( >=dev-libs/glib-2.34.3[${MULTILIB_USEDEP}] )
-	introspection? ( >=dev-libs/gobject-introspection-1.38 )
-	kmod? ( >=sys-apps/kmod-16 )
-	selinux? ( >=sys-libs/libselinux-2.1.9 )
-	!<sys-libs/glibc-2.11
-	!sys-apps/gentoo-systemd-integration
-	!sys-apps/systemd
-	abi_x86_32? (
-		!<=app-emulation/emul-linux-x86-baselibs-20130224-r7
-		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
-	)"
-# Force new make >= -r4 to skip some parallel build issues
-DEPEND="${COMMON_DEPEND}
-	dev-util/gperf
-	>=sys-apps/coreutils-8.16
-	sys-libs/libcap
-	virtual/os-headers
-	virtual/pkgconfig
-	>=sys-devel/make-3.82-r4
-	>=sys-kernel/linux-headers-3.9
-	doc? ( >=dev-util/gtk-doc-1.18 )"
-# Try with `emerge -C docbook-xml-dtd` to see the build failure without DTDs
-if [[ ${PV} = 9999* ]]; then
-	DEPEND="${DEPEND}
-		app-text/docbook-xml-dtd:4.2
-		app-text/docbook-xml-dtd:4.5
-		app-text/docbook-xsl-stylesheets
-		dev-libs/libxslt"
-fi
-RDEPEND="${COMMON_DEPEND}
-	!<sys-fs/lvm2-2.02.103
-	!<sec-policy/selinux-base-2.20120725-r10
-	gudev? ( !dev-libs/libgudev )"
-PDEPEND=">=sys-apps/hwids-20140304[udev]
-	>=sys-fs/udev-init-scripts-26"
-
-S=${WORKDIR}/systemd-${PV}
-
-# The multilib-build.eclass doesn't handle situation where the installed headers
-# are different in ABIs. In this case, we install libgudev headers in native
-# ABI but not for non-native ABI.
-multilib_check_headers() { :; }
-
-check_default_rules() {
-	# Make sure there are no sudden changes to upstream rules file
-	# (more for my own needs than anything else ...)
-	local udev_rules_md5=b8ad860dccae0ca51656b33c405ea2ca
-	MD5=$(md5sum < "${S}"/rules/50-udev-default.rules)
-	MD5=${MD5/  -/}
-	if [[ ${MD5} != ${udev_rules_md5} ]]; then
-		eerror "50-udev-default.rules has been updated, please validate!"
-		eerror "md5sum: ${MD5}"
-		die "50-udev-default.rules has been updated, please validate!"
-	fi
-}
-
-pkg_setup() {
-	if [[ ${MERGE_TYPE} != buildonly ]]; then
-		CONFIG_CHECK="~BLK_DEV_BSG ~DEVTMPFS ~!IDE ~INOTIFY_USER ~!SYSFS_DEPRECATED ~!SYSFS_DEPRECATED_V2 ~SIGNALFD ~EPOLL ~FHANDLE ~NET ~!FW_LOADER_USER_HELPER"
-		linux-info_pkg_setup
-
-		# CONFIG_FHANDLE was introduced by 2.6.39
-		local MINKV=2.6.39
-
-		if kernel_is -lt ${MINKV//./ }; then
-			eerror "Your running kernel is too old to run this version of ${P}"
-			eerror "You need to upgrade kernel at least to ${MINKV}"
-		fi
-
-		if kernel_is -lt 3 7; then
-			ewarn "Your running kernel is too old to have firmware loader and"
-			ewarn "this version of ${P} doesn't have userspace firmware loader"
-			ewarn "If you need firmware support, you need to upgrade kernel at least to 3.7"
-		fi
-	fi
-}
-
-src_prepare() {
-	if ! [[ ${PV} = 9999* ]]; then
-		# secure_getenv() disable for non-glibc systems wrt bug #443030
-		if ! [[ $(grep -r secure_getenv * | wc -l) -eq 28 ]]; then
-			eerror "The line count for secure_getenv() failed, see bug #443030"
-			die
-		fi
-	fi
-
-	# backport some patches
-	if [[ -n "${patchset}" ]]; then
-		EPATCH_SUFFIX=patch EPATCH_FORCE=yes epatch
-	fi
-
-	cat <<-EOF > "${T}"/40-gentoo.rules
-	# Gentoo specific floppy and usb groups
-	SUBSYSTEM=="block", KERNEL=="fd[0-9]", GROUP="floppy"
-	SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GROUP="usb"
-	EOF
-
-	# change rules back to group uucp instead of dialout for now wrt #454556
-	sed -i -e 's/GROUP="dialout"/GROUP="uucp"/' rules/*.rules || die
-
-	# apply user patches
-	epatch_user
-
-	if [[ ! -e configure ]]; then
-		if use doc; then
-			gtkdocize --docdir docs || die "gtkdocize failed"
-		else
-			echo 'EXTRA_DIST =' > docs/gtk-doc.make
-		fi
-		eautoreconf
-	else
-		check_default_rules
-		elibtoolize
-	fi
-
-	# Restore possibility of running --enable-static wrt #472608
-	sed -i \
-		-e '/--enable-static is not supported by systemd/s:as_fn_error:echo:' \
-		configure || die
-
-	if ! use elibc_glibc; then #443030
-		echo '#define secure_getenv(x) NULL' >> config.h.in
-		sed -i -e '/error.*secure_getenv/s:.*:#define secure_getenv(x) NULL:' src/shared/missing.h || die
-	fi
-	rm src/journal/audit_type-to-name.h src/udev/keyboard-keys-from-name.gperf \
-		|| die
-}
-
-multilib_src_configure() {
-	tc-export CC #463846
-	export cc_cv_CFLAGS__flto=no #502950
-
-	# Keep sorted by ./configure --help and only pass --disable flags
-	# when *required* to avoid external deps or unnecessary compile
-	local econf_args
-	econf_args=(
-		ac_cv_search_cap_init=
-		--libdir=/usr/$(get_libdir)
-		--docdir=/usr/share/doc/${PF}
-		$(multilib_native_use_enable static-libs static)
-		--disable-nls
-		$(multilib_native_use_enable doc gtk-doc)
-		$(multilib_native_use_enable introspection)
-		--disable-python-devel
-		--disable-dbus
-		$(multilib_native_use_enable kmod)
-		--disable-xkbcommon
-		--disable-seccomp
-		$(multilib_native_use_enable selinux)
-		--disable-xz
-		--disable-lz4
-		--disable-pam
-		$(multilib_native_use_enable acl)
-		--disable-gcrypt
-		--disable-audit
-		--disable-libcryptsetup
-		--disable-qrencode
-		--disable-microhttpd
-		--disable-gnutls
-		--disable-libcurl
-		--disable-libidn
-		--disable-quotacheck
-		--disable-logind
-		--disable-polkit
-		--disable-terminal
-		--disable-myhostname
-		$(use_enable gudev)
-		$(multilib_is_native_abi || echo "--disable-manpages")
-		--enable-split-usr
-		--with-html-dir=/usr/share/doc/${PF}/html
-		--without-python
-		--with-bashcompletiondir="$(get_bashcompdir)"
-		--with-rootprefix=
-		$(multilib_is_native_abi && echo "--with-rootlibdir=/$(get_libdir)")
-	)
-
-	if ! multilib_is_native_abi; then
-		econf_args+=(
-			MOUNT_{CFLAGS,LIBS}=' '
-		)
-	fi
-
-	# Use pregenerated copies when possible wrt #480924
-	[[ ${PV} = 9999* ]] || econf_args+=( --disable-manpages )
-
-	ECONF_SOURCE=${S} econf "${econf_args[@]}"
-}
-
-multilib_src_compile() {
-	echo 'BUILT_SOURCES: $(BUILT_SOURCES)' > "${T}"/Makefile.extra
-	emake -f Makefile -f "${T}"/Makefile.extra BUILT_SOURCES
-
-	# Most of the parallel build problems were solved by >=sys-devel/make-3.82-r4,
-	# but not everything -- separate building of the binaries as a workaround,
-	# which will force internal libraries required for the helpers to be built
-	# early enough, like eg. libsystemd-shared.la
-	if multilib_is_native_abi; then
-		local lib_targets=( libudev.la )
-		use gudev && lib_targets+=( libgudev-1.0.la )
-		emake "${lib_targets[@]}"
-
-		local exec_targets=(
-			systemd-udevd
-			udevadm
-		)
-		emake "${exec_targets[@]}"
-
-		local helper_targets=(
-			ata_id
-			cdrom_id
-			collect
-			scsi_id
-			v4l_id
-			accelerometer
-			mtd_probe
-		)
-		emake "${helper_targets[@]}"
-
-		if [[ ${PV} = 9999* ]]; then
-			local man_targets=(
-				man/udev.conf.5
-				man/systemd.link.5
-				man/udev.7
-				man/systemd-udevd.service.8
-				man/udevadm.8
-			)
-			emake "${man_targets[@]}"
-		fi
-
-		if use doc; then
-			emake -C docs/libudev
-			use gudev && emake -C docs/gudev
-		fi
-	else
-		local lib_targets=( libudev.la )
-		use gudev && lib_targets+=( libgudev-1.0.la )
-		emake "${lib_targets[@]}"
-	fi
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		local lib_LTLIBRARIES="libudev.la" \
-			pkgconfiglib_DATA="src/libudev/libudev.pc"
-
-		local targets=(
-			install-libLTLIBRARIES
-			install-includeHEADERS
-			install-libgudev_includeHEADERS
-			install-rootbinPROGRAMS
-			install-rootlibexecPROGRAMS
-			install-udevlibexecPROGRAMS
-			install-dist_udevconfDATA
-			install-dist_udevrulesDATA
-			install-girDATA
-			install-pkgconfiglibDATA
-			install-pkgconfigdataDATA
-			install-typelibsDATA
-			install-dist_docDATA
-			libudev-install-hook
-			install-directories-hook
-			install-dist_bashcompletionDATA
-			install-dist_networkDATA
-		)
-
-		if use gudev; then
-			lib_LTLIBRARIES+=" libgudev-1.0.la"
-			pkgconfiglib_DATA+=" src/gudev/gudev-1.0.pc"
-		fi
-
-		# add final values of variables:
-		targets+=(
-			rootlibexec_PROGRAMS=systemd-udevd
-			rootbin_PROGRAMS=udevadm
-			lib_LTLIBRARIES="${lib_LTLIBRARIES}"
-			pkgconfiglib_DATA="${pkgconfiglib_DATA}"
-			pkgconfigdata_DATA="src/udev/udev.pc"
-			INSTALL_DIRS='$(sysconfdir)/udev/rules.d \
-					$(sysconfdir)/udev/hwdb.d \
-					$(sysconfdir)/systemd/network'
-			dist_bashcompletion_DATA="shell-completion/bash/udevadm"
-			dist_network_DATA="network/99-default.link"
-		)
-		emake -j1 DESTDIR="${D}" "${targets[@]}"
-
-		if use doc; then
-			emake -C docs/libudev DESTDIR="${D}" install
-			use gudev && emake -C docs/gudev DESTDIR="${D}" install
-		fi
-
-		if [[ ${PV} = 9999* ]]; then
-			doman man/{udev.conf.5,systemd.link.5,udev.7,systemd-udevd.service.8,udevadm.8}
-		else
-			doman "${S}"/man/{udev.conf.5,systemd.link.5,udev.7,systemd-udevd.service.8,udevadm.8}
-		fi
-	else
-		local lib_LTLIBRARIES="libudev.la" \
-			pkgconfiglib_DATA="src/libudev/libudev.pc" \
-			include_HEADERS="src/libudev/libudev.h"
-
-		local targets=(
-			install-libLTLIBRARIES
-			install-includeHEADERS
-			install-pkgconfiglibDATA
-		)
-
-		if use gudev; then
-			lib_LTLIBRARIES+=" libgudev-1.0.la"
-			pkgconfiglib_DATA+=" src/gudev/gudev-1.0.pc"
-		fi
-
-		targets+=(
-			lib_LTLIBRARIES="${lib_LTLIBRARIES}"
-			pkgconfiglib_DATA="${pkgconfiglib_DATA}"
-			include_HEADERS="${include_HEADERS}"
-			)
-		emake -j1 DESTDIR="${D}" "${targets[@]}"
-	fi
-}
-
-multilib_src_install_all() {
-	dodoc TODO
-
-	prune_libtool_files --all
-	rm -f \
-		"${D}"/lib/udev/rules.d/99-systemd.rules \
-		"${D}"/usr/share/doc/${PF}/{LICENSE.*,GVARIANT-SERIALIZATION,DIFFERENCES,PORTING-DBUS1,sd-shutdown.h}
-
-	# see src_prepare() for content of 40-gentoo.rules
-	insinto /lib/udev/rules.d
-	doins "${T}"/40-gentoo.rules
-
-	# maintainer note: by not letting the upstream build-sys create the .so
-	# link, you also avoid a parallel make problem
-	mv "${D}"/usr/share/man/man8/systemd-udevd{.service,}.8
-
-	if ! [[ ${PV} = 9999* ]]; then
-		insinto /usr/share/doc/${PF}/html/gudev
-		doins "${S}"/docs/gudev/html/*
-
-		insinto /usr/share/doc/${PF}/html/libudev
-		doins "${S}"/docs/libudev/html/*
-	fi
-}
-
-pkg_preinst() {
-	local htmldir
-	for htmldir in gudev libudev; do
-		if [[ -d ${ROOT%/}/usr/share/gtk-doc/html/${htmldir} ]]; then
-			rm -rf "${ROOT%/}"/usr/share/gtk-doc/html/${htmldir}
-		fi
-		if [[ -d ${D}/usr/share/doc/${PF}/html/${htmldir} ]]; then
-			dosym ../../doc/${PF}/html/${htmldir} \
-				/usr/share/gtk-doc/html/${htmldir}
-		fi
-	done
-}
-
-pkg_postinst() {
-	mkdir -p "${ROOT%/}"/run
-
-	# "losetup -f" is confused if there is an empty /dev/loop/, Bug #338766
-	# So try to remove it here (will only work if empty).
-	rmdir "${ROOT%/}"/dev/loop 2>/dev/null
-	if [[ -d ${ROOT%/}/dev/loop ]]; then
-		ewarn "Please make sure your remove /dev/loop,"
-		ewarn "else losetup may be confused when looking for unused devices."
-	fi
-
-	local fstab="${ROOT%/}"/etc/fstab dev path fstype rest
-	while read -r dev path fstype rest; do
-		if [[ ${path} == /dev && ${fstype} != devtmpfs ]]; then
-			ewarn "You need to edit your /dev line in ${fstab} to have devtmpfs"
-			ewarn "filesystem. Otherwise udev won't be able to boot."
-			ewarn "See, https://bugs.gentoo.org/453186"
-		fi
-	done < "${fstab}"
-
-	if [[ -d ${ROOT%/}/usr/lib/udev ]]; then
-		ewarn
-		ewarn "Please re-emerge all packages on your system which install"
-		ewarn "rules and helpers in /usr/lib/udev. They should now be in"
-		ewarn "/lib/udev."
-		ewarn
-		ewarn "One way to do this is to run the following command:"
-		ewarn "emerge -av1 \$(qfile -q -S -C /usr/lib/udev)"
-		ewarn "Note that qfile can be found in app-portage/portage-utils"
-	fi
-
-	local old_cd_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-cd.rules
-	local old_net_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-net.rules
-	for old_rules in "${old_cd_rules}" "${old_net_rules}"; do
-		if [[ -f ${old_rules} ]]; then
-			ewarn
-			ewarn "File ${old_rules} is from old udev installation but if you still use it,"
-			ewarn "rename it to something else starting with 70- to silence this deprecation"
-			ewarn "warning."
-		fi
-	done
-
-	elog
-	elog "Starting from version >= 197 the new predictable network interface names are"
-	elog "used by default, see:"
-	elog "http://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames"
-	elog "http://cgit.freedesktop.org/systemd/systemd/tree/src/udev/udev-builtin-net_id.c"
-	elog
-	elog "Example command to get the information for the new interface name before booting"
-	elog "(replace <ifname> with, for example, eth0):"
-	elog "# udevadm test-builtin net_id /sys/class/net/<ifname> 2> /dev/null"
-	elog
-	elog "You can use either kernel parameter \"net.ifnames=0\", create empty"
-	elog "file /etc/systemd/network/99-default.link, or symlink it to /dev/null"
-	elog "to disable the feature."
-
-	if has_version 'sys-apps/biosdevname'; then
-		ewarn
-		ewarn "You can replace the functionality of sys-apps/biosdevname which has been"
-		ewarn "detected to be installed with the new predictable network interface names."
-	fi
-
-	ewarn
-	ewarn "You need to restart udev as soon as possible to make the upgrade go"
-	ewarn "into effect."
-	ewarn "The method you use to do this depends on your init system."
-	if has_version 'sys-apps/openrc'; then
-		ewarn "For sys-apps/openrc users it is:"
-		ewarn "# /etc/init.d/udev --nodeps restart"
-	fi
-
-	elog
-	elog "For more information on udev on Gentoo, upgrading, writing udev rules, and"
-	elog "fixing known issues visit:"
-	elog "https://wiki.gentoo.org/wiki/Udev"
-	elog "https://wiki.gentoo.org/wiki/Udev/upgrade"
-
-	# If user has disabled 80-net-name-slot.rules using a empty file or a symlink to /dev/null,
-	# do the same for 80-net-setup-link.rules to keep the old behavior
-	local net_move=no
-	local net_name_slot_sym=no
-	local net_rules_path="${ROOT%/}"/etc/udev/rules.d
-	local net_name_slot="${net_rules_path}"/80-net-name-slot.rules
-	local net_setup_link="${net_rules_path}"/80-net-setup-link.rules
-	if [[ ! -e ${net_setup_link} ]]; then
-		[[ -f ${net_name_slot} && $(sed -e "/^#/d" -e "/^\W*$/d" ${net_name_slot} | wc -l) == 0 ]] && net_move=yes
-		if [[ -L ${net_name_slot} && $(readlink ${net_name_slot}) == /dev/null ]]; then
-			net_move=yes
-			net_name_slot_sym=yes
-		fi
-	fi
-	if [[ ${net_move} == yes ]]; then
-		ebegin "Copying ${net_name_slot} to ${net_setup_link}"
-
-		if [[ ${net_name_slot_sym} == yes ]]; then
-			ln -nfs /dev/null "${net_setup_link}"
-		else
-			cp "${net_name_slot}" "${net_setup_link}"
-		fi
-		eend $?
-	fi
-
-	# http://cgit.freedesktop.org/systemd/systemd/commit/rules/50-udev-default.rules?id=3dff3e00e044e2d53c76fa842b9a4759d4a50e69
-	# https://bugs.gentoo.org/246847
-	# https://bugs.gentoo.org/514174
-	enewgroup input
-
-	# Update hwdb database in case the format is changed by udev version.
-	if has_version 'sys-apps/hwids[udev]'; then
-		udevadm hwdb --update --root="${ROOT%/}"
-		# Only reload when we are not upgrading to avoid potential race w/ incompatible hwdb.bin and the running udevd
-		# http://cgit.freedesktop.org/systemd/systemd/commit/?id=1fab57c209035f7e66198343074e9cee06718bda
-		[[ -z ${REPLACING_VERSIONS} ]] && udev_reload
-	fi
-}

diff --git a/sys-fs/udev/udev-222.ebuild b/sys-fs/udev/udev-222.ebuild
deleted file mode 100644
index a7bd4d4..0000000
--- a/sys-fs/udev/udev-222.ebuild
+++ /dev/null
@@ -1,435 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-inherit autotools bash-completion-r1 eutils linux-info multilib multilib-minimal toolchain-funcs udev user versionator
-
-if [[ ${PV} = 9999* ]]; then
-	EGIT_REPO_URI="git://anongit.freedesktop.org/systemd/systemd"
-	inherit git-r3
-else
-	patchset=
-	SRC_URI="https://github.com/systemd/systemd/archive/v${PV}.tar.gz -> systemd-${PV}.tar.gz"
-	if [[ -n "${patchset}" ]]; then
-		SRC_URI+="
-			https://dev.gentoo.org/~ssuominen/${P}-patches-${patchset}.tar.xz
-			https://dev.gentoo.org/~williamh/dist/${P}-patches-${patchset}.tar.xz"
-	fi
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
-fi
-
-DESCRIPTION="Linux dynamic and persistent device naming support (aka userspace devfs)"
-HOMEPAGE="http://www.freedesktop.org/wiki/Software/systemd"
-
-LICENSE="LGPL-2.1 MIT GPL-2"
-SLOT="0"
-IUSE="acl +kmod selinux static-libs"
-
-RESTRICT="test"
-
-COMMON_DEPEND=">=sys-apps/util-linux-2.24
-	acl? ( sys-apps/acl )
-	kmod? ( >=sys-apps/kmod-16 )
-	selinux? ( >=sys-libs/libselinux-2.1.9 )
-	!<sys-libs/glibc-2.11
-	!sys-apps/gentoo-systemd-integration
-	!sys-apps/systemd
-	abi_x86_32? (
-		!<=app-emulation/emul-linux-x86-baselibs-20130224-r7
-		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
-	)"
-# Force new make >= -r4 to skip some parallel build issues
-DEPEND="${COMMON_DEPEND}
-	dev-util/gperf
-	>=dev-util/intltool-0.50
-	>=sys-apps/coreutils-8.16
-	sys-libs/libcap
-	virtual/os-headers
-	virtual/pkgconfig
-	>=sys-devel/make-3.82-r4
-	>=sys-kernel/linux-headers-3.9
-	app-text/docbook-xml-dtd:4.2
-	app-text/docbook-xml-dtd:4.5
-	app-text/docbook-xsl-stylesheets
-	dev-libs/libxslt"
-RDEPEND="${COMMON_DEPEND}
-	!<sys-fs/lvm2-2.02.103
-	!<sec-policy/selinux-base-2.20120725-r10"
-PDEPEND=">=sys-apps/hwids-20140304[udev]
-	>=sys-fs/udev-init-scripts-26"
-
-S=${WORKDIR}/systemd-${PV}
-
-# The multilib-build.eclass doesn't handle situation where the installed headers
-# are different in ABIs. In this case, we install libgudev headers in native
-# ABI but not for non-native ABI.
-multilib_check_headers() { :; }
-
-check_default_rules() {
-	# Make sure there are no sudden changes to upstream rules file
-	# (more for my own needs than anything else ...)
-	local udev_rules_md5=b8ad860dccae0ca51656b33c405ea2ca
-	MD5=$(md5sum < "${S}"/rules/50-udev-default.rules)
-	MD5=${MD5/  -/}
-	if [[ ${MD5} != ${udev_rules_md5} ]]; then
-		eerror "50-udev-default.rules has been updated, please validate!"
-		eerror "md5sum: ${MD5}"
-		die "50-udev-default.rules has been updated, please validate!"
-	fi
-}
-
-pkg_setup() {
-	if [[ ${MERGE_TYPE} != buildonly ]]; then
-		CONFIG_CHECK="~BLK_DEV_BSG ~DEVTMPFS ~!IDE ~INOTIFY_USER ~!SYSFS_DEPRECATED ~!SYSFS_DEPRECATED_V2 ~SIGNALFD ~EPOLL ~FHANDLE ~NET ~!FW_LOADER_USER_HELPER"
-		linux-info_pkg_setup
-
-		# CONFIG_FHANDLE was introduced by 2.6.39
-		local MINKV=2.6.39
-
-		if kernel_is -lt ${MINKV//./ }; then
-			eerror "Your running kernel is too old to run this version of ${P}"
-			eerror "You need to upgrade kernel at least to ${MINKV}"
-		fi
-
-		if kernel_is -lt 3 7; then
-			ewarn "Your running kernel is too old to have firmware loader and"
-			ewarn "this version of ${P} doesn't have userspace firmware loader"
-			ewarn "If you need firmware support, you need to upgrade kernel at least to 3.7"
-		fi
-	fi
-}
-
-src_prepare() {
-	if ! [[ ${PV} = 9999* ]]; then
-		# secure_getenv() disable for non-glibc systems wrt bug #443030
-		if ! [[ $(grep -r secure_getenv * | wc -l) -eq 25 ]]; then
-			eerror "The line count for secure_getenv() failed, see bug #443030"
-			die
-		fi
-	fi
-
-	# backport some patches
-	if [[ -n "${patchset}" ]]; then
-		EPATCH_SUFFIX=patch EPATCH_FORCE=yes epatch
-	fi
-
-	cat <<-EOF > "${T}"/40-gentoo.rules
-	# Gentoo specific floppy and usb groups
-	SUBSYSTEM=="block", KERNEL=="fd[0-9]", GROUP="floppy"
-	SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GROUP="usb"
-	EOF
-
-	# change rules back to group uucp instead of dialout for now wrt #454556
-	sed -i -e 's/GROUP="dialout"/GROUP="uucp"/' rules/*.rules || die
-
-	# stub out the am_path_libcrypt function
-	echo 'AC_DEFUN([AM_PATH_LIBGCRYPT],[:])' > m4/gcrypt.m4
-
-	# apply user patches
-	epatch_user
-
-	eautoreconf
-
-	if ! [[ ${PV} = 9999* ]]; then
-		check_default_rules
-	fi
-
-	# Restore possibility of running --enable-static wrt #472608
-	sed -i \
-		-e '/--enable-static is not supported by systemd/s:as_fn_error:echo:' \
-		configure || die
-
-	if ! use elibc_glibc; then #443030
-		echo '#define secure_getenv(x) NULL' >> config.h.in
-		sed -i -e '/error.*secure_getenv/s:.*:#define secure_getenv(x) NULL:' src/shared/missing.h || die
-	fi
-}
-
-multilib_src_configure() {
-	tc-export CC #463846
-	export cc_cv_CFLAGS__flto=no #502950
-	export cc_cv_CFLAGS__Werror_shadow=no #554454
-
-	# Keep sorted by ./configure --help and only pass --disable flags
-	# when *required* to avoid external deps or unnecessary compile
-	local econf_args
-	econf_args=(
-		ac_cv_search_cap_init=
-		--libdir=/usr/$(get_libdir)
-		--docdir=/usr/share/doc/${PF}
-		$(multilib_native_use_enable static-libs static)
-		--disable-nls
-		--disable-python-devel
-		--disable-dbus
-		$(multilib_native_use_enable kmod)
-		--disable-xkbcommon
-		--disable-seccomp
-		$(multilib_native_use_enable selinux)
-		--disable-xz
-		--disable-lz4
-		--disable-pam
-		$(multilib_native_use_enable acl)
-		--disable-gcrypt
-		--disable-audit
-		--disable-libcryptsetup
-		--disable-qrencode
-		--disable-microhttpd
-		--disable-gnuefi
-		--disable-gnutls
-		--disable-libcurl
-		--disable-libidn
-		--disable-quotacheck
-		--disable-logind
-		--disable-polkit
-		--disable-terminal
-		--disable-myhostname
-		$(multilib_is_native_abi || echo "--disable-manpages")
-		--enable-split-usr
-		--without-python
-		--with-bashcompletiondir="$(get_bashcompdir)"
-		--with-rootprefix=
-		$(multilib_is_native_abi && echo "--with-rootlibdir=/$(get_libdir)")
-	)
-
-	if ! multilib_is_native_abi; then
-		econf_args+=(
-			MOUNT_{CFLAGS,LIBS}=' '
-		)
-	fi
-
-	ECONF_SOURCE=${S} econf "${econf_args[@]}"
-}
-
-multilib_src_compile() {
-	echo 'BUILT_SOURCES: $(BUILT_SOURCES)' > "${T}"/Makefile.extra
-	emake -f Makefile -f "${T}"/Makefile.extra BUILT_SOURCES
-
-	# Most of the parallel build problems were solved by >=sys-devel/make-3.82-r4,
-	# but not everything -- separate building of the binaries as a workaround,
-	# which will force internal libraries required for the helpers to be built
-	# early enough, like eg. libsystemd-shared.la
-	if multilib_is_native_abi; then
-		local lib_targets=( libudev.la )
-		emake "${lib_targets[@]}"
-
-		local exec_targets=(
-			systemd-udevd
-			udevadm
-		)
-		emake "${exec_targets[@]}"
-
-		local helper_targets=(
-			ata_id
-			cdrom_id
-			collect
-			scsi_id
-			v4l_id
-			mtd_probe
-		)
-		emake "${helper_targets[@]}"
-
-		local man_targets=(
-			man/udev.conf.5
-			man/systemd.link.5
-			man/udev.7
-			man/systemd-udevd.service.8
-			man/udevadm.8
-		)
-		emake "${man_targets[@]}"
-	else
-		local lib_targets=( libudev.la )
-		emake "${lib_targets[@]}"
-	fi
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		local lib_LTLIBRARIES="libudev.la" \
-			pkgconfiglib_DATA="src/libudev/libudev.pc"
-
-		local targets=(
-			install-libLTLIBRARIES
-			install-includeHEADERS
-			install-rootbinPROGRAMS
-			install-rootlibexecPROGRAMS
-			install-udevlibexecPROGRAMS
-			install-dist_udevconfDATA
-			install-dist_udevrulesDATA
-			install-pkgconfiglibDATA
-			install-pkgconfigdataDATA
-			install-dist_docDATA
-			libudev-install-hook
-			install-directories-hook
-			install-dist_bashcompletionDATA
-			install-dist_networkDATA
-		)
-
-		# add final values of variables:
-		targets+=(
-			rootlibexec_PROGRAMS=systemd-udevd
-			rootbin_PROGRAMS=udevadm
-			lib_LTLIBRARIES="${lib_LTLIBRARIES}"
-			pkgconfiglib_DATA="${pkgconfiglib_DATA}"
-			pkgconfigdata_DATA="src/udev/udev.pc"
-			INSTALL_DIRS='$(sysconfdir)/udev/rules.d \
-					$(sysconfdir)/udev/hwdb.d \
-					$(sysconfdir)/systemd/network'
-			dist_bashcompletion_DATA="shell-completion/bash/udevadm"
-			dist_network_DATA="network/99-default.link"
-		)
-		emake -j1 DESTDIR="${D}" "${targets[@]}"
-		doman man/{udev.conf.5,systemd.link.5,udev.7,systemd-udevd.service.8,udevadm.8}
-	else
-		local lib_LTLIBRARIES="libudev.la" \
-			pkgconfiglib_DATA="src/libudev/libudev.pc" \
-			include_HEADERS="src/libudev/libudev.h"
-
-		local targets=(
-			install-libLTLIBRARIES
-			install-includeHEADERS
-			install-pkgconfiglibDATA
-		)
-
-		targets+=(
-			lib_LTLIBRARIES="${lib_LTLIBRARIES}"
-			pkgconfiglib_DATA="${pkgconfiglib_DATA}"
-			include_HEADERS="${include_HEADERS}"
-			)
-		emake -j1 DESTDIR="${D}" "${targets[@]}"
-	fi
-}
-
-multilib_src_install_all() {
-	dodoc TODO
-
-	prune_libtool_files --all
-	rm -f \
-		"${D}"/lib/udev/rules.d/99-systemd.rules \
-		"${D}"/usr/share/doc/${PF}/{LICENSE.*,GVARIANT-SERIALIZATION,DIFFERENCES,PORTING-DBUS1,sd-shutdown.h}
-
-	# see src_prepare() for content of 40-gentoo.rules
-	insinto /lib/udev/rules.d
-	doins "${T}"/40-gentoo.rules
-
-	# maintainer note: by not letting the upstream build-sys create the .so
-	# link, you also avoid a parallel make problem
-	mv "${D}"/usr/share/man/man8/systemd-udevd{.service,}.8
-}
-
-pkg_postinst() {
-	mkdir -p "${ROOT%/}"/run
-
-	# "losetup -f" is confused if there is an empty /dev/loop/, Bug #338766
-	# So try to remove it here (will only work if empty).
-	rmdir "${ROOT%/}"/dev/loop 2>/dev/null
-	if [[ -d ${ROOT%/}/dev/loop ]]; then
-		ewarn "Please make sure your remove /dev/loop,"
-		ewarn "else losetup may be confused when looking for unused devices."
-	fi
-
-	local fstab="${ROOT%/}"/etc/fstab dev path fstype rest
-	while read -r dev path fstype rest; do
-		if [[ ${path} == /dev && ${fstype} != devtmpfs ]]; then
-			ewarn "You need to edit your /dev line in ${fstab} to have devtmpfs"
-			ewarn "filesystem. Otherwise udev won't be able to boot."
-			ewarn "See, https://bugs.gentoo.org/453186"
-		fi
-	done < "${fstab}"
-
-	if [[ -d ${ROOT%/}/usr/lib/udev ]]; then
-		ewarn
-		ewarn "Please re-emerge all packages on your system which install"
-		ewarn "rules and helpers in /usr/lib/udev. They should now be in"
-		ewarn "/lib/udev."
-		ewarn
-		ewarn "One way to do this is to run the following command:"
-		ewarn "emerge -av1 \$(qfile -q -S -C /usr/lib/udev)"
-		ewarn "Note that qfile can be found in app-portage/portage-utils"
-	fi
-
-	local old_cd_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-cd.rules
-	local old_net_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-net.rules
-	for old_rules in "${old_cd_rules}" "${old_net_rules}"; do
-		if [[ -f ${old_rules} ]]; then
-			ewarn
-			ewarn "File ${old_rules} is from old udev installation but if you still use it,"
-			ewarn "rename it to something else starting with 70- to silence this deprecation"
-			ewarn "warning."
-		fi
-	done
-
-	elog
-	elog "Starting from version >= 197 the new predictable network interface names are"
-	elog "used by default, see:"
-	elog "http://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames"
-	elog "http://cgit.freedesktop.org/systemd/systemd/tree/src/udev/udev-builtin-net_id.c"
-	elog
-	elog "Example command to get the information for the new interface name before booting"
-	elog "(replace <ifname> with, for example, eth0):"
-	elog "# udevadm test-builtin net_id /sys/class/net/<ifname> 2> /dev/null"
-	elog
-	elog "You can use either kernel parameter \"net.ifnames=0\", create empty"
-	elog "file /etc/systemd/network/99-default.link, or symlink it to /dev/null"
-	elog "to disable the feature."
-
-	if has_version 'sys-apps/biosdevname'; then
-		ewarn
-		ewarn "You can replace the functionality of sys-apps/biosdevname which has been"
-		ewarn "detected to be installed with the new predictable network interface names."
-	fi
-
-	ewarn
-	ewarn "You need to restart udev as soon as possible to make the upgrade go"
-	ewarn "into effect."
-	ewarn "The method you use to do this depends on your init system."
-	if has_version 'sys-apps/openrc'; then
-		ewarn "For sys-apps/openrc users it is:"
-		ewarn "# /etc/init.d/udev --nodeps restart"
-	fi
-
-	elog
-	elog "For more information on udev on Gentoo, upgrading, writing udev rules, and"
-	elog "fixing known issues visit:"
-	elog "https://wiki.gentoo.org/wiki/Udev"
-	elog "https://wiki.gentoo.org/wiki/Udev/upgrade"
-
-	# If user has disabled 80-net-name-slot.rules using a empty file or a symlink to /dev/null,
-	# do the same for 80-net-setup-link.rules to keep the old behavior
-	local net_move=no
-	local net_name_slot_sym=no
-	local net_rules_path="${ROOT%/}"/etc/udev/rules.d
-	local net_name_slot="${net_rules_path}"/80-net-name-slot.rules
-	local net_setup_link="${net_rules_path}"/80-net-setup-link.rules
-	if [[ ! -e ${net_setup_link} ]]; then
-		[[ -f ${net_name_slot} && $(sed -e "/^#/d" -e "/^\W*$/d" ${net_name_slot} | wc -l) == 0 ]] && net_move=yes
-		if [[ -L ${net_name_slot} && $(readlink ${net_name_slot}) == /dev/null ]]; then
-			net_move=yes
-			net_name_slot_sym=yes
-		fi
-	fi
-	if [[ ${net_move} == yes ]]; then
-		ebegin "Copying ${net_name_slot} to ${net_setup_link}"
-
-		if [[ ${net_name_slot_sym} == yes ]]; then
-			ln -nfs /dev/null "${net_setup_link}"
-		else
-			cp "${net_name_slot}" "${net_setup_link}"
-		fi
-		eend $?
-	fi
-
-	# http://cgit.freedesktop.org/systemd/systemd/commit/rules/50-udev-default.rules?id=3dff3e00e044e2d53c76fa842b9a4759d4a50e69
-	# https://bugs.gentoo.org/246847
-	# https://bugs.gentoo.org/514174
-	enewgroup input
-
-	# Update hwdb database in case the format is changed by udev version.
-	if has_version 'sys-apps/hwids[udev]'; then
-		udevadm hwdb --update --root="${ROOT%/}"
-		# Only reload when we are not upgrading to avoid potential race w/ incompatible hwdb.bin and the running udevd
-		# http://cgit.freedesktop.org/systemd/systemd/commit/?id=1fab57c209035f7e66198343074e9cee06718bda
-		[[ -z ${REPLACING_VERSIONS} ]] && udev_reload
-	fi
-}

diff --git a/sys-fs/udev/udev-224-r1.ebuild b/sys-fs/udev/udev-224-r1.ebuild
deleted file mode 100644
index 997b853..0000000
--- a/sys-fs/udev/udev-224-r1.ebuild
+++ /dev/null
@@ -1,434 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-inherit autotools bash-completion-r1 eutils linux-info multilib multilib-minimal toolchain-funcs udev user versionator
-
-if [[ ${PV} = 9999* ]]; then
-	EGIT_REPO_URI="git://anongit.freedesktop.org/systemd/systemd"
-	inherit git-r3
-else
-	patchset=
-	SRC_URI="https://github.com/systemd/systemd/archive/v${PV}.tar.gz -> systemd-${PV}.tar.gz"
-	if [[ -n "${patchset}" ]]; then
-		SRC_URI+="
-			https://dev.gentoo.org/~ssuominen/${P}-patches-${patchset}.tar.xz
-			https://dev.gentoo.org/~williamh/dist/${P}-patches-${patchset}.tar.xz"
-	fi
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
-fi
-
-DESCRIPTION="Linux dynamic and persistent device naming support (aka userspace devfs)"
-HOMEPAGE="http://www.freedesktop.org/wiki/Software/systemd"
-
-LICENSE="LGPL-2.1 MIT GPL-2"
-SLOT="0"
-IUSE="acl +kmod selinux static-libs"
-
-RESTRICT="test"
-
-COMMON_DEPEND=">=sys-apps/util-linux-2.24
-	acl? ( sys-apps/acl )
-	kmod? ( >=sys-apps/kmod-16 )
-	selinux? ( >=sys-libs/libselinux-2.1.9 )
-	!<sys-libs/glibc-2.11
-	!sys-apps/gentoo-systemd-integration
-	!sys-apps/systemd
-	abi_x86_32? (
-		!<=app-emulation/emul-linux-x86-baselibs-20130224-r7
-		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
-	)"
-# Force new make >= -r4 to skip some parallel build issues
-DEPEND="${COMMON_DEPEND}
-	dev-util/gperf
-	>=dev-util/intltool-0.50
-	>=sys-apps/coreutils-8.16
-	sys-libs/libcap
-	virtual/os-headers
-	virtual/pkgconfig
-	>=sys-devel/make-3.82-r4
-	>=sys-kernel/linux-headers-3.9
-	app-text/docbook-xml-dtd:4.2
-	app-text/docbook-xml-dtd:4.5
-	app-text/docbook-xsl-stylesheets
-	dev-libs/libxslt"
-RDEPEND="${COMMON_DEPEND}
-	!<sys-fs/lvm2-2.02.103
-	!<sec-policy/selinux-base-2.20120725-r10"
-PDEPEND=">=sys-apps/hwids-20140304[udev]
-	>=sys-fs/udev-init-scripts-26"
-
-S=${WORKDIR}/systemd-${PV}
-
-# The multilib-build.eclass doesn't handle situation where the installed headers
-# are different in ABIs. In this case, we install libgudev headers in native
-# ABI but not for non-native ABI.
-multilib_check_headers() { :; }
-
-check_default_rules() {
-	# Make sure there are no sudden changes to upstream rules file
-	# (more for my own needs than anything else ...)
-	local udev_rules_md5=b8ad860dccae0ca51656b33c405ea2ca
-	MD5=$(md5sum < "${S}"/rules/50-udev-default.rules)
-	MD5=${MD5/  -/}
-	if [[ ${MD5} != ${udev_rules_md5} ]]; then
-		eerror "50-udev-default.rules has been updated, please validate!"
-		eerror "md5sum: ${MD5}"
-		die "50-udev-default.rules has been updated, please validate!"
-	fi
-}
-
-pkg_setup() {
-	if [[ ${MERGE_TYPE} != buildonly ]]; then
-		CONFIG_CHECK="~BLK_DEV_BSG ~DEVTMPFS ~!IDE ~INOTIFY_USER ~!SYSFS_DEPRECATED ~!SYSFS_DEPRECATED_V2 ~SIGNALFD ~EPOLL ~FHANDLE ~NET ~!FW_LOADER_USER_HELPER"
-		linux-info_pkg_setup
-
-		# CONFIG_FHANDLE was introduced by 2.6.39
-		local MINKV=2.6.39
-
-		if kernel_is -lt ${MINKV//./ }; then
-			eerror "Your running kernel is too old to run this version of ${P}"
-			eerror "You need to upgrade kernel at least to ${MINKV}"
-		fi
-
-		if kernel_is -lt 3 7; then
-			ewarn "Your running kernel is too old to have firmware loader and"
-			ewarn "this version of ${P} doesn't have userspace firmware loader"
-			ewarn "If you need firmware support, you need to upgrade kernel at least to 3.7"
-		fi
-	fi
-}
-
-src_prepare() {
-	if ! [[ ${PV} = 9999* ]]; then
-		# secure_getenv() disable for non-glibc systems wrt bug #443030
-		if ! [[ $(grep -r secure_getenv * | wc -l) -eq 25 ]]; then
-			eerror "The line count for secure_getenv() failed, see bug #443030"
-			die
-		fi
-	fi
-
-	# backport some patches
-	if [[ -n "${patchset}" ]]; then
-		EPATCH_SUFFIX=patch EPATCH_FORCE=yes epatch
-	fi
-
-	cat <<-EOF > "${T}"/40-gentoo.rules
-	# Gentoo specific floppy and usb groups
-	SUBSYSTEM=="block", KERNEL=="fd[0-9]", GROUP="floppy"
-	SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GROUP="usb"
-	EOF
-
-	# change rules back to group uucp instead of dialout for now wrt #454556
-	sed -i -e 's/GROUP="dialout"/GROUP="uucp"/' rules/*.rules || die
-
-	# stub out the am_path_libcrypt function
-	echo 'AC_DEFUN([AM_PATH_LIBGCRYPT],[:])' > m4/gcrypt.m4
-
-	# apply user patches
-	epatch_user
-
-	eautoreconf
-
-	if ! [[ ${PV} = 9999* ]]; then
-		check_default_rules
-	fi
-
-	# Restore possibility of running --enable-static wrt #472608
-	sed -i \
-		-e '/--enable-static is not supported by systemd/s:as_fn_error:echo:' \
-		configure || die
-
-	if ! use elibc_glibc; then #443030
-		echo '#define secure_getenv(x) NULL' >> config.h.in
-		sed -i -e '/error.*secure_getenv/s:.*:#define secure_getenv(x) NULL:' src/shared/missing.h || die
-	fi
-}
-
-multilib_src_configure() {
-	tc-export CC #463846
-	export cc_cv_CFLAGS__flto=no #502950
-	export cc_cv_CFLAGS__Werror_shadow=no #554454
-
-	# Keep sorted by ./configure --help and only pass --disable flags
-	# when *required* to avoid external deps or unnecessary compile
-	local econf_args
-	econf_args=(
-		ac_cv_search_cap_init=
-		--libdir=/usr/$(get_libdir)
-		--docdir=/usr/share/doc/${PF}
-		$(multilib_native_use_enable static-libs static)
-		--disable-nls
-		--disable-dbus
-		$(multilib_native_use_enable kmod)
-		--disable-xkbcommon
-		--disable-seccomp
-		$(multilib_native_use_enable selinux)
-		--disable-xz
-		--disable-lz4
-		--disable-pam
-		$(multilib_native_use_enable acl)
-		--disable-gcrypt
-		--disable-audit
-		--disable-libcryptsetup
-		--disable-qrencode
-		--disable-microhttpd
-		--disable-gnuefi
-		--disable-gnutls
-		--disable-libcurl
-		--disable-libidn
-		--disable-quotacheck
-		--disable-logind
-		--disable-polkit
-		--disable-myhostname
-		$(multilib_is_native_abi || echo "--disable-manpages")
-		--enable-split-usr
-		--without-python
-		--with-bashcompletiondir="$(get_bashcompdir)"
-		--with-rootprefix=
-		$(multilib_is_native_abi && echo "--with-rootlibdir=/$(get_libdir)")
-		--disable-elfutils
-	)
-
-	if ! multilib_is_native_abi; then
-		econf_args+=(
-			MOUNT_{CFLAGS,LIBS}=' '
-		)
-	fi
-
-	ECONF_SOURCE=${S} econf "${econf_args[@]}"
-}
-
-multilib_src_compile() {
-	echo 'BUILT_SOURCES: $(BUILT_SOURCES)' > "${T}"/Makefile.extra
-	emake -f Makefile -f "${T}"/Makefile.extra BUILT_SOURCES
-
-	# Most of the parallel build problems were solved by >=sys-devel/make-3.82-r4,
-	# but not everything -- separate building of the binaries as a workaround,
-	# which will force internal libraries required for the helpers to be built
-	# early enough, like eg. libsystemd-shared.la
-	if multilib_is_native_abi; then
-		local lib_targets=( libudev.la )
-		emake "${lib_targets[@]}"
-
-		local exec_targets=(
-			systemd-udevd
-			udevadm
-		)
-		emake "${exec_targets[@]}"
-
-		local helper_targets=(
-			ata_id
-			cdrom_id
-			collect
-			scsi_id
-			v4l_id
-			mtd_probe
-		)
-		emake "${helper_targets[@]}"
-
-		local man_targets=(
-			man/udev.conf.5
-			man/systemd.link.5
-			man/udev.7
-			man/systemd-udevd.service.8
-			man/udevadm.8
-		)
-		emake "${man_targets[@]}"
-	else
-		local lib_targets=( libudev.la )
-		emake "${lib_targets[@]}"
-	fi
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		local lib_LTLIBRARIES="libudev.la" \
-			pkgconfiglib_DATA="src/libudev/libudev.pc"
-
-		local targets=(
-			install-libLTLIBRARIES
-			install-includeHEADERS
-			install-rootbinPROGRAMS
-			install-rootlibexecPROGRAMS
-			install-udevlibexecPROGRAMS
-			install-dist_udevconfDATA
-			install-dist_udevrulesDATA
-			install-pkgconfiglibDATA
-			install-pkgconfigdataDATA
-			install-dist_docDATA
-			libudev-install-hook
-			install-directories-hook
-			install-dist_bashcompletionDATA
-			install-dist_networkDATA
-		)
-
-		# add final values of variables:
-		targets+=(
-			rootlibexec_PROGRAMS=systemd-udevd
-			rootbin_PROGRAMS=udevadm
-			lib_LTLIBRARIES="${lib_LTLIBRARIES}"
-			pkgconfiglib_DATA="${pkgconfiglib_DATA}"
-			pkgconfigdata_DATA="src/udev/udev.pc"
-			INSTALL_DIRS='$(sysconfdir)/udev/rules.d \
-					$(sysconfdir)/udev/hwdb.d \
-					$(sysconfdir)/systemd/network'
-			dist_bashcompletion_DATA="shell-completion/bash/udevadm"
-			dist_network_DATA="network/99-default.link"
-		)
-		emake -j1 DESTDIR="${D}" "${targets[@]}"
-		doman man/{udev.conf.5,systemd.link.5,udev.7,systemd-udevd.service.8,udevadm.8}
-	else
-		local lib_LTLIBRARIES="libudev.la" \
-			pkgconfiglib_DATA="src/libudev/libudev.pc" \
-			include_HEADERS="src/libudev/libudev.h"
-
-		local targets=(
-			install-libLTLIBRARIES
-			install-includeHEADERS
-			install-pkgconfiglibDATA
-		)
-
-		targets+=(
-			lib_LTLIBRARIES="${lib_LTLIBRARIES}"
-			pkgconfiglib_DATA="${pkgconfiglib_DATA}"
-			include_HEADERS="${include_HEADERS}"
-			)
-		emake -j1 DESTDIR="${D}" "${targets[@]}"
-	fi
-}
-
-multilib_src_install_all() {
-	dodoc TODO
-
-	prune_libtool_files --all
-	rm -f \
-		"${D}"/lib/udev/rules.d/99-systemd.rules \
-		"${D}"/usr/share/doc/${PF}/{LICENSE.*,GVARIANT-SERIALIZATION,DIFFERENCES,PORTING-DBUS1,sd-shutdown.h}
-
-	# see src_prepare() for content of 40-gentoo.rules
-	insinto /lib/udev/rules.d
-	doins "${T}"/40-gentoo.rules
-
-	# maintainer note: by not letting the upstream build-sys create the .so
-	# link, you also avoid a parallel make problem
-	mv "${D}"/usr/share/man/man8/systemd-udevd{.service,}.8
-}
-
-pkg_postinst() {
-	mkdir -p "${ROOT%/}"/run
-
-	# "losetup -f" is confused if there is an empty /dev/loop/, Bug #338766
-	# So try to remove it here (will only work if empty).
-	rmdir "${ROOT%/}"/dev/loop 2>/dev/null
-	if [[ -d ${ROOT%/}/dev/loop ]]; then
-		ewarn "Please make sure your remove /dev/loop,"
-		ewarn "else losetup may be confused when looking for unused devices."
-	fi
-
-	local fstab="${ROOT%/}"/etc/fstab dev path fstype rest
-	while read -r dev path fstype rest; do
-		if [[ ${path} == /dev && ${fstype} != devtmpfs ]]; then
-			ewarn "You need to edit your /dev line in ${fstab} to have devtmpfs"
-			ewarn "filesystem. Otherwise udev won't be able to boot."
-			ewarn "See, https://bugs.gentoo.org/453186"
-		fi
-	done < "${fstab}"
-
-	if [[ -d ${ROOT%/}/usr/lib/udev ]]; then
-		ewarn
-		ewarn "Please re-emerge all packages on your system which install"
-		ewarn "rules and helpers in /usr/lib/udev. They should now be in"
-		ewarn "/lib/udev."
-		ewarn
-		ewarn "One way to do this is to run the following command:"
-		ewarn "emerge -av1 \$(qfile -q -S -C /usr/lib/udev)"
-		ewarn "Note that qfile can be found in app-portage/portage-utils"
-	fi
-
-	local old_cd_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-cd.rules
-	local old_net_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-net.rules
-	for old_rules in "${old_cd_rules}" "${old_net_rules}"; do
-		if [[ -f ${old_rules} ]]; then
-			ewarn
-			ewarn "File ${old_rules} is from old udev installation but if you still use it,"
-			ewarn "rename it to something else starting with 70- to silence this deprecation"
-			ewarn "warning."
-		fi
-	done
-
-	elog
-	elog "Starting from version >= 197 the new predictable network interface names are"
-	elog "used by default, see:"
-	elog "http://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames"
-	elog "http://cgit.freedesktop.org/systemd/systemd/tree/src/udev/udev-builtin-net_id.c"
-	elog
-	elog "Example command to get the information for the new interface name before booting"
-	elog "(replace <ifname> with, for example, eth0):"
-	elog "# udevadm test-builtin net_id /sys/class/net/<ifname> 2> /dev/null"
-	elog
-	elog "You can use either kernel parameter \"net.ifnames=0\", create empty"
-	elog "file /etc/systemd/network/99-default.link, or symlink it to /dev/null"
-	elog "to disable the feature."
-
-	if has_version 'sys-apps/biosdevname'; then
-		ewarn
-		ewarn "You can replace the functionality of sys-apps/biosdevname which has been"
-		ewarn "detected to be installed with the new predictable network interface names."
-	fi
-
-	ewarn
-	ewarn "You need to restart udev as soon as possible to make the upgrade go"
-	ewarn "into effect."
-	ewarn "The method you use to do this depends on your init system."
-	if has_version 'sys-apps/openrc'; then
-		ewarn "For sys-apps/openrc users it is:"
-		ewarn "# /etc/init.d/udev --nodeps restart"
-	fi
-
-	elog
-	elog "For more information on udev on Gentoo, upgrading, writing udev rules, and"
-	elog "fixing known issues visit:"
-	elog "https://wiki.gentoo.org/wiki/Udev"
-	elog "https://wiki.gentoo.org/wiki/Udev/upgrade"
-
-	# If user has disabled 80-net-name-slot.rules using a empty file or a symlink to /dev/null,
-	# do the same for 80-net-setup-link.rules to keep the old behavior
-	local net_move=no
-	local net_name_slot_sym=no
-	local net_rules_path="${ROOT%/}"/etc/udev/rules.d
-	local net_name_slot="${net_rules_path}"/80-net-name-slot.rules
-	local net_setup_link="${net_rules_path}"/80-net-setup-link.rules
-	if [[ ! -e ${net_setup_link} ]]; then
-		[[ -f ${net_name_slot} && $(sed -e "/^#/d" -e "/^\W*$/d" ${net_name_slot} | wc -l) == 0 ]] && net_move=yes
-		if [[ -L ${net_name_slot} && $(readlink ${net_name_slot}) == /dev/null ]]; then
-			net_move=yes
-			net_name_slot_sym=yes
-		fi
-	fi
-	if [[ ${net_move} == yes ]]; then
-		ebegin "Copying ${net_name_slot} to ${net_setup_link}"
-
-		if [[ ${net_name_slot_sym} == yes ]]; then
-			ln -nfs /dev/null "${net_setup_link}"
-		else
-			cp "${net_name_slot}" "${net_setup_link}"
-		fi
-		eend $?
-	fi
-
-	# http://cgit.freedesktop.org/systemd/systemd/commit/rules/50-udev-default.rules?id=3dff3e00e044e2d53c76fa842b9a4759d4a50e69
-	# https://bugs.gentoo.org/246847
-	# https://bugs.gentoo.org/514174
-	enewgroup input
-
-	# Update hwdb database in case the format is changed by udev version.
-	if has_version 'sys-apps/hwids[udev]'; then
-		udevadm hwdb --update --root="${ROOT%/}"
-		# Only reload when we are not upgrading to avoid potential race w/ incompatible hwdb.bin and the running udevd
-		# http://cgit.freedesktop.org/systemd/systemd/commit/?id=1fab57c209035f7e66198343074e9cee06718bda
-		[[ -z ${REPLACING_VERSIONS} ]] && udev_reload
-	fi
-}

diff --git a/sys-fs/udev/udev-224-r2.ebuild b/sys-fs/udev/udev-224-r2.ebuild
deleted file mode 100644
index 4332fe8..0000000
--- a/sys-fs/udev/udev-224-r2.ebuild
+++ /dev/null
@@ -1,435 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-inherit autotools bash-completion-r1 eutils linux-info multilib multilib-minimal toolchain-funcs udev user versionator
-
-if [[ ${PV} = 9999* ]]; then
-	EGIT_REPO_URI="git://anongit.freedesktop.org/systemd/systemd"
-	inherit git-r3
-else
-	patchset=
-	SRC_URI="https://github.com/systemd/systemd/archive/v${PV}.tar.gz -> systemd-${PV}.tar.gz"
-	if [[ -n "${patchset}" ]]; then
-		SRC_URI+="
-			https://dev.gentoo.org/~ssuominen/${P}-patches-${patchset}.tar.xz
-			https://dev.gentoo.org/~williamh/dist/${P}-patches-${patchset}.tar.xz"
-	fi
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
-fi
-
-DESCRIPTION="Linux dynamic and persistent device naming support (aka userspace devfs)"
-HOMEPAGE="http://www.freedesktop.org/wiki/Software/systemd"
-
-LICENSE="LGPL-2.1 MIT GPL-2"
-SLOT="0"
-IUSE="acl +kmod selinux static-libs"
-
-RESTRICT="test"
-
-COMMON_DEPEND=">=sys-apps/util-linux-2.24
-	sys-libs/libcap[${MULTILIB_USEDEP}]
-	acl? ( sys-apps/acl )
-	kmod? ( >=sys-apps/kmod-16 )
-	selinux? ( >=sys-libs/libselinux-2.1.9 )
-	!<sys-libs/glibc-2.11
-	!sys-apps/gentoo-systemd-integration
-	!sys-apps/systemd
-	abi_x86_32? (
-		!<=app-emulation/emul-linux-x86-baselibs-20130224-r7
-		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
-	)"
-# Force new make >= -r4 to skip some parallel build issues
-DEPEND="${COMMON_DEPEND}
-	dev-util/gperf
-	>=dev-util/intltool-0.50
-	>=sys-apps/coreutils-8.16
-	virtual/os-headers
-	virtual/pkgconfig
-	>=sys-devel/make-3.82-r4
-	>=sys-kernel/linux-headers-3.9
-	app-text/docbook-xml-dtd:4.2
-	app-text/docbook-xml-dtd:4.5
-	app-text/docbook-xsl-stylesheets
-	dev-libs/libxslt"
-RDEPEND="${COMMON_DEPEND}
-	!<sys-fs/lvm2-2.02.103
-	!<sec-policy/selinux-base-2.20120725-r10"
-PDEPEND=">=sys-apps/hwids-20140304[udev]
-	>=sys-fs/udev-init-scripts-26"
-
-S=${WORKDIR}/systemd-${PV}
-
-# The multilib-build.eclass doesn't handle situation where the installed headers
-# are different in ABIs. In this case, we install libgudev headers in native
-# ABI but not for non-native ABI.
-multilib_check_headers() { :; }
-
-check_default_rules() {
-	# Make sure there are no sudden changes to upstream rules file
-	# (more for my own needs than anything else ...)
-	local udev_rules_md5=b8ad860dccae0ca51656b33c405ea2ca
-	MD5=$(md5sum < "${S}"/rules/50-udev-default.rules)
-	MD5=${MD5/  -/}
-	if [[ ${MD5} != ${udev_rules_md5} ]]; then
-		eerror "50-udev-default.rules has been updated, please validate!"
-		eerror "md5sum: ${MD5}"
-		die "50-udev-default.rules has been updated, please validate!"
-	fi
-}
-
-pkg_setup() {
-	if [[ ${MERGE_TYPE} != buildonly ]]; then
-		CONFIG_CHECK="~BLK_DEV_BSG ~DEVTMPFS ~!IDE ~INOTIFY_USER ~!SYSFS_DEPRECATED ~!SYSFS_DEPRECATED_V2 ~SIGNALFD ~EPOLL ~FHANDLE ~NET ~!FW_LOADER_USER_HELPER"
-		linux-info_pkg_setup
-
-		# CONFIG_FHANDLE was introduced by 2.6.39
-		local MINKV=2.6.39
-
-		if kernel_is -lt ${MINKV//./ }; then
-			eerror "Your running kernel is too old to run this version of ${P}"
-			eerror "You need to upgrade kernel at least to ${MINKV}"
-		fi
-
-		if kernel_is -lt 3 7; then
-			ewarn "Your running kernel is too old to have firmware loader and"
-			ewarn "this version of ${P} doesn't have userspace firmware loader"
-			ewarn "If you need firmware support, you need to upgrade kernel at least to 3.7"
-		fi
-	fi
-}
-
-src_prepare() {
-	if ! [[ ${PV} = 9999* ]]; then
-		# secure_getenv() disable for non-glibc systems wrt bug #443030
-		if ! [[ $(grep -r secure_getenv * | wc -l) -eq 25 ]]; then
-			eerror "The line count for secure_getenv() failed, see bug #443030"
-			die
-		fi
-	fi
-
-	# backport some patches
-	if [[ -n "${patchset}" ]]; then
-		EPATCH_SUFFIX=patch EPATCH_FORCE=yes epatch
-	fi
-
-	epatch "${FILESDIR}/224-0002-Use-getxpid-syscall-on-alpha-for-raw_getpid.patch"
-
-	cat <<-EOF > "${T}"/40-gentoo.rules
-	# Gentoo specific floppy and usb groups
-	SUBSYSTEM=="block", KERNEL=="fd[0-9]", GROUP="floppy"
-	SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GROUP="usb"
-	EOF
-
-	# change rules back to group uucp instead of dialout for now wrt #454556
-	sed -i -e 's/GROUP="dialout"/GROUP="uucp"/' rules/*.rules || die
-
-	# stub out the am_path_libcrypt function
-	echo 'AC_DEFUN([AM_PATH_LIBGCRYPT],[:])' > m4/gcrypt.m4
-
-	# apply user patches
-	epatch_user
-
-	eautoreconf
-
-	if ! [[ ${PV} = 9999* ]]; then
-		check_default_rules
-	fi
-
-	# Restore possibility of running --enable-static wrt #472608
-	sed -i \
-		-e '/--enable-static is not supported by systemd/s:as_fn_error:echo:' \
-		configure || die
-
-	if ! use elibc_glibc; then #443030
-		echo '#define secure_getenv(x) NULL' >> config.h.in
-		sed -i -e '/error.*secure_getenv/s:.*:#define secure_getenv(x) NULL:' src/shared/missing.h || die
-	fi
-}
-
-multilib_src_configure() {
-	tc-export CC #463846
-	export cc_cv_CFLAGS__flto=no #502950
-	export cc_cv_CFLAGS__Werror_shadow=no #554454
-
-	# Keep sorted by ./configure --help and only pass --disable flags
-	# when *required* to avoid external deps or unnecessary compile
-	local econf_args
-	econf_args=(
-		--libdir=/usr/$(get_libdir)
-		--docdir=/usr/share/doc/${PF}
-		$(multilib_native_use_enable static-libs static)
-		--disable-nls
-		--disable-dbus
-		$(multilib_native_use_enable kmod)
-		--disable-xkbcommon
-		--disable-seccomp
-		$(multilib_native_use_enable selinux)
-		--disable-xz
-		--disable-lz4
-		--disable-pam
-		$(multilib_native_use_enable acl)
-		--disable-gcrypt
-		--disable-audit
-		--disable-libcryptsetup
-		--disable-qrencode
-		--disable-microhttpd
-		--disable-gnuefi
-		--disable-gnutls
-		--disable-libcurl
-		--disable-libidn
-		--disable-quotacheck
-		--disable-logind
-		--disable-polkit
-		--disable-myhostname
-		$(multilib_is_native_abi || echo "--disable-manpages")
-		--enable-split-usr
-		--without-python
-		--with-bashcompletiondir="$(get_bashcompdir)"
-		--with-rootprefix=
-		$(multilib_is_native_abi && echo "--with-rootlibdir=/$(get_libdir)")
-		--disable-elfutils
-	)
-
-	if ! multilib_is_native_abi; then
-		econf_args+=(
-			MOUNT_{CFLAGS,LIBS}=' '
-		)
-	fi
-
-	ECONF_SOURCE=${S} econf "${econf_args[@]}"
-}
-
-multilib_src_compile() {
-	echo 'BUILT_SOURCES: $(BUILT_SOURCES)' > "${T}"/Makefile.extra
-	emake -f Makefile -f "${T}"/Makefile.extra BUILT_SOURCES
-
-	# Most of the parallel build problems were solved by >=sys-devel/make-3.82-r4,
-	# but not everything -- separate building of the binaries as a workaround,
-	# which will force internal libraries required for the helpers to be built
-	# early enough, like eg. libsystemd-shared.la
-	if multilib_is_native_abi; then
-		local lib_targets=( libudev.la )
-		emake "${lib_targets[@]}"
-
-		local exec_targets=(
-			systemd-udevd
-			udevadm
-		)
-		emake "${exec_targets[@]}"
-
-		local helper_targets=(
-			ata_id
-			cdrom_id
-			collect
-			scsi_id
-			v4l_id
-			mtd_probe
-		)
-		emake "${helper_targets[@]}"
-
-		local man_targets=(
-			man/udev.conf.5
-			man/systemd.link.5
-			man/udev.7
-			man/systemd-udevd.service.8
-			man/udevadm.8
-		)
-		emake "${man_targets[@]}"
-	else
-		local lib_targets=( libudev.la )
-		emake "${lib_targets[@]}"
-	fi
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		local lib_LTLIBRARIES="libudev.la" \
-			pkgconfiglib_DATA="src/libudev/libudev.pc"
-
-		local targets=(
-			install-libLTLIBRARIES
-			install-includeHEADERS
-			install-rootbinPROGRAMS
-			install-rootlibexecPROGRAMS
-			install-udevlibexecPROGRAMS
-			install-dist_udevconfDATA
-			install-dist_udevrulesDATA
-			install-pkgconfiglibDATA
-			install-pkgconfigdataDATA
-			install-dist_docDATA
-			libudev-install-hook
-			install-directories-hook
-			install-dist_bashcompletionDATA
-			install-dist_networkDATA
-		)
-
-		# add final values of variables:
-		targets+=(
-			rootlibexec_PROGRAMS=systemd-udevd
-			rootbin_PROGRAMS=udevadm
-			lib_LTLIBRARIES="${lib_LTLIBRARIES}"
-			pkgconfiglib_DATA="${pkgconfiglib_DATA}"
-			pkgconfigdata_DATA="src/udev/udev.pc"
-			INSTALL_DIRS='$(sysconfdir)/udev/rules.d \
-					$(sysconfdir)/udev/hwdb.d \
-					$(sysconfdir)/systemd/network'
-			dist_bashcompletion_DATA="shell-completion/bash/udevadm"
-			dist_network_DATA="network/99-default.link"
-		)
-		emake -j1 DESTDIR="${D}" "${targets[@]}"
-		doman man/{udev.conf.5,systemd.link.5,udev.7,systemd-udevd.service.8,udevadm.8}
-	else
-		local lib_LTLIBRARIES="libudev.la" \
-			pkgconfiglib_DATA="src/libudev/libudev.pc" \
-			include_HEADERS="src/libudev/libudev.h"
-
-		local targets=(
-			install-libLTLIBRARIES
-			install-includeHEADERS
-			install-pkgconfiglibDATA
-		)
-
-		targets+=(
-			lib_LTLIBRARIES="${lib_LTLIBRARIES}"
-			pkgconfiglib_DATA="${pkgconfiglib_DATA}"
-			include_HEADERS="${include_HEADERS}"
-			)
-		emake -j1 DESTDIR="${D}" "${targets[@]}"
-	fi
-}
-
-multilib_src_install_all() {
-	dodoc TODO
-
-	prune_libtool_files --all
-	rm -f \
-		"${D}"/lib/udev/rules.d/99-systemd.rules \
-		"${D}"/usr/share/doc/${PF}/{LICENSE.*,GVARIANT-SERIALIZATION,DIFFERENCES,PORTING-DBUS1,sd-shutdown.h}
-
-	# see src_prepare() for content of 40-gentoo.rules
-	insinto /lib/udev/rules.d
-	doins "${T}"/40-gentoo.rules
-
-	# maintainer note: by not letting the upstream build-sys create the .so
-	# link, you also avoid a parallel make problem
-	mv "${D}"/usr/share/man/man8/systemd-udevd{.service,}.8
-}
-
-pkg_postinst() {
-	mkdir -p "${ROOT%/}"/run
-
-	# "losetup -f" is confused if there is an empty /dev/loop/, Bug #338766
-	# So try to remove it here (will only work if empty).
-	rmdir "${ROOT%/}"/dev/loop 2>/dev/null
-	if [[ -d ${ROOT%/}/dev/loop ]]; then
-		ewarn "Please make sure your remove /dev/loop,"
-		ewarn "else losetup may be confused when looking for unused devices."
-	fi
-
-	local fstab="${ROOT%/}"/etc/fstab dev path fstype rest
-	while read -r dev path fstype rest; do
-		if [[ ${path} == /dev && ${fstype} != devtmpfs ]]; then
-			ewarn "You need to edit your /dev line in ${fstab} to have devtmpfs"
-			ewarn "filesystem. Otherwise udev won't be able to boot."
-			ewarn "See, https://bugs.gentoo.org/453186"
-		fi
-	done < "${fstab}"
-
-	if [[ -d ${ROOT%/}/usr/lib/udev ]]; then
-		ewarn
-		ewarn "Please re-emerge all packages on your system which install"
-		ewarn "rules and helpers in /usr/lib/udev. They should now be in"
-		ewarn "/lib/udev."
-		ewarn
-		ewarn "One way to do this is to run the following command:"
-		ewarn "emerge -av1 \$(qfile -q -S -C /usr/lib/udev)"
-		ewarn "Note that qfile can be found in app-portage/portage-utils"
-	fi
-
-	local old_cd_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-cd.rules
-	local old_net_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-net.rules
-	for old_rules in "${old_cd_rules}" "${old_net_rules}"; do
-		if [[ -f ${old_rules} ]]; then
-			ewarn
-			ewarn "File ${old_rules} is from old udev installation but if you still use it,"
-			ewarn "rename it to something else starting with 70- to silence this deprecation"
-			ewarn "warning."
-		fi
-	done
-
-	elog
-	elog "Starting from version >= 197 the new predictable network interface names are"
-	elog "used by default, see:"
-	elog "http://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames"
-	elog "http://cgit.freedesktop.org/systemd/systemd/tree/src/udev/udev-builtin-net_id.c"
-	elog
-	elog "Example command to get the information for the new interface name before booting"
-	elog "(replace <ifname> with, for example, eth0):"
-	elog "# udevadm test-builtin net_id /sys/class/net/<ifname> 2> /dev/null"
-	elog
-	elog "You can use either kernel parameter \"net.ifnames=0\", create empty"
-	elog "file /etc/systemd/network/99-default.link, or symlink it to /dev/null"
-	elog "to disable the feature."
-
-	if has_version 'sys-apps/biosdevname'; then
-		ewarn
-		ewarn "You can replace the functionality of sys-apps/biosdevname which has been"
-		ewarn "detected to be installed with the new predictable network interface names."
-	fi
-
-	ewarn
-	ewarn "You need to restart udev as soon as possible to make the upgrade go"
-	ewarn "into effect."
-	ewarn "The method you use to do this depends on your init system."
-	if has_version 'sys-apps/openrc'; then
-		ewarn "For sys-apps/openrc users it is:"
-		ewarn "# /etc/init.d/udev --nodeps restart"
-	fi
-
-	elog
-	elog "For more information on udev on Gentoo, upgrading, writing udev rules, and"
-	elog "fixing known issues visit:"
-	elog "https://wiki.gentoo.org/wiki/Udev"
-	elog "https://wiki.gentoo.org/wiki/Udev/upgrade"
-
-	# If user has disabled 80-net-name-slot.rules using a empty file or a symlink to /dev/null,
-	# do the same for 80-net-setup-link.rules to keep the old behavior
-	local net_move=no
-	local net_name_slot_sym=no
-	local net_rules_path="${ROOT%/}"/etc/udev/rules.d
-	local net_name_slot="${net_rules_path}"/80-net-name-slot.rules
-	local net_setup_link="${net_rules_path}"/80-net-setup-link.rules
-	if [[ ! -e ${net_setup_link} ]]; then
-		[[ -f ${net_name_slot} && $(sed -e "/^#/d" -e "/^\W*$/d" ${net_name_slot} | wc -l) == 0 ]] && net_move=yes
-		if [[ -L ${net_name_slot} && $(readlink ${net_name_slot}) == /dev/null ]]; then
-			net_move=yes
-			net_name_slot_sym=yes
-		fi
-	fi
-	if [[ ${net_move} == yes ]]; then
-		ebegin "Copying ${net_name_slot} to ${net_setup_link}"
-
-		if [[ ${net_name_slot_sym} == yes ]]; then
-			ln -nfs /dev/null "${net_setup_link}"
-		else
-			cp "${net_name_slot}" "${net_setup_link}"
-		fi
-		eend $?
-	fi
-
-	# http://cgit.freedesktop.org/systemd/systemd/commit/rules/50-udev-default.rules?id=3dff3e00e044e2d53c76fa842b9a4759d4a50e69
-	# https://bugs.gentoo.org/246847
-	# https://bugs.gentoo.org/514174
-	enewgroup input
-
-	# Update hwdb database in case the format is changed by udev version.
-	if has_version 'sys-apps/hwids[udev]'; then
-		udevadm hwdb --update --root="${ROOT%/}"
-		# Only reload when we are not upgrading to avoid potential race w/ incompatible hwdb.bin and the running udevd
-		# http://cgit.freedesktop.org/systemd/systemd/commit/?id=1fab57c209035f7e66198343074e9cee06718bda
-		[[ -z ${REPLACING_VERSIONS} ]] && udev_reload
-	fi
-}

diff --git a/sys-fs/udev/udev-224.ebuild b/sys-fs/udev/udev-224.ebuild
deleted file mode 100644
index 1703606..0000000
--- a/sys-fs/udev/udev-224.ebuild
+++ /dev/null
@@ -1,433 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-inherit autotools bash-completion-r1 eutils linux-info multilib multilib-minimal toolchain-funcs udev user versionator
-
-if [[ ${PV} = 9999* ]]; then
-	EGIT_REPO_URI="git://anongit.freedesktop.org/systemd/systemd"
-	inherit git-r3
-else
-	patchset=
-	SRC_URI="https://github.com/systemd/systemd/archive/v${PV}.tar.gz -> systemd-${PV}.tar.gz"
-	if [[ -n "${patchset}" ]]; then
-		SRC_URI+="
-			https://dev.gentoo.org/~ssuominen/${P}-patches-${patchset}.tar.xz
-			https://dev.gentoo.org/~williamh/dist/${P}-patches-${patchset}.tar.xz"
-	fi
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
-fi
-
-DESCRIPTION="Linux dynamic and persistent device naming support (aka userspace devfs)"
-HOMEPAGE="http://www.freedesktop.org/wiki/Software/systemd"
-
-LICENSE="LGPL-2.1 MIT GPL-2"
-SLOT="0"
-IUSE="acl +kmod selinux static-libs"
-
-RESTRICT="test"
-
-COMMON_DEPEND=">=sys-apps/util-linux-2.24
-	acl? ( sys-apps/acl )
-	kmod? ( >=sys-apps/kmod-16 )
-	selinux? ( >=sys-libs/libselinux-2.1.9 )
-	!<sys-libs/glibc-2.11
-	!sys-apps/gentoo-systemd-integration
-	!sys-apps/systemd
-	abi_x86_32? (
-		!<=app-emulation/emul-linux-x86-baselibs-20130224-r7
-		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
-	)"
-# Force new make >= -r4 to skip some parallel build issues
-DEPEND="${COMMON_DEPEND}
-	dev-util/gperf
-	>=dev-util/intltool-0.50
-	>=sys-apps/coreutils-8.16
-	sys-libs/libcap
-	virtual/os-headers
-	virtual/pkgconfig
-	>=sys-devel/make-3.82-r4
-	>=sys-kernel/linux-headers-3.9
-	app-text/docbook-xml-dtd:4.2
-	app-text/docbook-xml-dtd:4.5
-	app-text/docbook-xsl-stylesheets
-	dev-libs/libxslt"
-RDEPEND="${COMMON_DEPEND}
-	!<sys-fs/lvm2-2.02.103
-	!<sec-policy/selinux-base-2.20120725-r10"
-PDEPEND=">=sys-apps/hwids-20140304[udev]
-	>=sys-fs/udev-init-scripts-26"
-
-S=${WORKDIR}/systemd-${PV}
-
-# The multilib-build.eclass doesn't handle situation where the installed headers
-# are different in ABIs. In this case, we install libgudev headers in native
-# ABI but not for non-native ABI.
-multilib_check_headers() { :; }
-
-check_default_rules() {
-	# Make sure there are no sudden changes to upstream rules file
-	# (more for my own needs than anything else ...)
-	local udev_rules_md5=b8ad860dccae0ca51656b33c405ea2ca
-	MD5=$(md5sum < "${S}"/rules/50-udev-default.rules)
-	MD5=${MD5/  -/}
-	if [[ ${MD5} != ${udev_rules_md5} ]]; then
-		eerror "50-udev-default.rules has been updated, please validate!"
-		eerror "md5sum: ${MD5}"
-		die "50-udev-default.rules has been updated, please validate!"
-	fi
-}
-
-pkg_setup() {
-	if [[ ${MERGE_TYPE} != buildonly ]]; then
-		CONFIG_CHECK="~BLK_DEV_BSG ~DEVTMPFS ~!IDE ~INOTIFY_USER ~!SYSFS_DEPRECATED ~!SYSFS_DEPRECATED_V2 ~SIGNALFD ~EPOLL ~FHANDLE ~NET ~!FW_LOADER_USER_HELPER"
-		linux-info_pkg_setup
-
-		# CONFIG_FHANDLE was introduced by 2.6.39
-		local MINKV=2.6.39
-
-		if kernel_is -lt ${MINKV//./ }; then
-			eerror "Your running kernel is too old to run this version of ${P}"
-			eerror "You need to upgrade kernel at least to ${MINKV}"
-		fi
-
-		if kernel_is -lt 3 7; then
-			ewarn "Your running kernel is too old to have firmware loader and"
-			ewarn "this version of ${P} doesn't have userspace firmware loader"
-			ewarn "If you need firmware support, you need to upgrade kernel at least to 3.7"
-		fi
-	fi
-}
-
-src_prepare() {
-	if ! [[ ${PV} = 9999* ]]; then
-		# secure_getenv() disable for non-glibc systems wrt bug #443030
-		if ! [[ $(grep -r secure_getenv * | wc -l) -eq 25 ]]; then
-			eerror "The line count for secure_getenv() failed, see bug #443030"
-			die
-		fi
-	fi
-
-	# backport some patches
-	if [[ -n "${patchset}" ]]; then
-		EPATCH_SUFFIX=patch EPATCH_FORCE=yes epatch
-	fi
-
-	cat <<-EOF > "${T}"/40-gentoo.rules
-	# Gentoo specific floppy and usb groups
-	SUBSYSTEM=="block", KERNEL=="fd[0-9]", GROUP="floppy"
-	SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GROUP="usb"
-	EOF
-
-	# change rules back to group uucp instead of dialout for now wrt #454556
-	sed -i -e 's/GROUP="dialout"/GROUP="uucp"/' rules/*.rules || die
-
-	# stub out the am_path_libcrypt function
-	echo 'AC_DEFUN([AM_PATH_LIBGCRYPT],[:])' > m4/gcrypt.m4
-
-	# apply user patches
-	epatch_user
-
-	eautoreconf
-
-	if ! [[ ${PV} = 9999* ]]; then
-		check_default_rules
-	fi
-
-	# Restore possibility of running --enable-static wrt #472608
-	sed -i \
-		-e '/--enable-static is not supported by systemd/s:as_fn_error:echo:' \
-		configure || die
-
-	if ! use elibc_glibc; then #443030
-		echo '#define secure_getenv(x) NULL' >> config.h.in
-		sed -i -e '/error.*secure_getenv/s:.*:#define secure_getenv(x) NULL:' src/shared/missing.h || die
-	fi
-}
-
-multilib_src_configure() {
-	tc-export CC #463846
-	export cc_cv_CFLAGS__flto=no #502950
-	export cc_cv_CFLAGS__Werror_shadow=no #554454
-
-	# Keep sorted by ./configure --help and only pass --disable flags
-	# when *required* to avoid external deps or unnecessary compile
-	local econf_args
-	econf_args=(
-		ac_cv_search_cap_init=
-		--libdir=/usr/$(get_libdir)
-		--docdir=/usr/share/doc/${PF}
-		$(multilib_native_use_enable static-libs static)
-		--disable-nls
-		--disable-dbus
-		$(multilib_native_use_enable kmod)
-		--disable-xkbcommon
-		--disable-seccomp
-		$(multilib_native_use_enable selinux)
-		--disable-xz
-		--disable-lz4
-		--disable-pam
-		$(multilib_native_use_enable acl)
-		--disable-gcrypt
-		--disable-audit
-		--disable-libcryptsetup
-		--disable-qrencode
-		--disable-microhttpd
-		--disable-gnuefi
-		--disable-gnutls
-		--disable-libcurl
-		--disable-libidn
-		--disable-quotacheck
-		--disable-logind
-		--disable-polkit
-		--disable-myhostname
-		$(multilib_is_native_abi || echo "--disable-manpages")
-		--enable-split-usr
-		--without-python
-		--with-bashcompletiondir="$(get_bashcompdir)"
-		--with-rootprefix=
-		$(multilib_is_native_abi && echo "--with-rootlibdir=/$(get_libdir)")
-	)
-
-	if ! multilib_is_native_abi; then
-		econf_args+=(
-			MOUNT_{CFLAGS,LIBS}=' '
-		)
-	fi
-
-	ECONF_SOURCE=${S} econf "${econf_args[@]}"
-}
-
-multilib_src_compile() {
-	echo 'BUILT_SOURCES: $(BUILT_SOURCES)' > "${T}"/Makefile.extra
-	emake -f Makefile -f "${T}"/Makefile.extra BUILT_SOURCES
-
-	# Most of the parallel build problems were solved by >=sys-devel/make-3.82-r4,
-	# but not everything -- separate building of the binaries as a workaround,
-	# which will force internal libraries required for the helpers to be built
-	# early enough, like eg. libsystemd-shared.la
-	if multilib_is_native_abi; then
-		local lib_targets=( libudev.la )
-		emake "${lib_targets[@]}"
-
-		local exec_targets=(
-			systemd-udevd
-			udevadm
-		)
-		emake "${exec_targets[@]}"
-
-		local helper_targets=(
-			ata_id
-			cdrom_id
-			collect
-			scsi_id
-			v4l_id
-			mtd_probe
-		)
-		emake "${helper_targets[@]}"
-
-		local man_targets=(
-			man/udev.conf.5
-			man/systemd.link.5
-			man/udev.7
-			man/systemd-udevd.service.8
-			man/udevadm.8
-		)
-		emake "${man_targets[@]}"
-	else
-		local lib_targets=( libudev.la )
-		emake "${lib_targets[@]}"
-	fi
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		local lib_LTLIBRARIES="libudev.la" \
-			pkgconfiglib_DATA="src/libudev/libudev.pc"
-
-		local targets=(
-			install-libLTLIBRARIES
-			install-includeHEADERS
-			install-rootbinPROGRAMS
-			install-rootlibexecPROGRAMS
-			install-udevlibexecPROGRAMS
-			install-dist_udevconfDATA
-			install-dist_udevrulesDATA
-			install-pkgconfiglibDATA
-			install-pkgconfigdataDATA
-			install-dist_docDATA
-			libudev-install-hook
-			install-directories-hook
-			install-dist_bashcompletionDATA
-			install-dist_networkDATA
-		)
-
-		# add final values of variables:
-		targets+=(
-			rootlibexec_PROGRAMS=systemd-udevd
-			rootbin_PROGRAMS=udevadm
-			lib_LTLIBRARIES="${lib_LTLIBRARIES}"
-			pkgconfiglib_DATA="${pkgconfiglib_DATA}"
-			pkgconfigdata_DATA="src/udev/udev.pc"
-			INSTALL_DIRS='$(sysconfdir)/udev/rules.d \
-					$(sysconfdir)/udev/hwdb.d \
-					$(sysconfdir)/systemd/network'
-			dist_bashcompletion_DATA="shell-completion/bash/udevadm"
-			dist_network_DATA="network/99-default.link"
-		)
-		emake -j1 DESTDIR="${D}" "${targets[@]}"
-		doman man/{udev.conf.5,systemd.link.5,udev.7,systemd-udevd.service.8,udevadm.8}
-	else
-		local lib_LTLIBRARIES="libudev.la" \
-			pkgconfiglib_DATA="src/libudev/libudev.pc" \
-			include_HEADERS="src/libudev/libudev.h"
-
-		local targets=(
-			install-libLTLIBRARIES
-			install-includeHEADERS
-			install-pkgconfiglibDATA
-		)
-
-		targets+=(
-			lib_LTLIBRARIES="${lib_LTLIBRARIES}"
-			pkgconfiglib_DATA="${pkgconfiglib_DATA}"
-			include_HEADERS="${include_HEADERS}"
-			)
-		emake -j1 DESTDIR="${D}" "${targets[@]}"
-	fi
-}
-
-multilib_src_install_all() {
-	dodoc TODO
-
-	prune_libtool_files --all
-	rm -f \
-		"${D}"/lib/udev/rules.d/99-systemd.rules \
-		"${D}"/usr/share/doc/${PF}/{LICENSE.*,GVARIANT-SERIALIZATION,DIFFERENCES,PORTING-DBUS1,sd-shutdown.h}
-
-	# see src_prepare() for content of 40-gentoo.rules
-	insinto /lib/udev/rules.d
-	doins "${T}"/40-gentoo.rules
-
-	# maintainer note: by not letting the upstream build-sys create the .so
-	# link, you also avoid a parallel make problem
-	mv "${D}"/usr/share/man/man8/systemd-udevd{.service,}.8
-}
-
-pkg_postinst() {
-	mkdir -p "${ROOT%/}"/run
-
-	# "losetup -f" is confused if there is an empty /dev/loop/, Bug #338766
-	# So try to remove it here (will only work if empty).
-	rmdir "${ROOT%/}"/dev/loop 2>/dev/null
-	if [[ -d ${ROOT%/}/dev/loop ]]; then
-		ewarn "Please make sure your remove /dev/loop,"
-		ewarn "else losetup may be confused when looking for unused devices."
-	fi
-
-	local fstab="${ROOT%/}"/etc/fstab dev path fstype rest
-	while read -r dev path fstype rest; do
-		if [[ ${path} == /dev && ${fstype} != devtmpfs ]]; then
-			ewarn "You need to edit your /dev line in ${fstab} to have devtmpfs"
-			ewarn "filesystem. Otherwise udev won't be able to boot."
-			ewarn "See, https://bugs.gentoo.org/453186"
-		fi
-	done < "${fstab}"
-
-	if [[ -d ${ROOT%/}/usr/lib/udev ]]; then
-		ewarn
-		ewarn "Please re-emerge all packages on your system which install"
-		ewarn "rules and helpers in /usr/lib/udev. They should now be in"
-		ewarn "/lib/udev."
-		ewarn
-		ewarn "One way to do this is to run the following command:"
-		ewarn "emerge -av1 \$(qfile -q -S -C /usr/lib/udev)"
-		ewarn "Note that qfile can be found in app-portage/portage-utils"
-	fi
-
-	local old_cd_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-cd.rules
-	local old_net_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-net.rules
-	for old_rules in "${old_cd_rules}" "${old_net_rules}"; do
-		if [[ -f ${old_rules} ]]; then
-			ewarn
-			ewarn "File ${old_rules} is from old udev installation but if you still use it,"
-			ewarn "rename it to something else starting with 70- to silence this deprecation"
-			ewarn "warning."
-		fi
-	done
-
-	elog
-	elog "Starting from version >= 197 the new predictable network interface names are"
-	elog "used by default, see:"
-	elog "http://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames"
-	elog "http://cgit.freedesktop.org/systemd/systemd/tree/src/udev/udev-builtin-net_id.c"
-	elog
-	elog "Example command to get the information for the new interface name before booting"
-	elog "(replace <ifname> with, for example, eth0):"
-	elog "# udevadm test-builtin net_id /sys/class/net/<ifname> 2> /dev/null"
-	elog
-	elog "You can use either kernel parameter \"net.ifnames=0\", create empty"
-	elog "file /etc/systemd/network/99-default.link, or symlink it to /dev/null"
-	elog "to disable the feature."
-
-	if has_version 'sys-apps/biosdevname'; then
-		ewarn
-		ewarn "You can replace the functionality of sys-apps/biosdevname which has been"
-		ewarn "detected to be installed with the new predictable network interface names."
-	fi
-
-	ewarn
-	ewarn "You need to restart udev as soon as possible to make the upgrade go"
-	ewarn "into effect."
-	ewarn "The method you use to do this depends on your init system."
-	if has_version 'sys-apps/openrc'; then
-		ewarn "For sys-apps/openrc users it is:"
-		ewarn "# /etc/init.d/udev --nodeps restart"
-	fi
-
-	elog
-	elog "For more information on udev on Gentoo, upgrading, writing udev rules, and"
-	elog "fixing known issues visit:"
-	elog "https://wiki.gentoo.org/wiki/Udev"
-	elog "https://wiki.gentoo.org/wiki/Udev/upgrade"
-
-	# If user has disabled 80-net-name-slot.rules using a empty file or a symlink to /dev/null,
-	# do the same for 80-net-setup-link.rules to keep the old behavior
-	local net_move=no
-	local net_name_slot_sym=no
-	local net_rules_path="${ROOT%/}"/etc/udev/rules.d
-	local net_name_slot="${net_rules_path}"/80-net-name-slot.rules
-	local net_setup_link="${net_rules_path}"/80-net-setup-link.rules
-	if [[ ! -e ${net_setup_link} ]]; then
-		[[ -f ${net_name_slot} && $(sed -e "/^#/d" -e "/^\W*$/d" ${net_name_slot} | wc -l) == 0 ]] && net_move=yes
-		if [[ -L ${net_name_slot} && $(readlink ${net_name_slot}) == /dev/null ]]; then
-			net_move=yes
-			net_name_slot_sym=yes
-		fi
-	fi
-	if [[ ${net_move} == yes ]]; then
-		ebegin "Copying ${net_name_slot} to ${net_setup_link}"
-
-		if [[ ${net_name_slot_sym} == yes ]]; then
-			ln -nfs /dev/null "${net_setup_link}"
-		else
-			cp "${net_name_slot}" "${net_setup_link}"
-		fi
-		eend $?
-	fi
-
-	# http://cgit.freedesktop.org/systemd/systemd/commit/rules/50-udev-default.rules?id=3dff3e00e044e2d53c76fa842b9a4759d4a50e69
-	# https://bugs.gentoo.org/246847
-	# https://bugs.gentoo.org/514174
-	enewgroup input
-
-	# Update hwdb database in case the format is changed by udev version.
-	if has_version 'sys-apps/hwids[udev]'; then
-		udevadm hwdb --update --root="${ROOT%/}"
-		# Only reload when we are not upgrading to avoid potential race w/ incompatible hwdb.bin and the running udevd
-		# http://cgit.freedesktop.org/systemd/systemd/commit/?id=1fab57c209035f7e66198343074e9cee06718bda
-		[[ -z ${REPLACING_VERSIONS} ]] && udev_reload
-	fi
-}

diff --git a/sys-fs/udev/udev-229-r1.ebuild b/sys-fs/udev/udev-229-r1.ebuild
deleted file mode 100644
index 53876e6..0000000
--- a/sys-fs/udev/udev-229-r1.ebuild
+++ /dev/null
@@ -1,440 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-inherit autotools bash-completion-r1 eutils linux-info multilib multilib-minimal toolchain-funcs udev user versionator
-
-if [[ ${PV} = 9999* ]]; then
-	EGIT_REPO_URI="git://anongit.freedesktop.org/systemd/systemd"
-	inherit git-r3
-else
-	patchset=
-	SRC_URI="https://github.com/systemd/systemd/archive/v${PV}.tar.gz -> systemd-${PV}.tar.gz"
-	if [[ -n "${patchset}" ]]; then
-		SRC_URI+="
-			https://dev.gentoo.org/~ssuominen/${P}-patches-${patchset}.tar.xz
-			https://dev.gentoo.org/~williamh/dist/${P}-patches-${patchset}.tar.xz"
-	fi
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
-fi
-
-DESCRIPTION="Linux dynamic and persistent device naming support (aka userspace devfs)"
-HOMEPAGE="http://www.freedesktop.org/wiki/Software/systemd"
-
-LICENSE="LGPL-2.1 MIT GPL-2"
-SLOT="0"
-IUSE="acl +kmod selinux static-libs"
-
-RESTRICT="test"
-
-COMMON_DEPEND=">=sys-apps/util-linux-2.27.1[${MULTILIB_USEDEP}]
-	sys-libs/libcap[${MULTILIB_USEDEP}]
-	acl? ( sys-apps/acl )
-	kmod? ( >=sys-apps/kmod-16 )
-	selinux? ( >=sys-libs/libselinux-2.1.9 )
-	!<sys-libs/glibc-2.11
-	!sys-apps/gentoo-systemd-integration
-	!sys-apps/systemd
-	abi_x86_32? (
-		!<=app-emulation/emul-linux-x86-baselibs-20130224-r7
-		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
-	)"
-# Force new make >= -r4 to skip some parallel build issues
-DEPEND="${COMMON_DEPEND}
-	dev-util/gperf
-	>=dev-util/intltool-0.50
-	>=sys-apps/coreutils-8.16
-	virtual/os-headers
-	virtual/pkgconfig
-	>=sys-devel/make-3.82-r4
-	>=sys-kernel/linux-headers-3.9
-	app-text/docbook-xml-dtd:4.2
-	app-text/docbook-xml-dtd:4.5
-	app-text/docbook-xsl-stylesheets
-	dev-libs/libxslt"
-RDEPEND="${COMMON_DEPEND}
-	!<sys-fs/lvm2-2.02.103
-	!<sec-policy/selinux-base-2.20120725-r10"
-PDEPEND=">=sys-apps/hwids-20140304[udev]
-	>=sys-fs/udev-init-scripts-26"
-
-S=${WORKDIR}/systemd-${PV}
-
-# The multilib-build.eclass doesn't handle situation where the installed headers
-# are different in ABIs. In this case, we install libgudev headers in native
-# ABI but not for non-native ABI.
-multilib_check_headers() { :; }
-
-check_default_rules() {
-	# Make sure there are no sudden changes to upstream rules file
-	# (more for my own needs than anything else ...)
-	local udev_rules_md5=b8ad860dccae0ca51656b33c405ea2ca
-	MD5=$(md5sum < "${S}"/rules/50-udev-default.rules)
-	MD5=${MD5/  -/}
-	if [[ ${MD5} != ${udev_rules_md5} ]]; then
-		eerror "50-udev-default.rules has been updated, please validate!"
-		eerror "md5sum: ${MD5}"
-		die "50-udev-default.rules has been updated, please validate!"
-	fi
-}
-
-pkg_setup() {
-	if [[ ${MERGE_TYPE} != buildonly ]]; then
-		CONFIG_CHECK="~BLK_DEV_BSG ~DEVTMPFS ~!IDE ~INOTIFY_USER ~!SYSFS_DEPRECATED ~!SYSFS_DEPRECATED_V2 ~SIGNALFD ~EPOLL ~FHANDLE ~NET ~!FW_LOADER_USER_HELPER"
-		linux-info_pkg_setup
-
-		# CONFIG_FHANDLE was introduced by 2.6.39
-		local MINKV=2.6.39
-
-		if kernel_is -lt ${MINKV//./ }; then
-			eerror "Your running kernel is too old to run this version of ${P}"
-			eerror "You need to upgrade kernel at least to ${MINKV}"
-		fi
-
-		if kernel_is -lt 3 7; then
-			ewarn "Your running kernel is too old to have firmware loader and"
-			ewarn "this version of ${P} doesn't have userspace firmware loader"
-			ewarn "If you need firmware support, you need to upgrade kernel at least to 3.7"
-		fi
-	fi
-}
-
-src_prepare() {
-	if ! [[ ${PV} = 9999* ]]; then
-		# secure_getenv() disable for non-glibc systems wrt bug #443030
-		if ! [[ $(grep -r secure_getenv * | wc -l) -eq 26 ]]; then
-			eerror "The line count for secure_getenv() failed, see bug #443030"
-			die
-		fi
-	fi
-
-	# backport some patches
-	if [[ -n "${patchset}" ]]; then
-		EPATCH_SUFFIX=patch EPATCH_FORCE=yes epatch
-	fi
-
-	cat <<-EOF > "${T}"/40-gentoo.rules
-	# Gentoo specific floppy and usb groups
-	ACTION=="add", SUBSYSTEM=="block", KERNEL=="fd[0-9]", GROUP="floppy"
-	ACTION=="add", SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GROUP="usb"
-	EOF
-
-	# change rules back to group uucp instead of dialout for now wrt #454556
-	sed -i -e 's/GROUP="dialout"/GROUP="uucp"/' rules/*.rules || die
-
-	# stub out the am_path_libcrypt function
-	echo 'AC_DEFUN([AM_PATH_LIBGCRYPT],[:])' > m4/gcrypt.m4
-
-	# apply user patches
-	epatch_user
-
-	eautoreconf
-
-	if ! [[ ${PV} = 9999* ]]; then
-		check_default_rules
-	fi
-
-	# Restore possibility of running --enable-static wrt #472608
-	sed -i \
-		-e '/--enable-static is not supported by systemd/s:as_fn_error:echo:' \
-		configure || die
-
-	if ! use elibc_glibc; then #443030
-		echo '#define secure_getenv(x) NULL' >> config.h.in
-		sed -i -e '/error.*secure_getenv/s:.*:#define secure_getenv(x) NULL:' src/shared/missing.h || die
-	fi
-}
-
-src_configure() {
-	# Prevent conflicts with i686 cross toolchain, bug 559726
-	tc-export AR CC NM OBJCOPY RANLIB
-	multilib-minimal_src_configure
-}
-
-multilib_src_configure() {
-	tc-export CC #463846
-	export cc_cv_CFLAGS__flto=no #502950
-	export cc_cv_CFLAGS__Werror_shadow=no #554454
-	export cc_cv_LDFLAGS__Wl__fuse_ld_gold=no #573874
-
-	# Keep sorted by ./configure --help and only pass --disable flags
-	# when *required* to avoid external deps or unnecessary compile
-	local econf_args
-	econf_args=(
-		--libdir=/usr/$(get_libdir)
-		--docdir=/usr/share/doc/${PF}
-		$(multilib_native_use_enable static-libs static)
-		--disable-nls
-		--disable-dbus
-		$(multilib_native_use_enable kmod)
-		--disable-xkbcommon
-		--disable-seccomp
-		$(multilib_native_use_enable selinux)
-		--disable-xz
-		--disable-lz4
-		--disable-pam
-		$(multilib_native_use_enable acl)
-		--disable-gcrypt
-		--disable-audit
-		--disable-libcryptsetup
-		--disable-qrencode
-		--disable-microhttpd
-		--disable-gnuefi
-		--disable-gnutls
-		--disable-libcurl
-		--disable-libidn
-		--disable-quotacheck
-		--disable-logind
-		--disable-polkit
-		--disable-myhostname
-		$(multilib_is_native_abi || echo "--disable-manpages")
-		--enable-split-usr
-		--without-python
-		--with-bashcompletiondir="$(get_bashcompdir)"
-		--with-rootprefix=
-		$(multilib_is_native_abi && echo "--with-rootlibdir=/$(get_libdir)")
-		--disable-elfutils
-	)
-
-	if ! multilib_is_native_abi; then
-		econf_args+=(
-			MOUNT_{CFLAGS,LIBS}=' '
-		)
-	fi
-
-	ECONF_SOURCE=${S} econf "${econf_args[@]}"
-}
-
-multilib_src_compile() {
-	echo 'BUILT_SOURCES: $(BUILT_SOURCES)' > "${T}"/Makefile.extra
-	emake -f Makefile -f "${T}"/Makefile.extra BUILT_SOURCES
-
-	# Most of the parallel build problems were solved by >=sys-devel/make-3.82-r4,
-	# but not everything -- separate building of the binaries as a workaround,
-	# which will force internal libraries required for the helpers to be built
-	# early enough, like eg. libsystemd-shared.la
-	if multilib_is_native_abi; then
-		local lib_targets=( libudev.la )
-		emake "${lib_targets[@]}"
-
-		local exec_targets=(
-			systemd-udevd
-			udevadm
-		)
-		emake "${exec_targets[@]}"
-
-		local helper_targets=(
-			ata_id
-			cdrom_id
-			collect
-			scsi_id
-			v4l_id
-			mtd_probe
-		)
-		emake "${helper_targets[@]}"
-
-		local man_targets=(
-			man/udev.conf.5
-			man/systemd.link.5
-			man/udev.7
-			man/systemd-udevd.service.8
-			man/udevadm.8
-		)
-		emake "${man_targets[@]}"
-	else
-		local lib_targets=( libudev.la )
-		emake "${lib_targets[@]}"
-	fi
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		local lib_LTLIBRARIES="libudev.la" \
-			pkgconfiglib_DATA="src/libudev/libudev.pc"
-
-		local targets=(
-			install-libLTLIBRARIES
-			install-includeHEADERS
-			install-rootbinPROGRAMS
-			install-rootlibexecPROGRAMS
-			install-udevlibexecPROGRAMS
-			install-dist_udevconfDATA
-			install-dist_udevrulesDATA
-			install-pkgconfiglibDATA
-			install-pkgconfigdataDATA
-			install-dist_docDATA
-			libudev-install-hook
-			install-directories-hook
-			install-dist_bashcompletionDATA
-			install-dist_networkDATA
-		)
-
-		# add final values of variables:
-		targets+=(
-			rootlibexec_PROGRAMS=systemd-udevd
-			rootbin_PROGRAMS=udevadm
-			lib_LTLIBRARIES="${lib_LTLIBRARIES}"
-			pkgconfiglib_DATA="${pkgconfiglib_DATA}"
-			pkgconfigdata_DATA="src/udev/udev.pc"
-			INSTALL_DIRS='$(sysconfdir)/udev/rules.d \
-					$(sysconfdir)/udev/hwdb.d \
-					$(sysconfdir)/systemd/network'
-			dist_bashcompletion_DATA="shell-completion/bash/udevadm"
-			dist_network_DATA="network/99-default.link"
-		)
-		emake -j1 DESTDIR="${D}" "${targets[@]}"
-		doman man/{udev.conf.5,systemd.link.5,udev.7,systemd-udevd.service.8,udevadm.8}
-	else
-		local lib_LTLIBRARIES="libudev.la" \
-			pkgconfiglib_DATA="src/libudev/libudev.pc" \
-			include_HEADERS="src/libudev/libudev.h"
-
-		local targets=(
-			install-libLTLIBRARIES
-			install-includeHEADERS
-			install-pkgconfiglibDATA
-		)
-
-		targets+=(
-			lib_LTLIBRARIES="${lib_LTLIBRARIES}"
-			pkgconfiglib_DATA="${pkgconfiglib_DATA}"
-			include_HEADERS="${include_HEADERS}"
-			)
-		emake -j1 DESTDIR="${D}" "${targets[@]}"
-	fi
-}
-
-multilib_src_install_all() {
-	dodoc TODO
-
-	prune_libtool_files --all
-	rm -f \
-		"${D}"/lib/udev/rules.d/99-systemd.rules \
-		"${D}"/usr/share/doc/${PF}/{LICENSE.*,GVARIANT-SERIALIZATION,DIFFERENCES,PORTING-DBUS1,sd-shutdown.h}
-
-	# see src_prepare() for content of 40-gentoo.rules
-	insinto /lib/udev/rules.d
-	doins "${T}"/40-gentoo.rules
-
-	# maintainer note: by not letting the upstream build-sys create the .so
-	# link, you also avoid a parallel make problem
-	mv "${D}"/usr/share/man/man8/systemd-udevd{.service,}.8
-}
-
-pkg_postinst() {
-	mkdir -p "${ROOT%/}"/run
-
-	# "losetup -f" is confused if there is an empty /dev/loop/, Bug #338766
-	# So try to remove it here (will only work if empty).
-	rmdir "${ROOT%/}"/dev/loop 2>/dev/null
-	if [[ -d ${ROOT%/}/dev/loop ]]; then
-		ewarn "Please make sure your remove /dev/loop,"
-		ewarn "else losetup may be confused when looking for unused devices."
-	fi
-
-	local fstab="${ROOT%/}"/etc/fstab dev path fstype rest
-	while read -r dev path fstype rest; do
-		if [[ ${path} == /dev && ${fstype} != devtmpfs ]]; then
-			ewarn "You need to edit your /dev line in ${fstab} to have devtmpfs"
-			ewarn "filesystem. Otherwise udev won't be able to boot."
-			ewarn "See, https://bugs.gentoo.org/453186"
-		fi
-	done < "${fstab}"
-
-	if [[ -d ${ROOT%/}/usr/lib/udev ]]; then
-		ewarn
-		ewarn "Please re-emerge all packages on your system which install"
-		ewarn "rules and helpers in /usr/lib/udev. They should now be in"
-		ewarn "/lib/udev."
-		ewarn
-		ewarn "One way to do this is to run the following command:"
-		ewarn "emerge -av1 \$(qfile -q -S -C /usr/lib/udev)"
-		ewarn "Note that qfile can be found in app-portage/portage-utils"
-	fi
-
-	local old_cd_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-cd.rules
-	local old_net_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-net.rules
-	for old_rules in "${old_cd_rules}" "${old_net_rules}"; do
-		if [[ -f ${old_rules} ]]; then
-			ewarn
-			ewarn "File ${old_rules} is from old udev installation but if you still use it,"
-			ewarn "rename it to something else starting with 70- to silence this deprecation"
-			ewarn "warning."
-		fi
-	done
-
-	elog
-	elog "Starting from version >= 197 the new predictable network interface names are"
-	elog "used by default, see:"
-	elog "http://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames"
-	elog "http://cgit.freedesktop.org/systemd/systemd/tree/src/udev/udev-builtin-net_id.c"
-	elog
-	elog "Example command to get the information for the new interface name before booting"
-	elog "(replace <ifname> with, for example, eth0):"
-	elog "# udevadm test-builtin net_id /sys/class/net/<ifname> 2> /dev/null"
-	elog
-	elog "You can use either kernel parameter \"net.ifnames=0\", create empty"
-	elog "file /etc/systemd/network/99-default.link, or symlink it to /dev/null"
-	elog "to disable the feature."
-
-	if has_version 'sys-apps/biosdevname'; then
-		ewarn
-		ewarn "You can replace the functionality of sys-apps/biosdevname which has been"
-		ewarn "detected to be installed with the new predictable network interface names."
-	fi
-
-	ewarn
-	ewarn "You need to restart udev as soon as possible to make the upgrade go"
-	ewarn "into effect."
-	ewarn "The method you use to do this depends on your init system."
-	if has_version 'sys-apps/openrc'; then
-		ewarn "For sys-apps/openrc users it is:"
-		ewarn "# /etc/init.d/udev --nodeps restart"
-	fi
-
-	elog
-	elog "For more information on udev on Gentoo, upgrading, writing udev rules, and"
-	elog "fixing known issues visit:"
-	elog "https://wiki.gentoo.org/wiki/Udev"
-	elog "https://wiki.gentoo.org/wiki/Udev/upgrade"
-
-	# If user has disabled 80-net-name-slot.rules using a empty file or a symlink to /dev/null,
-	# do the same for 80-net-setup-link.rules to keep the old behavior
-	local net_move=no
-	local net_name_slot_sym=no
-	local net_rules_path="${ROOT%/}"/etc/udev/rules.d
-	local net_name_slot="${net_rules_path}"/80-net-name-slot.rules
-	local net_setup_link="${net_rules_path}"/80-net-setup-link.rules
-	if [[ ! -e ${net_setup_link} ]]; then
-		[[ -f ${net_name_slot} && $(sed -e "/^#/d" -e "/^\W*$/d" ${net_name_slot} | wc -l) == 0 ]] && net_move=yes
-		if [[ -L ${net_name_slot} && $(readlink ${net_name_slot}) == /dev/null ]]; then
-			net_move=yes
-			net_name_slot_sym=yes
-		fi
-	fi
-	if [[ ${net_move} == yes ]]; then
-		ebegin "Copying ${net_name_slot} to ${net_setup_link}"
-
-		if [[ ${net_name_slot_sym} == yes ]]; then
-			ln -nfs /dev/null "${net_setup_link}"
-		else
-			cp "${net_name_slot}" "${net_setup_link}"
-		fi
-		eend $?
-	fi
-
-	# http://cgit.freedesktop.org/systemd/systemd/commit/rules/50-udev-default.rules?id=3dff3e00e044e2d53c76fa842b9a4759d4a50e69
-	# https://bugs.gentoo.org/246847
-	# https://bugs.gentoo.org/514174
-	enewgroup input
-
-	# Update hwdb database in case the format is changed by udev version.
-	if has_version 'sys-apps/hwids[udev]'; then
-		udevadm hwdb --update --root="${ROOT%/}"
-		# Only reload when we are not upgrading to avoid potential race w/ incompatible hwdb.bin and the running udevd
-		# http://cgit.freedesktop.org/systemd/systemd/commit/?id=1fab57c209035f7e66198343074e9cee06718bda
-		[[ -z ${REPLACING_VERSIONS} ]] && udev_reload
-	fi
-}

diff --git a/sys-fs/udev/udev-229.ebuild b/sys-fs/udev/udev-229.ebuild
deleted file mode 100644
index 357e82a..0000000
--- a/sys-fs/udev/udev-229.ebuild
+++ /dev/null
@@ -1,440 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-inherit autotools bash-completion-r1 eutils linux-info multilib multilib-minimal toolchain-funcs udev user versionator
-
-if [[ ${PV} = 9999* ]]; then
-	EGIT_REPO_URI="git://anongit.freedesktop.org/systemd/systemd"
-	inherit git-r3
-else
-	patchset=
-	SRC_URI="https://github.com/systemd/systemd/archive/v${PV}.tar.gz -> systemd-${PV}.tar.gz"
-	if [[ -n "${patchset}" ]]; then
-		SRC_URI+="
-			https://dev.gentoo.org/~ssuominen/${P}-patches-${patchset}.tar.xz
-			https://dev.gentoo.org/~williamh/dist/${P}-patches-${patchset}.tar.xz"
-	fi
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
-fi
-
-DESCRIPTION="Linux dynamic and persistent device naming support (aka userspace devfs)"
-HOMEPAGE="http://www.freedesktop.org/wiki/Software/systemd"
-
-LICENSE="LGPL-2.1 MIT GPL-2"
-SLOT="0"
-IUSE="acl +kmod selinux static-libs"
-
-RESTRICT="test"
-
-COMMON_DEPEND=">=sys-apps/util-linux-2.27.1[${MULTILIB_USEDEP}]
-	sys-libs/libcap[${MULTILIB_USEDEP}]
-	acl? ( sys-apps/acl )
-	kmod? ( >=sys-apps/kmod-16 )
-	selinux? ( >=sys-libs/libselinux-2.1.9 )
-	!<sys-libs/glibc-2.11
-	!sys-apps/gentoo-systemd-integration
-	!sys-apps/systemd
-	abi_x86_32? (
-		!<=app-emulation/emul-linux-x86-baselibs-20130224-r7
-		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
-	)"
-# Force new make >= -r4 to skip some parallel build issues
-DEPEND="${COMMON_DEPEND}
-	dev-util/gperf
-	>=dev-util/intltool-0.50
-	>=sys-apps/coreutils-8.16
-	virtual/os-headers
-	virtual/pkgconfig
-	>=sys-devel/make-3.82-r4
-	>=sys-kernel/linux-headers-3.9
-	app-text/docbook-xml-dtd:4.2
-	app-text/docbook-xml-dtd:4.5
-	app-text/docbook-xsl-stylesheets
-	dev-libs/libxslt"
-RDEPEND="${COMMON_DEPEND}
-	!<sys-fs/lvm2-2.02.103
-	!<sec-policy/selinux-base-2.20120725-r10"
-PDEPEND=">=sys-apps/hwids-20140304[udev]
-	>=sys-fs/udev-init-scripts-26"
-
-S=${WORKDIR}/systemd-${PV}
-
-# The multilib-build.eclass doesn't handle situation where the installed headers
-# are different in ABIs. In this case, we install libgudev headers in native
-# ABI but not for non-native ABI.
-multilib_check_headers() { :; }
-
-check_default_rules() {
-	# Make sure there are no sudden changes to upstream rules file
-	# (more for my own needs than anything else ...)
-	local udev_rules_md5=b8ad860dccae0ca51656b33c405ea2ca
-	MD5=$(md5sum < "${S}"/rules/50-udev-default.rules)
-	MD5=${MD5/  -/}
-	if [[ ${MD5} != ${udev_rules_md5} ]]; then
-		eerror "50-udev-default.rules has been updated, please validate!"
-		eerror "md5sum: ${MD5}"
-		die "50-udev-default.rules has been updated, please validate!"
-	fi
-}
-
-pkg_setup() {
-	if [[ ${MERGE_TYPE} != buildonly ]]; then
-		CONFIG_CHECK="~BLK_DEV_BSG ~DEVTMPFS ~!IDE ~INOTIFY_USER ~!SYSFS_DEPRECATED ~!SYSFS_DEPRECATED_V2 ~SIGNALFD ~EPOLL ~FHANDLE ~NET ~!FW_LOADER_USER_HELPER"
-		linux-info_pkg_setup
-
-		# CONFIG_FHANDLE was introduced by 2.6.39
-		local MINKV=2.6.39
-
-		if kernel_is -lt ${MINKV//./ }; then
-			eerror "Your running kernel is too old to run this version of ${P}"
-			eerror "You need to upgrade kernel at least to ${MINKV}"
-		fi
-
-		if kernel_is -lt 3 7; then
-			ewarn "Your running kernel is too old to have firmware loader and"
-			ewarn "this version of ${P} doesn't have userspace firmware loader"
-			ewarn "If you need firmware support, you need to upgrade kernel at least to 3.7"
-		fi
-	fi
-}
-
-src_prepare() {
-	if ! [[ ${PV} = 9999* ]]; then
-		# secure_getenv() disable for non-glibc systems wrt bug #443030
-		if ! [[ $(grep -r secure_getenv * | wc -l) -eq 26 ]]; then
-			eerror "The line count for secure_getenv() failed, see bug #443030"
-			die
-		fi
-	fi
-
-	# backport some patches
-	if [[ -n "${patchset}" ]]; then
-		EPATCH_SUFFIX=patch EPATCH_FORCE=yes epatch
-	fi
-
-	cat <<-EOF > "${T}"/40-gentoo.rules
-	# Gentoo specific floppy and usb groups
-	SUBSYSTEM=="block", KERNEL=="fd[0-9]", GROUP="floppy"
-	SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GROUP="usb"
-	EOF
-
-	# change rules back to group uucp instead of dialout for now wrt #454556
-	sed -i -e 's/GROUP="dialout"/GROUP="uucp"/' rules/*.rules || die
-
-	# stub out the am_path_libcrypt function
-	echo 'AC_DEFUN([AM_PATH_LIBGCRYPT],[:])' > m4/gcrypt.m4
-
-	# apply user patches
-	epatch_user
-
-	eautoreconf
-
-	if ! [[ ${PV} = 9999* ]]; then
-		check_default_rules
-	fi
-
-	# Restore possibility of running --enable-static wrt #472608
-	sed -i \
-		-e '/--enable-static is not supported by systemd/s:as_fn_error:echo:' \
-		configure || die
-
-	if ! use elibc_glibc; then #443030
-		echo '#define secure_getenv(x) NULL' >> config.h.in
-		sed -i -e '/error.*secure_getenv/s:.*:#define secure_getenv(x) NULL:' src/shared/missing.h || die
-	fi
-}
-
-src_configure() {
-	# Prevent conflicts with i686 cross toolchain, bug 559726
-	tc-export AR CC NM OBJCOPY RANLIB
-	multilib-minimal_src_configure
-}
-
-multilib_src_configure() {
-	tc-export CC #463846
-	export cc_cv_CFLAGS__flto=no #502950
-	export cc_cv_CFLAGS__Werror_shadow=no #554454
-	export cc_cv_LDFLAGS__Wl__fuse_ld_gold=no #573874
-
-	# Keep sorted by ./configure --help and only pass --disable flags
-	# when *required* to avoid external deps or unnecessary compile
-	local econf_args
-	econf_args=(
-		--libdir=/usr/$(get_libdir)
-		--docdir=/usr/share/doc/${PF}
-		$(multilib_native_use_enable static-libs static)
-		--disable-nls
-		--disable-dbus
-		$(multilib_native_use_enable kmod)
-		--disable-xkbcommon
-		--disable-seccomp
-		$(multilib_native_use_enable selinux)
-		--disable-xz
-		--disable-lz4
-		--disable-pam
-		$(multilib_native_use_enable acl)
-		--disable-gcrypt
-		--disable-audit
-		--disable-libcryptsetup
-		--disable-qrencode
-		--disable-microhttpd
-		--disable-gnuefi
-		--disable-gnutls
-		--disable-libcurl
-		--disable-libidn
-		--disable-quotacheck
-		--disable-logind
-		--disable-polkit
-		--disable-myhostname
-		$(multilib_is_native_abi || echo "--disable-manpages")
-		--enable-split-usr
-		--without-python
-		--with-bashcompletiondir="$(get_bashcompdir)"
-		--with-rootprefix=
-		$(multilib_is_native_abi && echo "--with-rootlibdir=/$(get_libdir)")
-		--disable-elfutils
-	)
-
-	if ! multilib_is_native_abi; then
-		econf_args+=(
-			MOUNT_{CFLAGS,LIBS}=' '
-		)
-	fi
-
-	ECONF_SOURCE=${S} econf "${econf_args[@]}"
-}
-
-multilib_src_compile() {
-	echo 'BUILT_SOURCES: $(BUILT_SOURCES)' > "${T}"/Makefile.extra
-	emake -f Makefile -f "${T}"/Makefile.extra BUILT_SOURCES
-
-	# Most of the parallel build problems were solved by >=sys-devel/make-3.82-r4,
-	# but not everything -- separate building of the binaries as a workaround,
-	# which will force internal libraries required for the helpers to be built
-	# early enough, like eg. libsystemd-shared.la
-	if multilib_is_native_abi; then
-		local lib_targets=( libudev.la )
-		emake "${lib_targets[@]}"
-
-		local exec_targets=(
-			systemd-udevd
-			udevadm
-		)
-		emake "${exec_targets[@]}"
-
-		local helper_targets=(
-			ata_id
-			cdrom_id
-			collect
-			scsi_id
-			v4l_id
-			mtd_probe
-		)
-		emake "${helper_targets[@]}"
-
-		local man_targets=(
-			man/udev.conf.5
-			man/systemd.link.5
-			man/udev.7
-			man/systemd-udevd.service.8
-			man/udevadm.8
-		)
-		emake "${man_targets[@]}"
-	else
-		local lib_targets=( libudev.la )
-		emake "${lib_targets[@]}"
-	fi
-}
-
-multilib_src_install() {
-	if multilib_is_native_abi; then
-		local lib_LTLIBRARIES="libudev.la" \
-			pkgconfiglib_DATA="src/libudev/libudev.pc"
-
-		local targets=(
-			install-libLTLIBRARIES
-			install-includeHEADERS
-			install-rootbinPROGRAMS
-			install-rootlibexecPROGRAMS
-			install-udevlibexecPROGRAMS
-			install-dist_udevconfDATA
-			install-dist_udevrulesDATA
-			install-pkgconfiglibDATA
-			install-pkgconfigdataDATA
-			install-dist_docDATA
-			libudev-install-hook
-			install-directories-hook
-			install-dist_bashcompletionDATA
-			install-dist_networkDATA
-		)
-
-		# add final values of variables:
-		targets+=(
-			rootlibexec_PROGRAMS=systemd-udevd
-			rootbin_PROGRAMS=udevadm
-			lib_LTLIBRARIES="${lib_LTLIBRARIES}"
-			pkgconfiglib_DATA="${pkgconfiglib_DATA}"
-			pkgconfigdata_DATA="src/udev/udev.pc"
-			INSTALL_DIRS='$(sysconfdir)/udev/rules.d \
-					$(sysconfdir)/udev/hwdb.d \
-					$(sysconfdir)/systemd/network'
-			dist_bashcompletion_DATA="shell-completion/bash/udevadm"
-			dist_network_DATA="network/99-default.link"
-		)
-		emake -j1 DESTDIR="${D}" "${targets[@]}"
-		doman man/{udev.conf.5,systemd.link.5,udev.7,systemd-udevd.service.8,udevadm.8}
-	else
-		local lib_LTLIBRARIES="libudev.la" \
-			pkgconfiglib_DATA="src/libudev/libudev.pc" \
-			include_HEADERS="src/libudev/libudev.h"
-
-		local targets=(
-			install-libLTLIBRARIES
-			install-includeHEADERS
-			install-pkgconfiglibDATA
-		)
-
-		targets+=(
-			lib_LTLIBRARIES="${lib_LTLIBRARIES}"
-			pkgconfiglib_DATA="${pkgconfiglib_DATA}"
-			include_HEADERS="${include_HEADERS}"
-			)
-		emake -j1 DESTDIR="${D}" "${targets[@]}"
-	fi
-}
-
-multilib_src_install_all() {
-	dodoc TODO
-
-	prune_libtool_files --all
-	rm -f \
-		"${D}"/lib/udev/rules.d/99-systemd.rules \
-		"${D}"/usr/share/doc/${PF}/{LICENSE.*,GVARIANT-SERIALIZATION,DIFFERENCES,PORTING-DBUS1,sd-shutdown.h}
-
-	# see src_prepare() for content of 40-gentoo.rules
-	insinto /lib/udev/rules.d
-	doins "${T}"/40-gentoo.rules
-
-	# maintainer note: by not letting the upstream build-sys create the .so
-	# link, you also avoid a parallel make problem
-	mv "${D}"/usr/share/man/man8/systemd-udevd{.service,}.8
-}
-
-pkg_postinst() {
-	mkdir -p "${ROOT%/}"/run
-
-	# "losetup -f" is confused if there is an empty /dev/loop/, Bug #338766
-	# So try to remove it here (will only work if empty).
-	rmdir "${ROOT%/}"/dev/loop 2>/dev/null
-	if [[ -d ${ROOT%/}/dev/loop ]]; then
-		ewarn "Please make sure your remove /dev/loop,"
-		ewarn "else losetup may be confused when looking for unused devices."
-	fi
-
-	local fstab="${ROOT%/}"/etc/fstab dev path fstype rest
-	while read -r dev path fstype rest; do
-		if [[ ${path} == /dev && ${fstype} != devtmpfs ]]; then
-			ewarn "You need to edit your /dev line in ${fstab} to have devtmpfs"
-			ewarn "filesystem. Otherwise udev won't be able to boot."
-			ewarn "See, https://bugs.gentoo.org/453186"
-		fi
-	done < "${fstab}"
-
-	if [[ -d ${ROOT%/}/usr/lib/udev ]]; then
-		ewarn
-		ewarn "Please re-emerge all packages on your system which install"
-		ewarn "rules and helpers in /usr/lib/udev. They should now be in"
-		ewarn "/lib/udev."
-		ewarn
-		ewarn "One way to do this is to run the following command:"
-		ewarn "emerge -av1 \$(qfile -q -S -C /usr/lib/udev)"
-		ewarn "Note that qfile can be found in app-portage/portage-utils"
-	fi
-
-	local old_cd_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-cd.rules
-	local old_net_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-net.rules
-	for old_rules in "${old_cd_rules}" "${old_net_rules}"; do
-		if [[ -f ${old_rules} ]]; then
-			ewarn
-			ewarn "File ${old_rules} is from old udev installation but if you still use it,"
-			ewarn "rename it to something else starting with 70- to silence this deprecation"
-			ewarn "warning."
-		fi
-	done
-
-	elog
-	elog "Starting from version >= 197 the new predictable network interface names are"
-	elog "used by default, see:"
-	elog "http://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames"
-	elog "http://cgit.freedesktop.org/systemd/systemd/tree/src/udev/udev-builtin-net_id.c"
-	elog
-	elog "Example command to get the information for the new interface name before booting"
-	elog "(replace <ifname> with, for example, eth0):"
-	elog "# udevadm test-builtin net_id /sys/class/net/<ifname> 2> /dev/null"
-	elog
-	elog "You can use either kernel parameter \"net.ifnames=0\", create empty"
-	elog "file /etc/systemd/network/99-default.link, or symlink it to /dev/null"
-	elog "to disable the feature."
-
-	if has_version 'sys-apps/biosdevname'; then
-		ewarn
-		ewarn "You can replace the functionality of sys-apps/biosdevname which has been"
-		ewarn "detected to be installed with the new predictable network interface names."
-	fi
-
-	ewarn
-	ewarn "You need to restart udev as soon as possible to make the upgrade go"
-	ewarn "into effect."
-	ewarn "The method you use to do this depends on your init system."
-	if has_version 'sys-apps/openrc'; then
-		ewarn "For sys-apps/openrc users it is:"
-		ewarn "# /etc/init.d/udev --nodeps restart"
-	fi
-
-	elog
-	elog "For more information on udev on Gentoo, upgrading, writing udev rules, and"
-	elog "fixing known issues visit:"
-	elog "https://wiki.gentoo.org/wiki/Udev"
-	elog "https://wiki.gentoo.org/wiki/Udev/upgrade"
-
-	# If user has disabled 80-net-name-slot.rules using a empty file or a symlink to /dev/null,
-	# do the same for 80-net-setup-link.rules to keep the old behavior
-	local net_move=no
-	local net_name_slot_sym=no
-	local net_rules_path="${ROOT%/}"/etc/udev/rules.d
-	local net_name_slot="${net_rules_path}"/80-net-name-slot.rules
-	local net_setup_link="${net_rules_path}"/80-net-setup-link.rules
-	if [[ ! -e ${net_setup_link} ]]; then
-		[[ -f ${net_name_slot} && $(sed -e "/^#/d" -e "/^\W*$/d" ${net_name_slot} | wc -l) == 0 ]] && net_move=yes
-		if [[ -L ${net_name_slot} && $(readlink ${net_name_slot}) == /dev/null ]]; then
-			net_move=yes
-			net_name_slot_sym=yes
-		fi
-	fi
-	if [[ ${net_move} == yes ]]; then
-		ebegin "Copying ${net_name_slot} to ${net_setup_link}"
-
-		if [[ ${net_name_slot_sym} == yes ]]; then
-			ln -nfs /dev/null "${net_setup_link}"
-		else
-			cp "${net_name_slot}" "${net_setup_link}"
-		fi
-		eend $?
-	fi
-
-	# http://cgit.freedesktop.org/systemd/systemd/commit/rules/50-udev-default.rules?id=3dff3e00e044e2d53c76fa842b9a4759d4a50e69
-	# https://bugs.gentoo.org/246847
-	# https://bugs.gentoo.org/514174
-	enewgroup input
-
-	# Update hwdb database in case the format is changed by udev version.
-	if has_version 'sys-apps/hwids[udev]'; then
-		udevadm hwdb --update --root="${ROOT%/}"
-		# Only reload when we are not upgrading to avoid potential race w/ incompatible hwdb.bin and the running udevd
-		# http://cgit.freedesktop.org/systemd/systemd/commit/?id=1fab57c209035f7e66198343074e9cee06718bda
-		[[ -z ${REPLACING_VERSIONS} ]] && udev_reload
-	fi
-}


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-fs/udev/, sys-fs/udev/files/
@ 2016-04-20  3:17 Mike Frysinger
  0 siblings, 0 replies; 13+ messages in thread
From: Mike Frysinger @ 2016-04-20  3:17 UTC (permalink / raw
  To: gentoo-commits

commit:     06022126809462809479739c0a86e2139b4f8410
Author:     Mike Frysinger <vapier <AT> gentoo <DOT> org>
AuthorDate: Wed Apr 20 03:16:34 2016 +0000
Commit:     Mike Frysinger <vapier <AT> gentoo <DOT> org>
CommitDate: Wed Apr 20 03:16:34 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=06022126

sys-fs/udev: add upstream fix for building w/glibc #580200

 sys-fs/udev/files/udev-229-sysmacros.patch | 82 ++++++++++++++++++++++++++++++
 sys-fs/udev/udev-229-r2.ebuild             |  1 +
 2 files changed, 83 insertions(+)

diff --git a/sys-fs/udev/files/udev-229-sysmacros.patch b/sys-fs/udev/files/udev-229-sysmacros.patch
new file mode 100644
index 0000000..d72eb59
--- /dev/null
+++ b/sys-fs/udev/files/udev-229-sysmacros.patch
@@ -0,0 +1,82 @@
+https://bugs.gentoo.org/580200
+https://github.com/systemd/systemd/commit/27d13af71c3af6b2f9b60556d2c046dbb6e36e23
+
+From 27d13af71c3af6b2f9b60556d2c046dbb6e36e23 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Mon, 14 Mar 2016 17:44:49 -0400
+Subject: [PATCH] include sys/sysmacros.h in more places
+
+Since glibc is moving away from implicitly including sys/sysmacros.h
+all the time via sys/types.h, include the header directly in more
+places.  This seems to cover most makedev/major/minor usage.
+---
+ src/basic/macro.h       | 1 +
+ src/basic/util.h        | 1 +
+ src/libudev/libudev.h   | 1 +
+ src/systemd/sd-device.h | 1 +
+ src/udev/udev.h         | 1 +
+ 5 files changed, 5 insertions(+)
+
+diff --git a/src/basic/macro.h b/src/basic/macro.h
+index c34441d..b36a956 100644
+--- a/src/basic/macro.h
++++ b/src/basic/macro.h
+@@ -23,6 +23,7 @@
+ #include <inttypes.h>
+ #include <stdbool.h>
+ #include <sys/param.h>
++#include <sys/sysmacros.h>
+ #include <sys/types.h>
+ 
+ #define _printf_(a,b) __attribute__ ((format (printf, a, b)))
+diff --git a/src/basic/util.h b/src/basic/util.h
+index e095254..286db05 100644
+--- a/src/basic/util.h
++++ b/src/basic/util.h
+@@ -36,6 +36,7 @@
+ #include <sys/socket.h>
+ #include <sys/stat.h>
+ #include <sys/statfs.h>
++#include <sys/sysmacros.h>
+ #include <sys/types.h>
+ #include <time.h>
+ #include <unistd.h>
+diff --git a/src/libudev/libudev.h b/src/libudev/libudev.h
+index eb58740..3f6d0ed 100644
+--- a/src/libudev/libudev.h
++++ b/src/libudev/libudev.h
+@@ -21,6 +21,7 @@
+ #define _LIBUDEV_H_
+ 
+ #include <stdarg.h>
++#include <sys/sysmacros.h>
+ #include <sys/types.h>
+ 
+ #ifdef __cplusplus
+diff --git a/src/systemd/sd-device.h b/src/systemd/sd-device.h
+index 5bfca6e..c1d0756 100644
+--- a/src/systemd/sd-device.h
++++ b/src/systemd/sd-device.h
+@@ -22,6 +22,7 @@
+ ***/
+ 
+ #include <inttypes.h>
++#include <sys/sysmacros.h>
+ #include <sys/types.h>
+ 
+ #include "_sd-common.h"
+diff --git a/src/udev/udev.h b/src/udev/udev.h
+index 5659051..8433e8d 100644
+--- a/src/udev/udev.h
++++ b/src/udev/udev.h
+@@ -19,6 +19,7 @@
+  */
+ 
+ #include <sys/param.h>
++#include <sys/sysmacros.h>
+ #include <sys/types.h>
+ 
+ #include "libudev.h"
+-- 
+2.7.4
+

diff --git a/sys-fs/udev/udev-229-r2.ebuild b/sys-fs/udev/udev-229-r2.ebuild
index a228a72..9599178 100644
--- a/sys-fs/udev/udev-229-r2.ebuild
+++ b/sys-fs/udev/udev-229-r2.ebuild
@@ -114,6 +114,7 @@ src_prepare() {
 	if [[ -n "${patchset}" ]]; then
 		EPATCH_SUFFIX=patch EPATCH_FORCE=yes epatch
 	fi
+	epatch "${FILESDIR}"/${PN}-229-sysmacros.patch #580200
 
 	cat <<-EOF > "${T}"/40-gentoo.rules
 	# Gentoo specific floppy and usb groups


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-fs/udev/, sys-fs/udev/files/
@ 2016-11-05 14:13 Lars Wendler
  0 siblings, 0 replies; 13+ messages in thread
From: Lars Wendler @ 2016-11-05 14:13 UTC (permalink / raw
  To: gentoo-commits

commit:     248f71f97378522f6e981b85c8236b0c7abfb72f
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Sat Nov  5 13:51:43 2016 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Sat Nov  5 14:13:25 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=248f71f9

sys-fs/udev: Fixed installation of libudev.so (bug #598988).

Thanks to floppym for reviewing the ebuild patches and creating the
pkgconfig fix he also sent upstream.

Package-Manager: portage-2.3.2
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 sys-fs/udev/files/systemd-232-pkgconfig.patch      | 50 ++++++++++++++++++++++
 .../udev/{udev-232.ebuild => udev-232-r1.ebuild}   | 11 ++++-
 2 files changed, 59 insertions(+), 2 deletions(-)

diff --git a/sys-fs/udev/files/systemd-232-pkgconfig.patch b/sys-fs/udev/files/systemd-232-pkgconfig.patch
new file mode 100644
index 00000000..50f7921
--- /dev/null
+++ b/sys-fs/udev/files/systemd-232-pkgconfig.patch
@@ -0,0 +1,50 @@
+From a36dad95c447a5cf65f9e3b66c86e906e7f05890 Mon Sep 17 00:00:00 2001
+From: Mike Gilbert <floppym@gentoo.org>
+Date: Sat, 5 Nov 2016 09:17:34 -0400
+Subject: [PATCH] Adjust pkgconfig files to point at rootlibdir
+
+The .so symlinks got moved to rootlibdir in 082210c7.
+---
+ Makefile.am                     | 1 +
+ src/libsystemd/libsystemd.pc.in | 2 +-
+ src/libudev/libudev.pc.in       | 2 +-
+ 3 files changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index f2d8bf5..73144b1 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -6054,6 +6054,7 @@ EXTRA_DIST += \
+ 
+ # ------------------------------------------------------------------------------
+ substitutions = \
++       '|rootlibdir=$(rootlibdir)|' \
+        '|rootlibexecdir=$(rootlibexecdir)|' \
+        '|rootbindir=$(rootbindir)|' \
+        '|bindir=$(bindir)|' \
+diff --git a/src/libsystemd/libsystemd.pc.in b/src/libsystemd/libsystemd.pc.in
+index e8f7950..7e6d499 100644
+--- a/src/libsystemd/libsystemd.pc.in
++++ b/src/libsystemd/libsystemd.pc.in
+@@ -7,7 +7,7 @@
+ 
+ prefix=@prefix@
+ exec_prefix=@exec_prefix@
+-libdir=@libdir@
++libdir=@rootlibdir@
+ includedir=@includedir@
+ 
+ Name: systemd
+diff --git a/src/libudev/libudev.pc.in b/src/libudev/libudev.pc.in
+index a0f3f52..770c922 100644
+--- a/src/libudev/libudev.pc.in
++++ b/src/libudev/libudev.pc.in
+@@ -7,7 +7,7 @@
+ 
+ prefix=@prefix@
+ exec_prefix=@exec_prefix@
+-libdir=@libdir@
++libdir=@rootlibdir@
+ includedir=@includedir@
+ 
+ Name: libudev

diff --git a/sys-fs/udev/udev-232.ebuild b/sys-fs/udev/udev-232-r1.ebuild
similarity index 97%
rename from sys-fs/udev/udev-232.ebuild
rename to sys-fs/udev/udev-232-r1.ebuild
index db5fafc..83e57cb 100644
--- a/sys-fs/udev/udev-232.ebuild
+++ b/sys-fs/udev/udev-232-r1.ebuild
@@ -122,6 +122,8 @@ src_prepare() {
 	# stub out the am_path_libcrypt function
 	echo 'AC_DEFUN([AM_PATH_LIBGCRYPT],[:])' > m4/gcrypt.m4
 
+	eapply "${FILESDIR}/systemd-${PV}-pkgconfig.patch"
+
 	# apply user patches
 	eapply_user
 
@@ -244,9 +246,9 @@ multilib_src_install() {
 		local pkgconfiglib_DATA="src/libudev/libudev.pc"
 
 		local targets=(
-			install-libLTLIBRARIES
 			install-includeHEADERS
 			install-rootbinPROGRAMS
+			install-rootlibLTLIBRARIES
 			install-rootlibexecPROGRAMS
 			install-udevlibexecPROGRAMS
 			install-dist_udevconfDATA
@@ -272,8 +274,13 @@ multilib_src_install() {
 		)
 		emake -j1 DESTDIR="${D}" "${targets[@]}"
 		doman man/{udev.conf.5,systemd.link.5,udev.7,systemd-udevd.service.8,udevadm.8}
+
+		# Compatibility symlink for software that looks for libudev.so
+		# without using pkg-config
+		dosym ../../$(get_libdir)/libudev.so.1 \
+			/usr/$(get_libdir)/libudev.so
 	else
-		local rootlib_LTLIBRARIES="libudev.la"
+		local lib_LTLIBRARIES="libudev.la"
 		local pkgconfiglib_DATA="src/libudev/libudev.pc"
 		local include_HEADERS="src/libudev/libudev.h"
 


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-fs/udev/, sys-fs/udev/files/
@ 2017-01-16 16:37 Mike Gilbert
  0 siblings, 0 replies; 13+ messages in thread
From: Mike Gilbert @ 2017-01-16 16:37 UTC (permalink / raw
  To: gentoo-commits

commit:     09cd09946cdad79faace80036a301784289a7e38
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Mon Jan 16 16:37:11 2017 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Mon Jan 16 16:37:33 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=09cd0994

sys-fs/udev: fix build with gperf-3.1

Bug: https://bugs.gentoo.org/605022
Package-Manager: Portage-2.3.3_p32, Repoman-2.3.1_p25

 ...dd-check-for-gperf-lookup-function-signat.patch | 302 +++++++++++++++++++++
 sys-fs/udev/udev-230-r1.ebuild                     |   4 +-
 sys-fs/udev/udev-232-r2.ebuild                     |   3 +-
 3 files changed, 307 insertions(+), 2 deletions(-)

diff --git a/sys-fs/udev/files/232-0002-build-sys-add-check-for-gperf-lookup-function-signat.patch b/sys-fs/udev/files/232-0002-build-sys-add-check-for-gperf-lookup-function-signat.patch
new file mode 100644
index 00000000..440ec75
--- /dev/null
+++ b/sys-fs/udev/files/232-0002-build-sys-add-check-for-gperf-lookup-function-signat.patch
@@ -0,0 +1,302 @@
+From 016fb3b83b861cfe58694996076a9764dcb46475 Mon Sep 17 00:00:00 2001
+From: Mike Gilbert <floppymaster@gmail.com>
+Date: Tue, 10 Jan 2017 02:39:05 -0500
+Subject: [PATCH 2/2] build-sys: add check for gperf lookup function signature
+ (#5055)
+
+gperf-3.1 generates lookup functions that take a size_t length
+parameter instead of unsigned int. Test for this at configure time.
+
+Fixes: https://github.com/systemd/systemd/issues/5039
+---
+ configure.ac                     | 22 ++++++++++++++++++++++
+ src/basic/af-list.c              |  2 +-
+ src/basic/arphrd-list.c          |  2 +-
+ src/basic/cap-list.c             |  2 +-
+ src/basic/errno-list.c           |  2 +-
+ src/core/load-fragment.h         |  2 +-
+ src/journal/journald-server.h    |  2 +-
+ src/login/logind.h               |  2 +-
+ src/network/networkd-conf.h      |  2 +-
+ src/network/networkd-netdev.h    |  2 +-
+ src/network/networkd-network.h   |  2 +-
+ src/nspawn/nspawn-settings.h     |  2 +-
+ src/resolve/dns-type.c           |  2 +-
+ src/resolve/resolved-conf.h      |  2 +-
+ src/test/test-af-list.c          |  2 +-
+ src/test/test-arphrd-list.c      |  2 +-
+ src/timesync/timesyncd-conf.h    |  2 +-
+ src/udev/net/link-config.h       |  2 +-
+ src/udev/udev-builtin-keyboard.c |  2 +-
+ 19 files changed, 40 insertions(+), 18 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 1928e65bd..5c639e32d 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -258,6 +258,28 @@ AC_CHECK_SIZEOF(rlim_t,,[
+        #include <sys/resource.h>
+ ])
+ 
++GPERF_TEST="$(echo foo,bar | ${GPERF} -L ANSI-C)"
++
++AC_COMPILE_IFELSE(
++        [AC_LANG_PROGRAM([
++                #include <string.h>
++                const char * in_word_set(const char *, size_t);
++                $GPERF_TEST]
++        )],
++        [GPERF_LEN_TYPE=size_t],
++        [AC_COMPILE_IFELSE(
++                [AC_LANG_PROGRAM([
++                        #include <string.h>
++                        const char * in_word_set(const char *, unsigned);
++                        $GPERF_TEST]
++                )],
++                [GPERF_LEN_TYPE=unsigned],
++                [AC_MSG_ERROR([** unable to determine gperf len type])]
++        )]
++)
++
++AC_DEFINE_UNQUOTED([GPERF_LEN_TYPE], [$GPERF_LEN_TYPE], [gperf len type])
++
+ # ------------------------------------------------------------------------------
+ # we use python to build the man page index
+ have_python=no
+diff --git a/src/basic/af-list.c b/src/basic/af-list.c
+index 3fac9c508..4b291d177 100644
+--- a/src/basic/af-list.c
++++ b/src/basic/af-list.c
+@@ -23,7 +23,7 @@
+ #include "af-list.h"
+ #include "macro.h"
+ 
+-static const struct af_name* lookup_af(register const char *str, register unsigned int len);
++static const struct af_name* lookup_af(register const char *str, register GPERF_LEN_TYPE len);
+ 
+ #include "af-from-name.h"
+ #include "af-to-name.h"
+diff --git a/src/basic/arphrd-list.c b/src/basic/arphrd-list.c
+index 6792d1ee3..2d598dc66 100644
+--- a/src/basic/arphrd-list.c
++++ b/src/basic/arphrd-list.c
+@@ -23,7 +23,7 @@
+ #include "arphrd-list.h"
+ #include "macro.h"
+ 
+-static const struct arphrd_name* lookup_arphrd(register const char *str, register unsigned int len);
++static const struct arphrd_name* lookup_arphrd(register const char *str, register GPERF_LEN_TYPE len);
+ 
+ #include "arphrd-from-name.h"
+ #include "arphrd-to-name.h"
+diff --git a/src/basic/cap-list.c b/src/basic/cap-list.c
+index 3e773a06f..d68cc78d0 100644
+--- a/src/basic/cap-list.c
++++ b/src/basic/cap-list.c
+@@ -26,7 +26,7 @@
+ #include "parse-util.h"
+ #include "util.h"
+ 
+-static const struct capability_name* lookup_capability(register const char *str, register unsigned int len);
++static const struct capability_name* lookup_capability(register const char *str, register GPERF_LEN_TYPE len);
+ 
+ #include "cap-from-name.h"
+ #include "cap-to-name.h"
+diff --git a/src/basic/errno-list.c b/src/basic/errno-list.c
+index 31b66bad5..c6a01eec8 100644
+--- a/src/basic/errno-list.c
++++ b/src/basic/errno-list.c
+@@ -23,7 +23,7 @@
+ #include "macro.h"
+ 
+ static const struct errno_name* lookup_errno(register const char *str,
+-                                             register unsigned int len);
++                                             register GPERF_LEN_TYPE len);
+ 
+ #include "errno-from-name.h"
+ #include "errno-to-name.h"
+diff --git a/src/core/load-fragment.h b/src/core/load-fragment.h
+index c05f205c3..ede6b1f73 100644
+--- a/src/core/load-fragment.h
++++ b/src/core/load-fragment.h
+@@ -118,7 +118,7 @@ int config_parse_user_group(const char *unit, const char *filename, unsigned lin
+ int config_parse_user_group_strv(const char *unit, const char *filename, unsigned line, const char *section, unsigned section_line, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata);
+ 
+ /* gperf prototypes */
+-const struct ConfigPerfItem* load_fragment_gperf_lookup(const char *key, unsigned length);
++const struct ConfigPerfItem* load_fragment_gperf_lookup(const char *key, GPERF_LEN_TYPE length);
+ extern const char load_fragment_gperf_nulstr[];
+ 
+ typedef enum Disabled {
+diff --git a/src/journal/journald-server.h b/src/journal/journald-server.h
+index 99d91496b..d1520c45d 100644
+--- a/src/journal/journald-server.h
++++ b/src/journal/journald-server.h
+@@ -179,7 +179,7 @@ void server_dispatch_message(Server *s, struct iovec *iovec, unsigned n, unsigne
+ void server_driver_message(Server *s, sd_id128_t message_id, const char *format, ...) _printf_(3,0) _sentinel_;
+ 
+ /* gperf lookup function */
+-const struct ConfigPerfItem* journald_gperf_lookup(const char *key, unsigned length);
++const struct ConfigPerfItem* journald_gperf_lookup(const char *key, GPERF_LEN_TYPE length);
+ 
+ int config_parse_storage(const char *unit, const char *filename, unsigned line, const char *section, unsigned section_line, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata);
+ 
+diff --git a/src/login/logind.h b/src/login/logind.h
+index 086fa1eeb..7556ee2e4 100644
+--- a/src/login/logind.h
++++ b/src/login/logind.h
+@@ -182,7 +182,7 @@ int manager_unit_is_active(Manager *manager, const char *unit);
+ int manager_job_is_active(Manager *manager, const char *path);
+ 
+ /* gperf lookup function */
+-const struct ConfigPerfItem* logind_gperf_lookup(const char *key, unsigned length);
++const struct ConfigPerfItem* logind_gperf_lookup(const char *key, GPERF_LEN_TYPE length);
+ 
+ int manager_set_lid_switch_ignore(Manager *m, usec_t until);
+ 
+diff --git a/src/network/networkd-conf.h b/src/network/networkd-conf.h
+index c7bfb42a7..00ddb7672 100644
+--- a/src/network/networkd-conf.h
++++ b/src/network/networkd-conf.h
+@@ -23,7 +23,7 @@
+ 
+ int manager_parse_config_file(Manager *m);
+ 
+-const struct ConfigPerfItem* networkd_gperf_lookup(const char *key, unsigned length);
++const struct ConfigPerfItem* networkd_gperf_lookup(const char *key, GPERF_LEN_TYPE length);
+ 
+ int config_parse_duid_type(
+                 const char *unit,
+diff --git a/src/network/networkd-netdev.h b/src/network/networkd-netdev.h
+index 70ff947b9..37c743121 100644
+--- a/src/network/networkd-netdev.h
++++ b/src/network/networkd-netdev.h
+@@ -175,7 +175,7 @@ NetDevKind netdev_kind_from_string(const char *d) _pure_;
+ int config_parse_netdev_kind(const char *unit, const char *filename, unsigned line, const char *section, unsigned section_line, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata);
+ 
+ /* gperf */
+-const struct ConfigPerfItem* network_netdev_gperf_lookup(const char *key, unsigned length);
++const struct ConfigPerfItem* network_netdev_gperf_lookup(const char *key, GPERF_LEN_TYPE length);
+ 
+ /* Macros which append INTERFACE= to the message */
+ 
+diff --git a/src/network/networkd-network.h b/src/network/networkd-network.h
+index 42fc82d39..09c3b3a3a 100644
+--- a/src/network/networkd-network.h
++++ b/src/network/networkd-network.h
+@@ -236,7 +236,7 @@ int config_parse_dhcp_route_table(const char *unit, const char *filename, unsign
+ /* Legacy IPv4LL support */
+ int config_parse_ipv4ll(const char *unit, const char *filename, unsigned line, const char *section, unsigned section_line, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata);
+ 
+-const struct ConfigPerfItem* network_network_gperf_lookup(const char *key, unsigned length);
++const struct ConfigPerfItem* network_network_gperf_lookup(const char *key, GPERF_LEN_TYPE length);
+ 
+ extern const sd_bus_vtable network_vtable[];
+ 
+diff --git a/src/nspawn/nspawn-settings.h b/src/nspawn/nspawn-settings.h
+index 231e6d726..4ae34f8e2 100644
+--- a/src/nspawn/nspawn-settings.h
++++ b/src/nspawn/nspawn-settings.h
+@@ -103,7 +103,7 @@ bool settings_private_network(Settings *s);
+ 
+ DEFINE_TRIVIAL_CLEANUP_FUNC(Settings*, settings_free);
+ 
+-const struct ConfigPerfItem* nspawn_gperf_lookup(const char *key, unsigned length);
++const struct ConfigPerfItem* nspawn_gperf_lookup(const char *key, GPERF_LEN_TYPE length);
+ 
+ int config_parse_capability(const char *unit, const char *filename, unsigned line, const char *section, unsigned section_line, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata);
+ int config_parse_id128(const char *unit, const char *filename, unsigned line, const char *section, unsigned section_line, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata);
+diff --git a/src/resolve/dns-type.c b/src/resolve/dns-type.c
+index aaf5ed62c..d89ae28dc 100644
+--- a/src/resolve/dns-type.c
++++ b/src/resolve/dns-type.c
+@@ -29,7 +29,7 @@ typedef const struct {
+ } dns_type;
+ 
+ static const struct dns_type_name *
+-lookup_dns_type (register const char *str, register unsigned int len);
++lookup_dns_type (register const char *str, register GPERF_LEN_TYPE len);
+ 
+ #include "dns_type-from-name.h"
+ #include "dns_type-to-name.h"
+diff --git a/src/resolve/resolved-conf.h b/src/resolve/resolved-conf.h
+index fc425a36b..8184d6cad 100644
+--- a/src/resolve/resolved-conf.h
++++ b/src/resolve/resolved-conf.h
+@@ -41,7 +41,7 @@ int manager_parse_search_domains_and_warn(Manager *m, const char *string);
+ int manager_add_dns_server_by_string(Manager *m, DnsServerType type, const char *word);
+ int manager_parse_dns_server_string_and_warn(Manager *m, DnsServerType type, const char *string);
+ 
+-const struct ConfigPerfItem* resolved_gperf_lookup(const char *key, unsigned length);
++const struct ConfigPerfItem* resolved_gperf_lookup(const char *key, GPERF_LEN_TYPE length);
+ 
+ int config_parse_dns_servers(const char *unit, const char *filename, unsigned line, const char *section, unsigned section_line, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata);
+ int config_parse_search_domains(const char *unit, const char *filename, unsigned line, const char *section, unsigned section_line, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata);
+diff --git a/src/test/test-af-list.c b/src/test/test-af-list.c
+index aeaa0929b..e2479133d 100644
+--- a/src/test/test-af-list.c
++++ b/src/test/test-af-list.c
+@@ -24,7 +24,7 @@
+ #include "string-util.h"
+ #include "util.h"
+ 
+-static const struct af_name* lookup_af(register const char *str, register unsigned int len);
++static const struct af_name* lookup_af(register const char *str, register GPERF_LEN_TYPE len);
+ 
+ #include "af-from-name.h"
+ #include "af-list.h"
+diff --git a/src/test/test-arphrd-list.c b/src/test/test-arphrd-list.c
+index f3989ad20..8f4f342fa 100644
+--- a/src/test/test-arphrd-list.c
++++ b/src/test/test-arphrd-list.c
+@@ -24,7 +24,7 @@
+ #include "string-util.h"
+ #include "util.h"
+ 
+-static const struct arphrd_name* lookup_arphrd(register const char *str, register unsigned int len);
++static const struct arphrd_name* lookup_arphrd(register const char *str, register GPERF_LEN_TYPE len);
+ 
+ #include "arphrd-from-name.h"
+ #include "arphrd-list.h"
+diff --git a/src/timesync/timesyncd-conf.h b/src/timesync/timesyncd-conf.h
+index cba0724b1..0280697e9 100644
+--- a/src/timesync/timesyncd-conf.h
++++ b/src/timesync/timesyncd-conf.h
+@@ -22,7 +22,7 @@
+ #include "conf-parser.h"
+ #include "timesyncd-manager.h"
+ 
+-const struct ConfigPerfItem* timesyncd_gperf_lookup(const char *key, unsigned length);
++const struct ConfigPerfItem* timesyncd_gperf_lookup(const char *key, GPERF_LEN_TYPE length);
+ 
+ int manager_parse_server_string(Manager *m, ServerType type, const char *string);
+ 
+diff --git a/src/udev/net/link-config.h b/src/udev/net/link-config.h
+index 91cc0357c..b0d8ceb76 100644
+--- a/src/udev/net/link-config.h
++++ b/src/udev/net/link-config.h
+@@ -93,7 +93,7 @@ const char *mac_policy_to_string(MACPolicy p) _const_;
+ MACPolicy mac_policy_from_string(const char *p) _pure_;
+ 
+ /* gperf lookup function */
+-const struct ConfigPerfItem* link_config_gperf_lookup(const char *key, unsigned length);
++const struct ConfigPerfItem* link_config_gperf_lookup(const char *key, GPERF_LEN_TYPE length);
+ 
+ int config_parse_mac_policy(const char *unit, const char *filename, unsigned line, const char *section, unsigned section_line, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata);
+ int config_parse_name_policy(const char *unit, const char *filename, unsigned line, const char *section, unsigned section_line, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata);
+diff --git a/src/udev/udev-builtin-keyboard.c b/src/udev/udev-builtin-keyboard.c
+index aa10beafb..09024116f 100644
+--- a/src/udev/udev-builtin-keyboard.c
++++ b/src/udev/udev-builtin-keyboard.c
+@@ -29,7 +29,7 @@
+ #include "string-util.h"
+ #include "udev.h"
+ 
+-static const struct key *keyboard_lookup_key(const char *str, unsigned len);
++static const struct key *keyboard_lookup_key(const char *str, GPERF_LEN_TYPE len);
+ #include "keyboard-keys-from-name.h"
+ 
+ static int install_force_release(struct udev_device *dev, const unsigned *release, unsigned release_count) {
+-- 
+2.11.0
+

diff --git a/sys-fs/udev/udev-230-r1.ebuild b/sys-fs/udev/udev-230-r1.ebuild
index aecf5ee..e1b65be 100644
--- a/sys-fs/udev/udev-230-r1.ebuild
+++ b/sys-fs/udev/udev-230-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2017 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 # $Id$
 
@@ -122,6 +122,8 @@ src_prepare() {
 	# stub out the am_path_libcrypt function
 	echo 'AC_DEFUN([AM_PATH_LIBGCRYPT],[:])' > m4/gcrypt.m4
 
+	eapply "${FILESDIR}"/232-0002-build-sys-add-check-for-gperf-lookup-function-signat.patch
+
 	# apply user patches
 	eapply_user
 

diff --git a/sys-fs/udev/udev-232-r2.ebuild b/sys-fs/udev/udev-232-r2.ebuild
index 5338a7a..16d3cfc 100644
--- a/sys-fs/udev/udev-232-r2.ebuild
+++ b/sys-fs/udev/udev-232-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2017 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 # $Id$
 
@@ -123,6 +123,7 @@ src_prepare() {
 	echo 'AC_DEFUN([AM_PATH_LIBGCRYPT],[:])' > m4/gcrypt.m4
 
 	eapply "${FILESDIR}/systemd-${PV}-pkgconfig.patch"
+	eapply "${FILESDIR}"/232-0002-build-sys-add-check-for-gperf-lookup-function-signat.patch
 
 	# apply user patches
 	eapply_user


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-fs/udev/, sys-fs/udev/files/
@ 2017-07-02 16:11 Mike Gilbert
  0 siblings, 0 replies; 13+ messages in thread
From: Mike Gilbert @ 2017-07-02 16:11 UTC (permalink / raw
  To: gentoo-commits

commit:     247ffd39f221d14cf084a5119a5675b626837c1b
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Sun Jul  2 16:10:50 2017 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Sun Jul  2 16:11:01 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=247ffd39

sys-fs/udev: fix build failure on alpha/ia64

Bug: https://bugs.gentoo.org/612102
Package-Manager: Portage-2.3.6_p9, Repoman-2.3.2_p77

 sys-fs/udev/files/233-format-warnings.patch | 84 +++++++++++++++++++++++++++++
 sys-fs/udev/udev-233.ebuild                 | 18 ++-----
 2 files changed, 89 insertions(+), 13 deletions(-)

diff --git a/sys-fs/udev/files/233-format-warnings.patch b/sys-fs/udev/files/233-format-warnings.patch
new file mode 100644
index 00000000000..7bb08f0a320
--- /dev/null
+++ b/sys-fs/udev/files/233-format-warnings.patch
@@ -0,0 +1,84 @@
+From 3e7d14d78c4d15ec7789299216cbf5c58e61547b Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
+Date: Sat, 3 Jun 2017 05:41:17 -0400
+Subject: [PATCH] sd-bus: silence format warnings in kdbus code (#6072)
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+The code is mostly correct, but gcc is trying to outsmart us, and emits a
+warning for a "llu vs lu" mismatch, even though they are the same size (on alpha):
+
+src/libsystemd/sd-bus/bus-control.c: In function ‘kernel_get_list’:
+src/libsystemd/sd-bus/bus-control.c:267:42: error: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘__u64 {aka long unsigned int}’ [-Werror=format=]
+                         if (asprintf(&n, ":1.%llu", name->id) < 0) {
+                                          ^
+src/libsystemd/sd-bus/bus-control.c: In function ‘bus_get_name_creds_kdbus’:
+src/libsystemd/sd-bus/bus-control.c:714:47: error: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘__u64 {aka long unsigned int}’ [-Werror=format=]
+                 if (asprintf(&c->unique_name, ":1.%llu", conn_info->id) < 0) {
+                                               ^
+This is hard to work around properly, because kdbus.h uses __u64 which is
+defined-differently-despite-being-the-same-size then uint64_t. Thus the simple
+solution of using %PRIu64 fails on amd64:
+
+src/libsystemd/sd-bus/bus-control.c:714:47: error: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 3 has type ‘__u64 {aka long long unsigned int}’ [-Werror=format=]
+                 if (asprintf(&c->unique_name, ":1.%"PRIu64, conn_info->id) < 0) {
+                                               ^~~~~~
+
+Let's just avoid the whole issue for now by silencing the warning.
+After the next release, we should just get rid of the kdbus code.
+
+Fixes #5561.
+---
+ src/libsystemd/sd-bus/bus-control.c | 6 ++++++
+ src/libsystemd/sd-bus/bus-kernel.c  | 2 ++
+ 2 files changed, 8 insertions(+)
+
+diff --git a/src/libsystemd/sd-bus/bus-control.c b/src/libsystemd/sd-bus/bus-control.c
+index 9e58ffbd8..303ae0f23 100644
+--- a/src/libsystemd/sd-bus/bus-control.c
++++ b/src/libsystemd/sd-bus/bus-control.c
+@@ -264,10 +264,13 @@ static int kernel_get_list(sd_bus *bus, uint64_t flags, char ***x) {
+                 if ((flags & KDBUS_LIST_UNIQUE) && name->id != previous_id && !(name->flags & KDBUS_HELLO_ACTIVATOR)) {
+                         char *n;
+ 
++#pragma GCC diagnostic push
++#pragma GCC diagnostic ignored "-Wformat"
+                         if (asprintf(&n, ":1.%llu", name->id) < 0) {
+                                 r = -ENOMEM;
+                                 goto fail;
+                         }
++#pragma GCC diagnostic pop
+ 
+                         r = strv_consume(x, n);
+                         if (r < 0)
+@@ -711,10 +714,13 @@ int bus_get_name_creds_kdbus(
+         }
+ 
+         if (mask & SD_BUS_CREDS_UNIQUE_NAME) {
++#pragma GCC diagnostic push
++#pragma GCC diagnostic ignored "-Wformat"
+                 if (asprintf(&c->unique_name, ":1.%llu", conn_info->id) < 0) {
+                         r = -ENOMEM;
+                         goto fail;
+                 }
++#pragma GCC diagnostic pop
+ 
+                 c->mask |= SD_BUS_CREDS_UNIQUE_NAME;
+         }
+diff --git a/src/libsystemd/sd-bus/bus-kernel.c b/src/libsystemd/sd-bus/bus-kernel.c
+index c82caeb3f..ca6aee7c0 100644
+--- a/src/libsystemd/sd-bus/bus-kernel.c
++++ b/src/libsystemd/sd-bus/bus-kernel.c
+@@ -51,6 +51,8 @@
+ #include "user-util.h"
+ #include "util.h"
+ 
++#pragma GCC diagnostic ignored "-Wformat"
++
+ #define UNIQUE_NAME_MAX (3+DECIMAL_STR_MAX(uint64_t))
+ 
+ int bus_kernel_parse_unique_name(const char *s, uint64_t *id) {
+-- 
+2.13.2
+

diff --git a/sys-fs/udev/udev-233.ebuild b/sys-fs/udev/udev-233.ebuild
index 8662d86b43c..7cdbc7e3da1 100644
--- a/sys-fs/udev/udev-233.ebuild
+++ b/sys-fs/udev/udev-233.ebuild
@@ -9,13 +9,7 @@ if [[ ${PV} = 9999* ]]; then
 	EGIT_REPO_URI="git://anongit.freedesktop.org/systemd/systemd"
 	inherit git-r3
 else
-	patchset=
 	SRC_URI="https://github.com/systemd/systemd/archive/v${PV}.tar.gz -> systemd-${PV}.tar.gz"
-	if [[ -n "${patchset}" ]]; then
-		SRC_URI+="
-			https://dev.gentoo.org/~williamh/dist/${P}-patches-${patchset}.tar.xz
-			https://dev.gentoo.org/~ssuominen/${P}-patches-${patchset}.tar.xz"
-	fi
 	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
 fi
 
@@ -61,6 +55,10 @@ PDEPEND=">=sys-apps/hwids-20140304[udev]
 
 S=${WORKDIR}/systemd-${PV}
 
+PATCHES=(
+	"${FILESDIR}"/233-format-warnings.patch
+)
+
 check_default_rules() {
 	# Make sure there are no sudden changes to upstream rules file
 	# (more for my own needs than anything else ...)
@@ -104,11 +102,6 @@ src_prepare() {
 		fi
 	fi
 
-	# backport some patches
-	if [[ -n "${patchset}" ]]; then
-		eapply "${WORKDIR}"/patch
-	fi
-
 	cat <<-EOF > "${T}"/40-gentoo.rules
 	# Gentoo specific floppy and usb groups
 	ACTION=="add", SUBSYSTEM=="block", KERNEL=="fd[0-9]", GROUP="floppy"
@@ -121,8 +114,7 @@ src_prepare() {
 	# stub out the am_path_libcrypt function
 	echo 'AC_DEFUN([AM_PATH_LIBGCRYPT],[:])' > m4/gcrypt.m4
 
-	# apply user patches
-	eapply_user
+	default
 
 	eautoreconf
 


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-fs/udev/, sys-fs/udev/files/
@ 2017-08-13 23:08 Mike Gilbert
  0 siblings, 0 replies; 13+ messages in thread
From: Mike Gilbert @ 2017-08-13 23:08 UTC (permalink / raw
  To: gentoo-commits

commit:     cc7faaaefdb480c904faa827ee2917a3e3472c4e
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Sun Aug 13 23:07:04 2017 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Sun Aug 13 23:07:59 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cc7faaae

sys-fs/udev: replace uucp sed with a patch

Bug: https://bugs.gentoo.org/625720
Package-Manager: Portage-2.3.6_p34, Repoman-2.3.3_p12

 sys-fs/udev/files/234-uucp-group.patch              | 11 +++++++++++
 sys-fs/udev/{udev-234.ebuild => udev-234-r1.ebuild} | 19 ++++---------------
 sys-fs/udev/udev-9999.ebuild                        | 21 +++++----------------
 3 files changed, 20 insertions(+), 31 deletions(-)

diff --git a/sys-fs/udev/files/234-uucp-group.patch b/sys-fs/udev/files/234-uucp-group.patch
new file mode 100644
index 00000000000..89cf552c829
--- /dev/null
+++ b/sys-fs/udev/files/234-uucp-group.patch
@@ -0,0 +1,11 @@
+--- a/rules/50-udev-default.rules.in
++++ b/rules/50-udev-default.rules.in
+@@ -22,7 +22,7 @@
+ SUBSYSTEM=="tty", KERNEL=="ttysclp[0-9]*", GROUP="tty", MODE="0620"
+ SUBSYSTEM=="tty", KERNEL=="3270/tty[0-9]*", GROUP="tty", MODE="0620"
+ SUBSYSTEM=="vc", KERNEL=="vcs*|vcsa*", GROUP="tty"
+-KERNEL=="tty[A-Z]*[0-9]|pppox[0-9]*|ircomm[0-9]*|noz[0-9]*|rfcomm[0-9]*", GROUP="dialout"
++KERNEL=="tty[A-Z]*[0-9]|pppox[0-9]*|ircomm[0-9]*|noz[0-9]*|rfcomm[0-9]*", GROUP="uucp"
+ 
+ SUBSYSTEM=="mem", KERNEL=="mem|kmem|port", GROUP="kmem", MODE="0640"
+ 

diff --git a/sys-fs/udev/udev-234.ebuild b/sys-fs/udev/udev-234-r1.ebuild
similarity index 95%
rename from sys-fs/udev/udev-234.ebuild
rename to sys-fs/udev/udev-234-r1.ebuild
index e8469928824..03c1796fcac 100644
--- a/sys-fs/udev/udev-234.ebuild
+++ b/sys-fs/udev/udev-234-r1.ebuild
@@ -9,13 +9,7 @@ if [[ ${PV} = 9999* ]]; then
 	EGIT_REPO_URI="https://github.com/systemd/systemd.git"
 	inherit git-r3
 else
-	patchset=
 	SRC_URI="https://github.com/systemd/systemd/archive/v${PV}.tar.gz -> systemd-${PV}.tar.gz"
-	if [[ -n "${patchset}" ]]; then
-		SRC_URI+="
-			https://dev.gentoo.org/~williamh/dist/${P}-patches-${patchset}.tar.xz
-			https://dev.gentoo.org/~ssuominen/${P}-patches-${patchset}.tar.xz"
-	fi
 	KEYWORDS="~amd64 ~arm ~ia64 ~ppc ~ppc64 ~x86"
 fi
 
@@ -92,22 +86,17 @@ src_prepare() {
 		fi
 	fi
 
-	# backport some patches
-	if [[ -n "${patchset}" ]]; then
-		eapply "${WORKDIR}"/patch
-	fi
-
 	cat <<-EOF > "${T}"/40-gentoo.rules
 	# Gentoo specific floppy and usb groups
 	ACTION=="add", SUBSYSTEM=="block", KERNEL=="fd[0-9]", GROUP="floppy"
 	ACTION=="add", SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GROUP="usb"
 	EOF
 
-	# change rules back to group uucp instead of dialout for now wrt #454556
-	sed -i -e 's/GROUP="dialout"/GROUP="uucp"/' rules/*.rules || die
+	local PATCHES=(
+		"${FILESDIR}/234-uucp-group.patch"
+	)
 
-	# apply user patches
-	eapply_user
+	default
 
 	if ! use elibc_glibc; then #443030
 		echo '#define secure_getenv(x) NULL' >> config.h.in

diff --git a/sys-fs/udev/udev-9999.ebuild b/sys-fs/udev/udev-9999.ebuild
index b7834ccec24..03c1796fcac 100644
--- a/sys-fs/udev/udev-9999.ebuild
+++ b/sys-fs/udev/udev-9999.ebuild
@@ -9,14 +9,8 @@ if [[ ${PV} = 9999* ]]; then
 	EGIT_REPO_URI="https://github.com/systemd/systemd.git"
 	inherit git-r3
 else
-	patchset=
 	SRC_URI="https://github.com/systemd/systemd/archive/v${PV}.tar.gz -> systemd-${PV}.tar.gz"
-	if [[ -n "${patchset}" ]]; then
-		SRC_URI+="
-			https://dev.gentoo.org/~williamh/dist/${P}-patches-${patchset}.tar.xz
-			https://dev.gentoo.org/~ssuominen/${P}-patches-${patchset}.tar.xz"
-	fi
-	KEYWORDS="~amd64 ~x86"
+	KEYWORDS="~amd64 ~arm ~ia64 ~ppc ~ppc64 ~x86"
 fi
 
 DESCRIPTION="Linux dynamic and persistent device naming support (aka userspace devfs)"
@@ -92,22 +86,17 @@ src_prepare() {
 		fi
 	fi
 
-	# backport some patches
-	if [[ -n "${patchset}" ]]; then
-		eapply "${WORKDIR}"/patch
-	fi
-
 	cat <<-EOF > "${T}"/40-gentoo.rules
 	# Gentoo specific floppy and usb groups
 	ACTION=="add", SUBSYSTEM=="block", KERNEL=="fd[0-9]", GROUP="floppy"
 	ACTION=="add", SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GROUP="usb"
 	EOF
 
-	# change rules back to group uucp instead of dialout for now wrt #454556
-	sed -i -e 's/GROUP="dialout"/GROUP="uucp"/' rules/*.rules || die
+	local PATCHES=(
+		"${FILESDIR}/234-uucp-group.patch"
+	)
 
-	# apply user patches
-	eapply_user
+	default
 
 	if ! use elibc_glibc; then #443030
 		echo '#define secure_getenv(x) NULL' >> config.h.in


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-fs/udev/, sys-fs/udev/files/
@ 2017-12-16 17:54 William Hubbs
  0 siblings, 0 replies; 13+ messages in thread
From: William Hubbs @ 2017-12-16 17:54 UTC (permalink / raw
  To: gentoo-commits

commit:     930b5a6b49bfa99f6d9f01f21a4e1644ff6799d7
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 16 17:36:32 2017 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Sat Dec 16 17:54:13 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=930b5a6b

sys-fs/udev: 236 version bump

Package-Manager: Portage-2.3.13, Repoman-2.3.3

 sys-fs/udev/Manifest                   |   1 +
 sys-fs/udev/files/236-uucp-group.patch |  13 ++
 sys-fs/udev/udev-236.ebuild            | 329 +++++++++++++++++++++++++++++++++
 3 files changed, 343 insertions(+)

diff --git a/sys-fs/udev/Manifest b/sys-fs/udev/Manifest
index c6ecac5bfc2..4d5255330b8 100644
--- a/sys-fs/udev/Manifest
+++ b/sys-fs/udev/Manifest
@@ -3,4 +3,5 @@ DIST systemd-225.tar.gz 3878442 BLAKE2B 24bf9f6bfdd7d7c585829c1b172f73e669e13702
 DIST systemd-233.tar.gz 4660737 BLAKE2B 38cdd74543447b3c02391b328428fed169fe2cf2df6e9341dcaf2f7d3d977612ec102301e144c1cada90d61e9e9bda3b2faaef708c8ff4bd0b52b143760a83b2 SHA512 5ad5329ea116d973cf67096f7e7ad28e9ea0905696e9451291f1d25e5064f4a9bfcfae87e912996c6a38397e9f4a148d4ccecfa9b70f7ecdf04deadb61784c8e
 DIST systemd-234.tar.gz 4800186 BLAKE2B 398ed8869da98909d1374ef5e549ca3e26b02ece577d94dec53e98431de0c6441e50762a3bc2c93fa1c14c236a8f0dca8e3f4102fd276ec977dfb3e77a789165 SHA512 762336a7d96c6583cf71cad62efce95a0ed93cd0a0d7251f128d10dba8200c0c8df0e5a7d168179ababa5b221295a231e73b7e7ea2697cb3fb5c1b33538efa68
 DIST systemd-235.tar.gz 6586406 BLAKE2B f2e46a6c51fc9445800c4b7eee66f23ae83b42c2fedf2304acf612e6cb99122afe67f1b93cf72ed022b52384975afb92ab38cfb4efc6026384602c973d2eb98e SHA512 243f2eb5340fa37dd1286eaa63e83387bda9e03953af266cd6196a37535a13491482caf14c6ab10608bba4ed23b6c41923608e52017e0c26988ed72ddd2b9993
+DIST systemd-236.tar.gz 6759035 BLAKE2B 0fc26bd67fb6cc3b0565c763fc26e38186c4b05c3d38652b73a2189dfbfb46382dba239f7f6f889eec57ad1d8f69d4098745c8f4ca16a707aa23b7771f2328f3 SHA512 1a9672960e03e05c09e41fb8cfe9b0f25e867fd43f37f8371515ddddfdbd4270afd746a6da733f6d1d3b2cc43db1ecc7a9f2245f2dac2ec233db74e9e70e4f6d
 DIST udev-216-patches-2.tar.xz 1264 BLAKE2B b1bbb6b1b7734edc3352b4352a45b4b5df4715b0fc92c4936798aa93fb078755b7795f475d7bc42392ad8ef57853e9ce2507c66cc9bfbd37e6fe22ada4c156cc SHA512 1f5912f3bbc3e40a4efad9de8b1fab2b3a750f3f23c9f2e33a581658959d22cf23f9ff1b8f51597874e7bca1d0f757f37fd5550b4112160261559524eda261f4

diff --git a/sys-fs/udev/files/236-uucp-group.patch b/sys-fs/udev/files/236-uucp-group.patch
new file mode 100644
index 00000000000..be0ba065430
--- /dev/null
+++ b/sys-fs/udev/files/236-uucp-group.patch
@@ -0,0 +1,13 @@
+diff --git a/rules/50-udev-default.rules.in b/rules/50-udev-default.rules.in
+index 71e716913..f24c9e6ae 100644
+--- a/rules/50-udev-default.rules.in
++++ b/rules/50-udev-default.rules.in
+@@ -22,7 +22,7 @@ SUBSYSTEM=="tty", KERNEL=="sclp_line[0-9]*", GROUP="tty", MODE="0620"
+ SUBSYSTEM=="tty", KERNEL=="ttysclp[0-9]*", GROUP="tty", MODE="0620"
+ SUBSYSTEM=="tty", KERNEL=="3270/tty[0-9]*", GROUP="tty", MODE="0620"
+ SUBSYSTEM=="vc", KERNEL=="vcs*|vcsa*", GROUP="tty"
+-KERNEL=="tty[A-Z]*[0-9]|ttymxc[0-9]*|pppox[0-9]*|ircomm[0-9]*|noz[0-9]*|rfcomm[0-9]*", GROUP="dialout"
++KERNEL=="tty[A-Z]*[0-9]|ttymxc[0-9]*|pppox[0-9]*|ircomm[0-9]*|noz[0-9]*|rfcomm[0-9]*", GROUP="uucp"
+ 
+ SUBSYSTEM=="mem", KERNEL=="mem|kmem|port", GROUP="kmem", MODE="0640"
+ 

diff --git a/sys-fs/udev/udev-236.ebuild b/sys-fs/udev/udev-236.ebuild
new file mode 100644
index 00000000000..bab6000491a
--- /dev/null
+++ b/sys-fs/udev/udev-236.ebuild
@@ -0,0 +1,329 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit bash-completion-r1 linux-info meson ninja-utils multilib-minimal toolchain-funcs udev user versionator
+
+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 -> systemd-${PV}.tar.gz"
+	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~x86"
+fi
+
+DESCRIPTION="Linux dynamic and persistent device naming support (aka userspace devfs)"
+HOMEPAGE="https://www.freedesktop.org/wiki/Software/systemd"
+
+LICENSE="LGPL-2.1 MIT GPL-2"
+SLOT="0"
+IUSE="acl +kmod selinux"
+
+RESTRICT="test"
+
+COMMON_DEPEND=">=sys-apps/util-linux-2.30[${MULTILIB_USEDEP}]
+	sys-libs/libcap[${MULTILIB_USEDEP}]
+	acl? ( sys-apps/acl )
+	kmod? ( >=sys-apps/kmod-16 )
+	selinux? ( >=sys-libs/libselinux-2.1.9 )
+	!<sys-libs/glibc-2.11
+	!sys-apps/gentoo-systemd-integration
+	!sys-apps/systemd
+	abi_x86_32? (
+		!<=app-emulation/emul-linux-x86-baselibs-20130224-r7
+		!app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
+	)"
+DEPEND="${COMMON_DEPEND}
+	dev-util/gperf
+	>=dev-util/intltool-0.50
+	>=dev-util/meson-0.40.0
+	dev-util/ninja
+	>=sys-apps/coreutils-8.16
+	virtual/os-headers
+	virtual/pkgconfig
+	>=sys-kernel/linux-headers-3.9
+	app-text/docbook-xml-dtd:4.2
+	app-text/docbook-xml-dtd:4.5
+	app-text/docbook-xsl-stylesheets
+	dev-libs/libxslt"
+RDEPEND="${COMMON_DEPEND}
+	!<sys-fs/lvm2-2.02.103
+	!<sec-policy/selinux-base-2.20120725-r10"
+PDEPEND=">=sys-apps/hwids-20140304[udev]
+	>=sys-fs/udev-init-scripts-26"
+
+S=${WORKDIR}/systemd-${PV}
+EGIT_CHECKOUT_DIR=${S}
+
+pkg_setup() {
+	if [[ ${MERGE_TYPE} != buildonly ]]; then
+		CONFIG_CHECK="~BLK_DEV_BSG ~DEVTMPFS ~!IDE ~INOTIFY_USER ~!SYSFS_DEPRECATED ~!SYSFS_DEPRECATED_V2 ~SIGNALFD ~EPOLL ~FHANDLE ~NET ~!FW_LOADER_USER_HELPER ~UNIX"
+		linux-info_pkg_setup
+
+		# CONFIG_FHANDLE was introduced by 2.6.39
+		local MINKV=2.6.39
+
+		if kernel_is -lt ${MINKV//./ }; then
+			eerror "Your running kernel is too old to run this version of ${P}"
+			eerror "You need to upgrade kernel at least to ${MINKV}"
+		fi
+
+		if kernel_is -lt 3 7; then
+			ewarn "Your running kernel is too old to have firmware loader and"
+			ewarn "this version of ${P} doesn't have userspace firmware loader"
+			ewarn "If you need firmware support, you need to upgrade kernel at least to 3.7"
+		fi
+	fi
+}
+
+src_prepare() {
+	if ! [[ ${PV} = 9999* ]]; then
+		# secure_getenv() disable for non-glibc systems wrt bug #443030
+		if ! [[ $(grep -r secure_getenv * | wc -l) -eq 27 ]]; then
+			eerror "The line count for secure_getenv() failed, see bug #443030"
+			die
+		fi
+	fi
+
+	cat <<-EOF > "${T}"/40-gentoo.rules
+	# Gentoo specific floppy and usb groups
+	ACTION=="add", SUBSYSTEM=="block", KERNEL=="fd[0-9]", GROUP="floppy"
+	ACTION=="add", SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GROUP="usb"
+	EOF
+
+	local PATCHES=(
+		"${FILESDIR}/236-uucp-group.patch"
+	)
+
+	default
+
+	if ! use elibc_glibc; then #443030
+		echo '#define secure_getenv(x) NULL' >> config.h.in
+		sed -i -e '/error.*secure_getenv/s:.*:#define secure_getenv(x) NULL:' src/shared/missing.h || die
+	fi
+}
+
+meson_multilib_native_use() {
+	if multilib_is_native_abi && use "$1"; then
+		echo true
+	else
+		echo false
+	fi
+}
+
+multilib_src_configure() {
+	local emesonargs=(
+		-Dacl=$(meson_multilib_native_use acl)
+		-Defi=false
+		-Dkmod=$(meson_multilib_native_use kmod)
+		-Dselinux=$(meson_multilib_native_use selinux)
+		-Dlink-udev-shared=false
+		-Dsplit-usr=true
+	)
+	meson_src_configure
+}
+
+src_configure() {
+	# Prevent conflicts with i686 cross toolchain, bug 559726
+	tc-export AR CC NM OBJCOPY RANLIB
+	multilib-minimal_src_configure
+}
+
+multilib_src_compile() {
+	# meson creates this link
+	local libudev=$(readlink src/libudev/libudev.so.1)
+
+	local targets=(
+		src/libudev/${libudev}
+	)
+	if multilib_is_native_abi; then
+		targets+=(
+			systemd-udevd
+			udevadm
+			src/udev/ata_id
+			src/udev/cdrom_id
+			src/udev/collect
+			src/udev/mtd_probe
+			src/udev/scsi_id
+			src/udev/v4l_id
+			man/udev.conf.5
+			man/systemd.link.5
+			man/hwdb.7
+			man/udev.7
+			man/systemd-udevd.service.8
+			man/udevadm.8
+		)
+	fi
+	eninja "${targets[@]}"
+}
+
+multilib_src_install() {
+	local libudev=$(readlink src/libudev/libudev.so.1)
+
+	into /
+	dolib.so src/libudev/{${libudev},libudev.so.1,libudev.so}
+
+	insinto "/usr/$(get_libdir)/pkgconfig"
+	doins src/libudev/libudev.pc
+
+	if multilib_is_native_abi; then
+		into /
+		dobin udevadm
+
+		exeinto /lib/systemd
+		doexe systemd-udevd
+
+		exeinto /lib/udev
+		doexe src/udev/{ata_id,cdrom_id,collect,mtd_probe,scsi_id,v4l_id}
+
+		rm rules/99-systemd.rules || die
+		insinto /lib/udev/rules.d
+		doins rules/*.rules
+
+		insinto /usr/share/pkgconfig
+		doins src/udev/udev.pc
+
+		mv man/systemd-udevd.service.8 man/systemd-udevd.8 || die
+		rm man/systemd-udevd-{control,kernel}.socket.8 || die
+		doman man/*.[0-9]
+	fi
+}
+
+multilib_src_install_all() {
+	doheader src/libudev/libudev.h
+
+	insinto /etc/udev
+	doins src/udev/udev.conf
+
+	insinto /lib/systemd/network
+	doins network/99-default.link
+
+	# see src_prepare() for content of 40-gentoo.rules
+	insinto /lib/udev/rules.d
+	doins "${T}"/40-gentoo.rules
+	doins "${S}"/rules/*.rules
+
+	dobashcomp shell-completion/bash/udevadm
+
+	insinto /usr/share/zsh/site-functions
+	doins shell-completion/zsh/_udevadm
+
+	einstalldocs
+}
+
+pkg_postinst() {
+	mkdir -p "${ROOT%/}"/run
+
+	# "losetup -f" is confused if there is an empty /dev/loop/, Bug #338766
+	# So try to remove it here (will only work if empty).
+	rmdir "${ROOT%/}"/dev/loop 2>/dev/null
+	if [[ -d ${ROOT%/}/dev/loop ]]; then
+		ewarn "Please make sure your remove /dev/loop,"
+		ewarn "else losetup may be confused when looking for unused devices."
+	fi
+
+	local fstab="${ROOT%/}"/etc/fstab dev path fstype rest
+	while read -r dev path fstype rest; do
+		if [[ ${path} == /dev && ${fstype} != devtmpfs ]]; then
+			ewarn "You need to edit your /dev line in ${fstab} to have devtmpfs"
+			ewarn "filesystem. Otherwise udev won't be able to boot."
+			ewarn "See, https://bugs.gentoo.org/453186"
+		fi
+	done < "${fstab}"
+
+	if [[ -d ${ROOT%/}/usr/lib/udev ]]; then
+		ewarn
+		ewarn "Please re-emerge all packages on your system which install"
+		ewarn "rules and helpers in /usr/lib/udev. They should now be in"
+		ewarn "/lib/udev."
+		ewarn
+		ewarn "One way to do this is to run the following command:"
+		ewarn "emerge -av1 \$(qfile -q -S -C /usr/lib/udev)"
+		ewarn "Note that qfile can be found in app-portage/portage-utils"
+	fi
+
+	local old_cd_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-cd.rules
+	local old_net_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-net.rules
+	for old_rules in "${old_cd_rules}" "${old_net_rules}"; do
+		if [[ -f ${old_rules} ]]; then
+			ewarn
+			ewarn "File ${old_rules} is from old udev installation but if you still use it,"
+			ewarn "rename it to something else starting with 70- to silence this deprecation"
+			ewarn "warning."
+		fi
+	done
+
+	elog
+	elog "Starting from version >= 197 the new predictable network interface names are"
+	elog "used by default, see:"
+	elog "https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames"
+	elog "https://cgit.freedesktop.org/systemd/systemd/tree/src/udev/udev-builtin-net_id.c"
+	elog
+	elog "Example command to get the information for the new interface name before booting"
+	elog "(replace <ifname> with, for example, eth0):"
+	elog "# udevadm test-builtin net_id /sys/class/net/<ifname> 2> /dev/null"
+	elog
+	elog "You can use either kernel parameter \"net.ifnames=0\", create empty"
+	elog "file /etc/systemd/network/99-default.link, or symlink it to /dev/null"
+	elog "to disable the feature."
+
+	if has_version 'sys-apps/biosdevname'; then
+		ewarn
+		ewarn "You can replace the functionality of sys-apps/biosdevname which has been"
+		ewarn "detected to be installed with the new predictable network interface names."
+	fi
+
+	ewarn
+	ewarn "You need to restart udev as soon as possible to make the upgrade go"
+	ewarn "into effect."
+	ewarn "The method you use to do this depends on your init system."
+	if has_version 'sys-apps/openrc'; then
+		ewarn "For sys-apps/openrc users it is:"
+		ewarn "# /etc/init.d/udev --nodeps restart"
+	fi
+
+	elog
+	elog "For more information on udev on Gentoo, upgrading, writing udev rules, and"
+	elog "fixing known issues visit:"
+	elog "https://wiki.gentoo.org/wiki/Udev"
+	elog "https://wiki.gentoo.org/wiki/Udev/upgrade"
+
+	# If user has disabled 80-net-name-slot.rules using a empty file or a symlink to /dev/null,
+	# do the same for 80-net-setup-link.rules to keep the old behavior
+	local net_move=no
+	local net_name_slot_sym=no
+	local net_rules_path="${ROOT%/}"/etc/udev/rules.d
+	local net_name_slot="${net_rules_path}"/80-net-name-slot.rules
+	local net_setup_link="${net_rules_path}"/80-net-setup-link.rules
+	if [[ ! -e ${net_setup_link} ]]; then
+		[[ -f ${net_name_slot} && $(sed -e "/^#/d" -e "/^\W*$/d" ${net_name_slot} | wc -l) == 0 ]] && net_move=yes
+		if [[ -L ${net_name_slot} && $(readlink ${net_name_slot}) == /dev/null ]]; then
+			net_move=yes
+			net_name_slot_sym=yes
+		fi
+	fi
+	if [[ ${net_move} == yes ]]; then
+		ebegin "Copying ${net_name_slot} to ${net_setup_link}"
+
+		if [[ ${net_name_slot_sym} == yes ]]; then
+			ln -nfs /dev/null "${net_setup_link}"
+		else
+			cp "${net_name_slot}" "${net_setup_link}"
+		fi
+		eend $?
+	fi
+
+	# https://cgit.freedesktop.org/systemd/systemd/commit/rules/50-udev-default.rules?id=3dff3e00e044e2d53c76fa842b9a4759d4a50e69
+	# https://bugs.gentoo.org/246847
+	# https://bugs.gentoo.org/514174
+	enewgroup input
+
+	# Update hwdb database in case the format is changed by udev version.
+	if has_version 'sys-apps/hwids[udev]'; then
+		udevadm hwdb --update --root="${ROOT%/}"
+		# Only reload when we are not upgrading to avoid potential race w/ incompatible hwdb.bin and the running udevd
+		# https://cgit.freedesktop.org/systemd/systemd/commit/?id=1fab57c209035f7e66198343074e9cee06718bda
+		[[ -z ${REPLACING_VERSIONS} ]] && udev_reload
+	fi
+}


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-fs/udev/, sys-fs/udev/files/
@ 2018-01-10 18:32 Mike Gilbert
  0 siblings, 0 replies; 13+ messages in thread
From: Mike Gilbert @ 2018-01-10 18:32 UTC (permalink / raw
  To: gentoo-commits

commit:     e248b7af8903fdb47cd11c203d46f8eded6023c3
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Wed Jan 10 18:20:34 2018 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Wed Jan 10 18:31:46 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e248b7af

sys-fs/udev: fix 233 build with glibc-2.26

Package-Manager: Portage-2.3.19_p3, Repoman-2.3.6_p37

 sys-fs/udev/files/233-fix-includes.patch | 38 ++++++++++++++++++++++++++++++++
 sys-fs/udev/udev-233.ebuild              |  3 ++-
 2 files changed, 40 insertions(+), 1 deletion(-)

diff --git a/sys-fs/udev/files/233-fix-includes.patch b/sys-fs/udev/files/233-fix-includes.patch
new file mode 100644
index 00000000000..44b06214f89
--- /dev/null
+++ b/sys-fs/udev/files/233-fix-includes.patch
@@ -0,0 +1,38 @@
+From 284d1cd0a12cad96a5ea61d1afb0dd677dbd147e Mon Sep 17 00:00:00 2001
+From: Matija Skala <mskala@gmx.com>
+Date: Wed, 15 Mar 2017 13:21:10 +0100
+Subject: [PATCH] fix includes
+
+linux/sockios.h is needed for the SIOCGSTAMPNS macro
+
+xlocale.h is included indirectly in glibc and doesn't even exist in
+other libcs
+---
+ src/basic/parse-util.c           | 1 -
+ src/libsystemd-network/sd-lldp.c | 1 +
+ 2 files changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/basic/parse-util.c b/src/basic/parse-util.c
+index 6e58ced6f5..d86700736d 100644
+--- a/src/basic/parse-util.c
++++ b/src/basic/parse-util.c
+@@ -23,7 +23,6 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
+-#include <xlocale.h>
+ 
+ #include "alloc-util.h"
+ #include "extract-word.h"
+diff --git a/src/libsystemd-network/sd-lldp.c b/src/libsystemd-network/sd-lldp.c
+index 0702241506..39ddb2461a 100644
+--- a/src/libsystemd-network/sd-lldp.c
++++ b/src/libsystemd-network/sd-lldp.c
+@@ -19,6 +19,7 @@
+ ***/
+ 
+ #include <arpa/inet.h>
++#include <linux/sockios.h>
+ 
+ #include "sd-lldp.h"
+ 

diff --git a/sys-fs/udev/udev-233.ebuild b/sys-fs/udev/udev-233.ebuild
index c42ecc2c0be..33ba3ae76f4 100644
--- a/sys-fs/udev/udev-233.ebuild
+++ b/sys-fs/udev/udev-233.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -57,6 +57,7 @@ S=${WORKDIR}/systemd-${PV}
 
 PATCHES=(
 	"${FILESDIR}"/233-format-warnings.patch
+	"${FILESDIR}"/233-fix-includes.patch
 )
 
 check_default_rules() {


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-fs/udev/, sys-fs/udev/files/
@ 2019-07-30 14:46 Mike Gilbert
  0 siblings, 0 replies; 13+ messages in thread
From: Mike Gilbert @ 2019-07-30 14:46 UTC (permalink / raw
  To: gentoo-commits

commit:     bedd1302f0fdf5d892f9bf8be663e6b3bfa3cb0e
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Tue Jul 30 14:44:29 2019 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Tue Jul 30 14:45:04 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bedd1302

sys-fs/udev: backport fixes for gcc 9

Closes: https://bugs.gentoo.org/690356
Package-Manager: Portage-2.3.69_p3, Repoman-2.3.16_p12
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 sys-fs/udev/files/242-gcc-9.patch | 163 ++++++++++++++++++++++++++++++++++++++
 sys-fs/udev/udev-242.ebuild       |   1 +
 2 files changed, 164 insertions(+)

diff --git a/sys-fs/udev/files/242-gcc-9.patch b/sys-fs/udev/files/242-gcc-9.patch
new file mode 100644
index 00000000000..e9f690a65be
--- /dev/null
+++ b/sys-fs/udev/files/242-gcc-9.patch
@@ -0,0 +1,163 @@
+From c98b3545008d8e984ab456dcf79787418fcbfe13 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
+Date: Tue, 7 May 2019 13:46:55 +0200
+Subject: [PATCH] network: remove redunant link name in message
+
+Fixes #12454.
+
+gcc was complaining that the link->ifname argument is NULL. Adding
+assert(link->ifname) right before the call has no effect. It seems that
+gcc is confused by the fact that log_link_warning_errno() internally
+calls log_object(), with link->ifname passed as the object. log_object()
+is also a macro and is does a check whether the passed object is NULL.
+So we have a check if something is NULL right next an unconditional use
+of it where it cannot be NULL. I think it's a bug in gcc.
+
+Anyway, we don't need to use link->ifname here. log_object() already prepends
+the object name to the message.
+---
+ src/network/networkd-link.c | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c
+index 533193ac932..6fc82940033 100644
+--- a/src/network/networkd-link.c
++++ b/src/network/networkd-link.c
+@@ -338,8 +338,7 @@ static int link_enable_ipv6(Link *link) {
+ 
+         r = sysctl_write_ip_property_boolean(AF_INET6, link->ifname, "disable_ipv6", disabled);
+         if (r < 0)
+-                log_link_warning_errno(link, r, "Cannot %s IPv6 for interface %s: %m",
+-                                       enable_disable(!disabled), link->ifname);
++                log_link_warning_errno(link, r, "Cannot %s IPv6: %m", enable_disable(!disabled));
+         else
+                 log_link_info(link, "IPv6 successfully %sd", enable_disable(!disabled));
+ 
+From bcb846f30f9ca8f42e79d109706aee9f2032261b Mon Sep 17 00:00:00 2001
+From: Mike Gilbert <floppym@gentoo.org>
+Date: Wed, 22 May 2019 10:31:01 -0400
+Subject: [PATCH] shared/machine-image: avoid passing NULL to log_debug_errno
+
+Fixes: https://github.com/systemd/systemd/issues/12534
+---
+ src/shared/machine-image.c | 11 ++++++++---
+ 1 file changed, 8 insertions(+), 3 deletions(-)
+
+diff --git a/src/shared/machine-image.c b/src/shared/machine-image.c
+index 6b9d8fb97a6..6a6d952b424 100644
+--- a/src/shared/machine-image.c
++++ b/src/shared/machine-image.c
+@@ -201,11 +201,13 @@ static int image_make(
+                 Image **ret) {
+ 
+         _cleanup_free_ char *pretty_buffer = NULL;
++        _cleanup_free_ char *cwd = NULL;
+         struct stat stbuf;
+         bool read_only;
+         int r;
+ 
+         assert(dfd >= 0 || dfd == AT_FDCWD);
++        assert(path || dfd == AT_FDCWD);
+         assert(filename);
+ 
+         /* We explicitly *do* follow symlinks here, since we want to allow symlinking trees, raw files and block
+@@ -221,6 +223,9 @@ static int image_make(
+                 st = &stbuf;
+         }
+ 
++        if (!path)
++                safe_getcwd(&cwd);
++
+         read_only =
+                 (path && path_startswith(path, "/usr")) ||
+                 (faccessat(dfd, filename, W_OK, AT_EACCESS) < 0 && errno == EROFS);
+@@ -359,7 +364,7 @@ static int image_make(
+ 
+                 block_fd = openat(dfd, filename, O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_NOCTTY);
+                 if (block_fd < 0)
+-                        log_debug_errno(errno, "Failed to open block device %s/%s, ignoring: %m", path, filename);
++                        log_debug_errno(errno, "Failed to open block device %s/%s, ignoring: %m", path ?: strnull(cwd), filename);
+                 else {
+                         /* Refresh stat data after opening the node */
+                         if (fstat(block_fd, &stbuf) < 0)
+@@ -373,13 +378,13 @@ static int image_make(
+                                 int state = 0;
+ 
+                                 if (ioctl(block_fd, BLKROGET, &state) < 0)
+-                                        log_debug_errno(errno, "Failed to issue BLKROGET on device %s/%s, ignoring: %m", path, filename);
++                                        log_debug_errno(errno, "Failed to issue BLKROGET on device %s/%s, ignoring: %m", path ?: strnull(cwd), filename);
+                                 else if (state)
+                                         read_only = true;
+                         }
+ 
+                         if (ioctl(block_fd, BLKGETSIZE64, &size) < 0)
+-                                log_debug_errno(errno, "Failed to issue BLKGETSIZE64 on device %s/%s, ignoring: %m", path, filename);
++                                log_debug_errno(errno, "Failed to issue BLKGETSIZE64 on device %s/%s, ignoring: %m", path ?: strnull(cwd), filename);
+ 
+                         block_fd = safe_close(block_fd);
+                 }
+From 2570578d908a8e010828fa1f88826b1c45d534ff Mon Sep 17 00:00:00 2001
+From: Lennart Poettering <lennart@poettering.net>
+Date: Fri, 24 May 2019 10:54:09 +0200
+Subject: [PATCH] machine-image: openat() doesn't operate on the cwd if the
+ first argument is specified
+
+A fix-up for bcb846f30f9ca8f42e79d109706aee9f2032261b.
+---
+ src/shared/machine-image.c | 17 ++++++++++-------
+ 1 file changed, 10 insertions(+), 7 deletions(-)
+
+diff --git a/src/shared/machine-image.c b/src/shared/machine-image.c
+index 6a6d952b424..55e5f08f91e 100644
+--- a/src/shared/machine-image.c
++++ b/src/shared/machine-image.c
+@@ -200,8 +200,7 @@ static int image_make(
+                 const struct stat *st,
+                 Image **ret) {
+ 
+-        _cleanup_free_ char *pretty_buffer = NULL;
+-        _cleanup_free_ char *cwd = NULL;
++        _cleanup_free_ char *pretty_buffer = NULL, *parent = NULL;
+         struct stat stbuf;
+         bool read_only;
+         int r;
+@@ -223,8 +222,12 @@ static int image_make(
+                 st = &stbuf;
+         }
+ 
+-        if (!path)
+-                safe_getcwd(&cwd);
++        if (!path) {
++                if (dfd == AT_FDCWD)
++                        (void) safe_getcwd(&parent);
++                else
++                        (void) fd_get_path(dfd, &parent);
++        }
+ 
+         read_only =
+                 (path && path_startswith(path, "/usr")) ||
+@@ -364,7 +367,7 @@ static int image_make(
+ 
+                 block_fd = openat(dfd, filename, O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_NOCTTY);
+                 if (block_fd < 0)
+-                        log_debug_errno(errno, "Failed to open block device %s/%s, ignoring: %m", path ?: strnull(cwd), filename);
++                        log_debug_errno(errno, "Failed to open block device %s/%s, ignoring: %m", path ?: strnull(parent), filename);
+                 else {
+                         /* Refresh stat data after opening the node */
+                         if (fstat(block_fd, &stbuf) < 0)
+@@ -378,13 +381,13 @@ static int image_make(
+                                 int state = 0;
+ 
+                                 if (ioctl(block_fd, BLKROGET, &state) < 0)
+-                                        log_debug_errno(errno, "Failed to issue BLKROGET on device %s/%s, ignoring: %m", path ?: strnull(cwd), filename);
++                                        log_debug_errno(errno, "Failed to issue BLKROGET on device %s/%s, ignoring: %m", path ?: strnull(parent), filename);
+                                 else if (state)
+                                         read_only = true;
+                         }
+ 
+                         if (ioctl(block_fd, BLKGETSIZE64, &size) < 0)
+-                                log_debug_errno(errno, "Failed to issue BLKGETSIZE64 on device %s/%s, ignoring: %m", path ?: strnull(cwd), filename);
++                                log_debug_errno(errno, "Failed to issue BLKGETSIZE64 on device %s/%s, ignoring: %m", path ?: strnull(parent), filename);
+ 
+                         block_fd = safe_close(block_fd);
+                 }

diff --git a/sys-fs/udev/udev-242.ebuild b/sys-fs/udev/udev-242.ebuild
index 0490d5f1dea..126aa9ccf37 100644
--- a/sys-fs/udev/udev-242.ebuild
+++ b/sys-fs/udev/udev-242.ebuild
@@ -97,6 +97,7 @@ src_prepare() {
 	fi
 
 	local PATCHES=(
+		"${FILESDIR}"/242-gcc-9.patch
 	)
 
 	default


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-fs/udev/, sys-fs/udev/files/
@ 2019-10-11  4:38 William Hubbs
  0 siblings, 0 replies; 13+ messages in thread
From: William Hubbs @ 2019-10-11  4:38 UTC (permalink / raw
  To: gentoo-commits

commit:     c675e266b1c5b8fe4e5db814db6de7c3994cb6d2
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Fri Oct 11 04:37:09 2019 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Fri Oct 11 04:37:41 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c675e266

sys-fs/udev: remove several old versions

Package-Manager: Portage-2.3.76, Repoman-2.3.16
Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-fs/udev/Manifest                               |   9 -
 sys-fs/udev/files/236-uucp-group.patch             |  13 -
 ...issing-comma-in-raw_clone-assembly-for-sp.patch |  29 --
 sys-fs/udev/files/239-debug-extra.patch            |  40 ---
 sys-fs/udev/files/239-stat-0.patch                 | 108 -------
 sys-fs/udev/files/239-stat-1.patch                 |  74 -----
 sys-fs/udev/udev-236-r1.ebuild                     | 336 ---------------------
 sys-fs/udev/udev-238.ebuild                        | 323 --------------------
 sys-fs/udev/udev-239.ebuild                        | 327 --------------------
 sys-fs/udev/udev-240-r2.ebuild                     | 325 --------------------
 sys-fs/udev/udev-240-r3.ebuild                     | 325 --------------------
 sys-fs/udev/udev-241.ebuild                        | 328 --------------------
 sys-fs/udev/udev-241_rc1.ebuild                    | 326 --------------------
 sys-fs/udev/udev-241_rc2.ebuild                    | 326 --------------------
 14 files changed, 2889 deletions(-)

diff --git a/sys-fs/udev/Manifest b/sys-fs/udev/Manifest
index b53cebb6825..875ca45a4ae 100644
--- a/sys-fs/udev/Manifest
+++ b/sys-fs/udev/Manifest
@@ -1,11 +1,2 @@
-DIST systemd-236.tar.gz 6759035 BLAKE2B 0fc26bd67fb6cc3b0565c763fc26e38186c4b05c3d38652b73a2189dfbfb46382dba239f7f6f889eec57ad1d8f69d4098745c8f4ca16a707aa23b7771f2328f3 SHA512 1a9672960e03e05c09e41fb8cfe9b0f25e867fd43f37f8371515ddddfdbd4270afd746a6da733f6d1d3b2cc43db1ecc7a9f2245f2dac2ec233db74e9e70e4f6d
-DIST systemd-238.tar.gz 6954022 BLAKE2B 9b5cc36a7234c0d037a2656ee1e5ed54186a394b8be41771ebc29c903d3efcecf7f13f004a6d1695c022923bd0d540a243e897852f07e810f73fd3163f688dde SHA512 c0f272b022308d3bd94679184e102a8dc85de55310bda205a458ea33c77c7733e5c8c8e5b15f786ba3e0ce59e7c6a9bf0d5a0950517c6b91e0f345950129b9c8
-DIST systemd-239.tar.gz 7157293 BLAKE2B 975f6215c8bb6662d6e161f637e1fece22930c0190b3c31a8fc4cb1a10600546a252704ac95590d9d14e495fcd06082a590e6d755e36603a41b3a396d579d8b0 SHA512 fd44590dfd148504c5ed1e67521efce50d84b627b7fc77015fa95dfa76d7a42297c56cc89eff40181809732024b16d48f2a87038cf435e0c63bc2b95ecd86b0f
-DIST systemd-240-patches-1.tar.gz 15364 BLAKE2B e5cf4c2b8666a5c03e658f46674422d2566a748d3dc088f3cda0f5c5e7b51aec00a531ef7e9d047fd59504299d2e8a44faa353da1183260ae72156bb486d51f7 SHA512 1541810dbcfcc75c4323015c056c963ef69d633761293dea7f27aa6106e3ccc59a84263c703fc5542cf2fb3410c846e97ffb11ecc7d56a98ca658b43b73b6313
-DIST systemd-240-patches-3.tar.gz 31952 BLAKE2B 0677d24c4f4e1575dbd4953eb75734f0773671e4ffc2a8d848353a379f5ea2caf4f96620ed6303d98ec00a15367d5e2124b493aaef80b1a0fe118866a1c04ada SHA512 e604e1de17bcd4c941036f12d2e3ae96dd6e86647db2b07576e8468405900b6e8af6a0e55a50c7e9b19704601930b8152c8ac506b2624e261ee0cd35dfc91a21
-DIST systemd-240.tar.gz 7582001 BLAKE2B cf53595a83424984dd9f533f7cd0c9905366c5a52ab946fc45ff7fd1bcc85978ff654720113641534e40c0f9a1ad1c9628255778616770762950426789f659c3 SHA512 da7467781b16f65d868931ae88fd07554db61542aec7f11dbec9f7279b529f900301edfea2d3813ddb64eeb3fdcfb7be86e540c65212dd7cfdcdebbc80de2ff5
-DIST systemd-241-rc1.tar.gz 7617965 BLAKE2B 6c491297b71ad3c473d644de04bb334f902ee4110d647b654c5452f34401cfc11c7564b290022072555f3fbd46674ce009f587622f412f8a66330a7089db34c5 SHA512 168ba80d6e8abadbf1ed84270f2b02e257f1490b61021bb6fb704d9b5fad2670b63e0fc0cb26071e8d56c993faa30274e80d53cf49154cce2b609f47c73b30e0
-DIST systemd-241-rc2.tar.gz 7619504 BLAKE2B 610940b3141d36a0534cf477d303eb681f418f8c04d7e9ff1d28832d02c05d68195aec108b15392662b134020c28df5b35f6c1c85f8eea8e7090cdc210ce5e26 SHA512 69932b1e5d48fbf6fd650a91354763b1e7e8d490def98a011d6377ee8623abc21244f2c8ddd97a500c4d3e6ab11bae2a6148ddc84e325d75a0273b3d456d8f41
-DIST systemd-241.tar.gz 7640538 BLAKE2B 69d7196fee0d0ad06ea8d7c78b0299cc17517ecce3ca4c0b1181a3fbb13bc2627629156785051e2ff427dcc21414f7a078724c6409ebaa431618e4799ebcd50a SHA512 a7757574590e8aa37e1291ea0b2c5eb03a8d8062fe9462fa5b0bf50830c933e2b301d106c70d904f94afc0aa8e43a8acfd11926dfa25b1b89174580e491e545e
 DIST systemd-242.tar.gz 7831435 BLAKE2B 288e65d0a8e133ef5885689eb16118a83d93c730e342da63115cea0892fc999104c3a4856c83f3e7ef909ba2f3311146730b05ee02d84cc0400851ccbdcd54cd SHA512 578f68a3c8f2d454198fc04ff8d943abcfb390531d57f9603d185857f7afa7f4dc641dafecf49ce50fe22f5837b252b181400891e8efd4459fd4f69bb4283cb4
 DIST systemd-243.tar.gz 8242522 BLAKE2B 89e3ebbea5a99061329f7c78220a66c1e075d5ba90dfdf5ee8d0d9b762ef4600dc82d8ca2054632e5e343b6272cd8046c92f7f99dcfa8287c5ef2b42fb96d4cb SHA512 56b52a297aa5ac04d9667eb3afb1598725b197de73ff72baa1aabbc2844e36fba7b7fccdf6d214ae8b5b926616b2b7e15772763aaa80ec938d74333ff9c8673e

diff --git a/sys-fs/udev/files/236-uucp-group.patch b/sys-fs/udev/files/236-uucp-group.patch
deleted file mode 100644
index be0ba065430..00000000000
--- a/sys-fs/udev/files/236-uucp-group.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/rules/50-udev-default.rules.in b/rules/50-udev-default.rules.in
-index 71e716913..f24c9e6ae 100644
---- a/rules/50-udev-default.rules.in
-+++ b/rules/50-udev-default.rules.in
-@@ -22,7 +22,7 @@ SUBSYSTEM=="tty", KERNEL=="sclp_line[0-9]*", GROUP="tty", MODE="0620"
- SUBSYSTEM=="tty", KERNEL=="ttysclp[0-9]*", GROUP="tty", MODE="0620"
- SUBSYSTEM=="tty", KERNEL=="3270/tty[0-9]*", GROUP="tty", MODE="0620"
- SUBSYSTEM=="vc", KERNEL=="vcs*|vcsa*", GROUP="tty"
--KERNEL=="tty[A-Z]*[0-9]|ttymxc[0-9]*|pppox[0-9]*|ircomm[0-9]*|noz[0-9]*|rfcomm[0-9]*", GROUP="dialout"
-+KERNEL=="tty[A-Z]*[0-9]|ttymxc[0-9]*|pppox[0-9]*|ircomm[0-9]*|noz[0-9]*|rfcomm[0-9]*", GROUP="uucp"
- 
- SUBSYSTEM=="mem", KERNEL=="mem|kmem|port", GROUP="kmem", MODE="0640"
- 

diff --git a/sys-fs/udev/files/239-basic-add-missing-comma-in-raw_clone-assembly-for-sp.patch b/sys-fs/udev/files/239-basic-add-missing-comma-in-raw_clone-assembly-for-sp.patch
deleted file mode 100644
index 5f253bbaab9..00000000000
--- a/sys-fs/udev/files/239-basic-add-missing-comma-in-raw_clone-assembly-for-sp.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 7a022d7583f13fb3d4fb437d386364782f4efa88 Mon Sep 17 00:00:00 2001
-From: Mike Gilbert <floppym@gentoo.org>
-Date: Wed, 27 Jun 2018 10:36:50 -0400
-Subject: [PATCH 18/19] basic: add missing comma in raw_clone assembly for
- sparc
-
-Fixes: 96f64eb5741b157f26a9089816fdd992e959792e
-Closes: https://github.com/systemd/systemd/issues/9444
-(cherry picked from commit 358248caa3eca525751694de7c34b16bb46d5a9c)
----
- src/basic/raw-clone.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/basic/raw-clone.h b/src/basic/raw-clone.h
-index 1f134ba7f..b8857b0cd 100644
---- a/src/basic/raw-clone.h
-+++ b/src/basic/raw-clone.h
-@@ -60,7 +60,7 @@ static inline pid_t raw_clone(unsigned long flags) {
-                              "mov %%o0, %1" :
-                              "=r"(in_child), "=r"(child_pid), "=r"(error) :
-                              "i"(__NR_clone), "r"(flags) :
--                             "%o1", "%o0", "%g1" "cc" );
-+                             "%o1", "%o0", "%g1", "cc" );
- 
-                 if (error) {
-                         errno = child_pid;
--- 
-2.18.0.rc2
-

diff --git a/sys-fs/udev/files/239-debug-extra.patch b/sys-fs/udev/files/239-debug-extra.patch
deleted file mode 100644
index 19db590257c..00000000000
--- a/sys-fs/udev/files/239-debug-extra.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From 8f6b442a78d0b485f044742ad90b2e8271b4e68e Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
-Date: Sun, 19 Aug 2018 19:11:30 +0200
-Subject: [PATCH] meson: rename -Ddebug to -Ddebug-extra
-
-Meson added -Doptimization and -Ddebug options, which obviously causes
-a conflict with our -Ddebug options. Let's rename it.
-
-Fixes #9883.
----
- meson.build       | 2 +-
- meson_options.txt | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/meson.build b/meson.build
-index f79ac4b12e7..2209c935ad6 100644
---- a/meson.build
-+++ b/meson.build
-@@ -763,7 +763,7 @@ substs.set('DEBUGTTY', get_option('debug-tty'))
- 
- enable_debug_hashmap = false
- enable_debug_mmap_cache = false
--foreach name : get_option('debug')
-+foreach name : get_option('debug-extra')
-         if name == 'hashmap'
-                 enable_debug_hashmap = true
-         elif name == 'mmap-cache'
-diff --git a/meson_options.txt b/meson_options.txt
-index e3140c8c110..7b1f61bf464 100644
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -45,7 +45,7 @@ option('debug-shell', type : 'string', value : '/bin/sh',
-        description : 'path to debug shell binary')
- option('debug-tty', type : 'string', value : '/dev/tty9',
-        description : 'specify the tty device for debug shell')
--option('debug', type : 'array', choices : ['hashmap', 'mmap-cache'], value : [],
-+option('debug-extra', type : 'array', choices : ['hashmap', 'mmap-cache'], value : [],
-        description : 'enable extra debugging')
- option('memory-accounting-default', type : 'boolean',
-        description : 'enable MemoryAccounting= by default')

diff --git a/sys-fs/udev/files/239-stat-0.patch b/sys-fs/udev/files/239-stat-0.patch
deleted file mode 100644
index e136b703a2f..00000000000
--- a/sys-fs/udev/files/239-stat-0.patch
+++ /dev/null
@@ -1,108 +0,0 @@
-From 75720bff62a84896e9a0654afc7cf9408cf89a38 Mon Sep 17 00:00:00 2001
-From: Filipe Brandenburger <filbranden@google.com>
-Date: Sun, 15 Jul 2018 22:43:35 -0700
-Subject: [PATCH] build-sys: Detect whether struct statx is defined in
- sys/stat.h
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Starting with glibc 2.27.9000-36.fc29, include file sys/stat.h will have a
-definition for struct statx, in which case include file linux/stat.h should be
-avoided, in order to prevent a duplicate definition.
-
-    In file included from ../src/basic/missing.h:18,
-		     from ../src/basic/util.h:28,
-		     from ../src/basic/hashmap.h:10,
-		     from ../src/shared/bus-util.h:12,
-		     from ../src/libsystemd/sd-bus/bus-creds.c:11:
-    /usr/include/linux/stat.h:99:8: error: redefinition of ‘struct statx’
-     struct statx {
-	    ^~~~~
-    In file included from /usr/include/sys/stat.h:446,
-		     from ../src/basic/util.h:19,
-		     from ../src/basic/hashmap.h:10,
-		     from ../src/shared/bus-util.h:12,
-		     from ../src/libsystemd/sd-bus/bus-creds.c:11:
-    /usr/include/bits/statx.h:36:8: note: originally defined here
-     struct statx
-	    ^~~~~
-
-Extend our meson.build to look for struct statx when only sys/stat.h is
-included and, in that case, do not include linux/stat.h anymore.
-
-Tested that systemd builds correctly when using a glibc version that includes a
-definition for struct statx.
-
-glibc Fedora RPM update:
-https://src.fedoraproject.org/rpms/glibc/c/28cb5d31fc1e5887912283c889689c47076278ae
-
-glibc upstream commit:
-https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=fd70af45528d59a00eb3190ef6706cb299488fcd
----
- meson.build            | 5 +++++
- src/basic/missing.h    | 5 ++++-
- src/basic/xattr-util.c | 1 -
- 3 files changed, 9 insertions(+), 2 deletions(-)
-
-diff --git a/meson.build b/meson.build
-index dd904c7148..68423bdfa5 100644
---- a/meson.build
-+++ b/meson.build
-@@ -425,6 +425,7 @@ decl_headers = '''
- #include <sys/stat.h>
- '''
- # FIXME: key_serial_t is only defined in keyutils.h, this is bound to fail
-+# FIXME: these should use -D_GNU_SOURCE, since that is defined at build time
- 
- foreach decl : ['char16_t',
-                 'char32_t',
-@@ -439,6 +440,10 @@ foreach decl : ['char16_t',
-         conf.set10('HAVE_' + decl.underscorify().to_upper(), have)
- endforeach
- 
-+conf.set10('HAVE_STRUCT_STATX_IN_SYS_STAT_H', cc.sizeof('struct statx', prefix : '''
-+#include <sys/stat.h>
-+''', args : '-D_GNU_SOURCE') > 0)
-+
- foreach decl : [['IFLA_INET6_ADDR_GEN_MODE',         'linux/if_link.h'],
-                 ['IN6_ADDR_GEN_MODE_STABLE_PRIVACY', 'linux/if_link.h'],
-                 ['IFLA_VRF_TABLE',                   'linux/if_link.h'],
-diff --git a/src/basic/missing.h b/src/basic/missing.h
-index 71a07d0574..14ad3d4914 100644
---- a/src/basic/missing.h
-+++ b/src/basic/missing.h
-@@ -15,7 +15,6 @@
- #include <linux/neighbour.h>
- #include <linux/oom.h>
- #include <linux/rtnetlink.h>
--#include <linux/stat.h>
- #include <net/ethernet.h>
- #include <stdlib.h>
- #include <sys/resource.h>
-@@ -25,6 +24,10 @@
- #include <uchar.h>
- #include <unistd.h>
- 
-+#if !HAVE_STRUCT_STATX_IN_SYS_STAT_H
-+#include <linux/stat.h>
-+#endif
-+
- #if HAVE_AUDIT
- #include <libaudit.h>
- #endif
-diff --git a/src/basic/xattr-util.c b/src/basic/xattr-util.c
-index c5c55ea846..0ee0979837 100644
---- a/src/basic/xattr-util.c
-+++ b/src/basic/xattr-util.c
-@@ -2,7 +2,6 @@
- 
- #include <errno.h>
- #include <fcntl.h>
--#include <linux/stat.h>
- #include <stdint.h>
- #include <stdlib.h>
- #include <string.h>
--- 
-2.19.1
-

diff --git a/sys-fs/udev/files/239-stat-1.patch b/sys-fs/udev/files/239-stat-1.patch
deleted file mode 100644
index 1104de3c9c1..00000000000
--- a/sys-fs/udev/files/239-stat-1.patch
+++ /dev/null
@@ -1,74 +0,0 @@
-From 9c869d08d82c73f62ab3527567858ce4b0cf1257 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
-Date: Wed, 18 Jul 2018 17:26:17 +0200
-Subject: [PATCH] meson: unify linux/stat.h check with other checks and use
- _GNU_SOURCE
-
-Using _GNU_SOURCE is better because that's how we include the headers in the
-actual build, and some headers define different stuff when it is defined.
-sys/stat.h for example defines 'struct statx' conditionally.
----
- meson.build         | 20 ++++++++++++++------
- src/basic/missing.h |  2 +-
- 2 files changed, 15 insertions(+), 7 deletions(-)
-
-diff --git a/meson.build b/meson.build
-index 68423bdfa5..99035d2306 100644
---- a/meson.build
-+++ b/meson.build
-@@ -421,11 +421,9 @@ decl_headers = '''
- #include <uchar.h>
- #include <linux/ethtool.h>
- #include <linux/fib_rules.h>
--#include <linux/stat.h>
- #include <sys/stat.h>
- '''
- # FIXME: key_serial_t is only defined in keyutils.h, this is bound to fail
--# FIXME: these should use -D_GNU_SOURCE, since that is defined at build time
- 
- foreach decl : ['char16_t',
-                 'char32_t',
-@@ -436,13 +434,23 @@ foreach decl : ['char16_t',
-                ]
- 
-         # We get -1 if the size cannot be determined
--        have = cc.sizeof(decl, prefix : decl_headers) > 0
-+        have = cc.sizeof(decl, prefix : decl_headers, args : '-D_GNU_SOURCE') > 0
-+
-+        if decl == 'struct statx'
-+                if have
-+                        want_linux_stat_h = false
-+                else
-+                        have = cc.sizeof(decl,
-+                                         prefix : decl_headers + '#include <linux/stat.h>',
-+                                         args : '-D_GNU_SOURCE') > 0
-+                        want_linux_stat_h = have
-+                endif
-+        endif
-+
-         conf.set10('HAVE_' + decl.underscorify().to_upper(), have)
- endforeach
- 
--conf.set10('HAVE_STRUCT_STATX_IN_SYS_STAT_H', cc.sizeof('struct statx', prefix : '''
--#include <sys/stat.h>
--''', args : '-D_GNU_SOURCE') > 0)
-+conf.set10('WANT_LINUX_STAT_H', want_linux_stat_h)
- 
- foreach decl : [['IFLA_INET6_ADDR_GEN_MODE',         'linux/if_link.h'],
-                 ['IN6_ADDR_GEN_MODE_STABLE_PRIVACY', 'linux/if_link.h'],
-diff --git a/src/basic/missing.h b/src/basic/missing.h
-index 14ad3d4914..9044683b15 100644
---- a/src/basic/missing.h
-+++ b/src/basic/missing.h
-@@ -24,7 +24,7 @@
- #include <uchar.h>
- #include <unistd.h>
- 
--#if !HAVE_STRUCT_STATX_IN_SYS_STAT_H
-+#if WANT_LINUX_STAT_H
- #include <linux/stat.h>
- #endif
- 
--- 
-2.19.1
-

diff --git a/sys-fs/udev/udev-236-r1.ebuild b/sys-fs/udev/udev-236-r1.ebuild
deleted file mode 100644
index ace4ae35562..00000000000
--- a/sys-fs/udev/udev-236-r1.ebuild
+++ /dev/null
@@ -1,336 +0,0 @@
-# Copyright 2003-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit bash-completion-r1 linux-info meson ninja-utils multilib-minimal toolchain-funcs udev user versionator
-
-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 -> systemd-${PV}.tar.gz"
-	KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86"
-fi
-
-DESCRIPTION="Linux dynamic and persistent device naming support (aka userspace devfs)"
-HOMEPAGE="https://www.freedesktop.org/wiki/Software/systemd"
-
-LICENSE="LGPL-2.1 MIT GPL-2"
-SLOT="0"
-IUSE="acl +kmod selinux"
-
-RESTRICT="test"
-
-COMMON_DEPEND=">=sys-apps/util-linux-2.30[${MULTILIB_USEDEP}]
-	sys-libs/libcap[${MULTILIB_USEDEP}]
-	acl? ( sys-apps/acl )
-	kmod? ( >=sys-apps/kmod-16 )
-	selinux? ( >=sys-libs/libselinux-2.1.9 )
-	!<sys-libs/glibc-2.11
-	!sys-apps/gentoo-systemd-integration
-	!sys-apps/systemd"
-DEPEND="${COMMON_DEPEND}
-	dev-util/gperf
-	>=dev-util/intltool-0.50
-	>=dev-util/meson-0.40.0
-	dev-util/ninja
-	>=sys-apps/coreutils-8.16
-	virtual/os-headers
-	virtual/pkgconfig
-	>=sys-kernel/linux-headers-3.9
-	app-text/docbook-xml-dtd:4.2
-	app-text/docbook-xml-dtd:4.5
-	app-text/docbook-xsl-stylesheets
-	dev-libs/libxslt"
-RDEPEND="${COMMON_DEPEND}
-	!<sys-fs/lvm2-2.02.103
-	!<sec-policy/selinux-base-2.20120725-r10"
-PDEPEND=">=sys-apps/hwids-20140304[udev]
-	>=sys-fs/udev-init-scripts-26"
-
-S=${WORKDIR}/systemd-${PV}
-EGIT_CHECKOUT_DIR=${S}
-
-pkg_setup() {
-	if [[ ${MERGE_TYPE} != buildonly ]]; then
-		CONFIG_CHECK="~BLK_DEV_BSG ~DEVTMPFS ~!IDE ~INOTIFY_USER ~!SYSFS_DEPRECATED ~!SYSFS_DEPRECATED_V2 ~SIGNALFD ~EPOLL ~FHANDLE ~NET ~!FW_LOADER_USER_HELPER ~UNIX"
-		linux-info_pkg_setup
-
-		# CONFIG_FHANDLE was introduced by 2.6.39
-		local MINKV=2.6.39
-
-		if kernel_is -lt ${MINKV//./ }; then
-			eerror "Your running kernel is too old to run this version of ${P}"
-			eerror "You need to upgrade kernel at least to ${MINKV}"
-		fi
-
-		if kernel_is -lt 3 7; then
-			ewarn "Your running kernel is too old to have firmware loader and"
-			ewarn "this version of ${P} doesn't have userspace firmware loader"
-			ewarn "If you need firmware support, you need to upgrade kernel at least to 3.7"
-		fi
-	fi
-}
-
-src_prepare() {
-	if ! [[ ${PV} = 9999* ]]; then
-		# secure_getenv() disable for non-glibc systems wrt bug #443030
-		if ! [[ $(grep -r secure_getenv * | wc -l) -eq 27 ]]; then
-			eerror "The line count for secure_getenv() failed, see bug #443030"
-			die
-		fi
-	fi
-
-	cat <<-EOF > "${T}"/40-gentoo.rules
-	# Gentoo specific floppy and usb groups
-	ACTION=="add", SUBSYSTEM=="block", KERNEL=="fd[0-9]", GROUP="floppy"
-	ACTION=="add", SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GROUP="usb"
-	EOF
-
-	local PATCHES=(
-		"${FILESDIR}/236-uucp-group.patch"
-	)
-
-	default
-
-	if ! use elibc_glibc; then #443030
-		echo '#define secure_getenv(x) NULL' >> config.h.in
-		sed -i -e '/error.*secure_getenv/s:.*:#define secure_getenv(x) NULL:' src/shared/missing.h || die
-	fi
-}
-
-meson_multilib_native_use() {
-	if multilib_is_native_abi && use "$1"; then
-		echo true
-	else
-		echo false
-	fi
-}
-
-multilib_src_configure() {
-	local emesonargs=(
-		-Dacl=$(meson_multilib_native_use acl)
-		-Defi=false
-		-Dkmod=$(meson_multilib_native_use kmod)
-		-Dselinux=$(meson_multilib_native_use selinux)
-		-Dlink-udev-shared=false
-		-Dsplit-usr=true
-
-		# Prevent automagic deps
-		-Dgcrypt=false
-		-Dlibcryptsetup=false
-		-Dlibidn=false
-		-Dlibidn2=false
-		-Dlibiptc=false
-		-Dseccomp=false
-		-Dlz4=false
-		-Dxz=false
-	)
-	meson_src_configure
-}
-
-src_configure() {
-	# Prevent conflicts with i686 cross toolchain, bug 559726
-	tc-export AR CC NM OBJCOPY RANLIB
-	multilib-minimal_src_configure
-}
-
-multilib_src_compile() {
-	# meson creates this link
-	local libudev=$(readlink src/libudev/libudev.so.1)
-
-	local targets=(
-		src/libudev/${libudev}
-	)
-	if multilib_is_native_abi; then
-		targets+=(
-			systemd-udevd
-			udevadm
-			src/udev/ata_id
-			src/udev/cdrom_id
-			src/udev/collect
-			src/udev/mtd_probe
-			src/udev/scsi_id
-			src/udev/v4l_id
-			man/udev.conf.5
-			man/systemd.link.5
-			man/hwdb.7
-			man/udev.7
-			man/systemd-udevd.service.8
-			man/udevadm.8
-		)
-	fi
-	eninja "${targets[@]}"
-}
-
-multilib_src_install() {
-	local libudev=$(readlink src/libudev/libudev.so.1)
-
-	into /
-	dolib.so src/libudev/{${libudev},libudev.so.1,libudev.so}
-
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins src/libudev/libudev.pc
-
-	if multilib_is_native_abi; then
-		into /
-		dobin udevadm
-
-		exeinto /lib/systemd
-		doexe systemd-udevd
-
-		exeinto /lib/udev
-		doexe src/udev/{ata_id,cdrom_id,collect,mtd_probe,scsi_id,v4l_id}
-
-		rm rules/99-systemd.rules || die
-		insinto /lib/udev/rules.d
-		doins rules/*.rules
-
-		insinto /usr/share/pkgconfig
-		doins src/udev/udev.pc
-
-		mv man/systemd-udevd.service.8 man/systemd-udevd.8 || die
-		rm man/systemd-udevd-{control,kernel}.socket.8 || die
-		doman man/*.[0-9]
-	fi
-}
-
-multilib_src_install_all() {
-	doheader src/libudev/libudev.h
-
-	insinto /etc/udev
-	doins src/udev/udev.conf
-	keepdir /etc/udev/{hwdb.d,rules.d}
-
-	insinto /lib/systemd/network
-	doins network/99-default.link
-
-	# see src_prepare() for content of 40-gentoo.rules
-	insinto /lib/udev/rules.d
-	doins "${T}"/40-gentoo.rules
-	doins "${S}"/rules/*.rules
-
-	dobashcomp shell-completion/bash/udevadm
-
-	insinto /usr/share/zsh/site-functions
-	doins shell-completion/zsh/_udevadm
-
-	einstalldocs
-}
-
-pkg_postinst() {
-	mkdir -p "${ROOT%/}"/run
-
-	# "losetup -f" is confused if there is an empty /dev/loop/, Bug #338766
-	# So try to remove it here (will only work if empty).
-	rmdir "${ROOT%/}"/dev/loop 2>/dev/null
-	if [[ -d ${ROOT%/}/dev/loop ]]; then
-		ewarn "Please make sure your remove /dev/loop,"
-		ewarn "else losetup may be confused when looking for unused devices."
-	fi
-
-	local fstab="${ROOT%/}"/etc/fstab dev path fstype rest
-	while read -r dev path fstype rest; do
-		if [[ ${path} == /dev && ${fstype} != devtmpfs ]]; then
-			ewarn "You need to edit your /dev line in ${fstab} to have devtmpfs"
-			ewarn "filesystem. Otherwise udev won't be able to boot."
-			ewarn "See, https://bugs.gentoo.org/453186"
-		fi
-	done < "${fstab}"
-
-	if [[ -d ${ROOT%/}/usr/lib/udev ]]; then
-		ewarn
-		ewarn "Please re-emerge all packages on your system which install"
-		ewarn "rules and helpers in /usr/lib/udev. They should now be in"
-		ewarn "/lib/udev."
-		ewarn
-		ewarn "One way to do this is to run the following command:"
-		ewarn "emerge -av1 \$(qfile -q -S -C /usr/lib/udev)"
-		ewarn "Note that qfile can be found in app-portage/portage-utils"
-	fi
-
-	local old_cd_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-cd.rules
-	local old_net_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-net.rules
-	for old_rules in "${old_cd_rules}" "${old_net_rules}"; do
-		if [[ -f ${old_rules} ]]; then
-			ewarn
-			ewarn "File ${old_rules} is from old udev installation but if you still use it,"
-			ewarn "rename it to something else starting with 70- to silence this deprecation"
-			ewarn "warning."
-		fi
-	done
-
-	elog
-	elog "Starting from version >= 197 the new predictable network interface names are"
-	elog "used by default, see:"
-	elog "https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames"
-	elog "https://cgit.freedesktop.org/systemd/systemd/tree/src/udev/udev-builtin-net_id.c"
-	elog
-	elog "Example command to get the information for the new interface name before booting"
-	elog "(replace <ifname> with, for example, eth0):"
-	elog "# udevadm test-builtin net_id /sys/class/net/<ifname> 2> /dev/null"
-	elog
-	elog "You can use either kernel parameter \"net.ifnames=0\", create empty"
-	elog "file /etc/systemd/network/99-default.link, or symlink it to /dev/null"
-	elog "to disable the feature."
-
-	if has_version 'sys-apps/biosdevname'; then
-		ewarn
-		ewarn "You can replace the functionality of sys-apps/biosdevname which has been"
-		ewarn "detected to be installed with the new predictable network interface names."
-	fi
-
-	ewarn
-	ewarn "You need to restart udev as soon as possible to make the upgrade go"
-	ewarn "into effect."
-	ewarn "The method you use to do this depends on your init system."
-	if has_version 'sys-apps/openrc'; then
-		ewarn "For sys-apps/openrc users it is:"
-		ewarn "# /etc/init.d/udev --nodeps restart"
-	fi
-
-	elog
-	elog "For more information on udev on Gentoo, upgrading, writing udev rules, and"
-	elog "fixing known issues visit:"
-	elog "https://wiki.gentoo.org/wiki/Udev"
-	elog "https://wiki.gentoo.org/wiki/Udev/upgrade"
-
-	# If user has disabled 80-net-name-slot.rules using a empty file or a symlink to /dev/null,
-	# do the same for 80-net-setup-link.rules to keep the old behavior
-	local net_move=no
-	local net_name_slot_sym=no
-	local net_rules_path="${ROOT%/}"/etc/udev/rules.d
-	local net_name_slot="${net_rules_path}"/80-net-name-slot.rules
-	local net_setup_link="${net_rules_path}"/80-net-setup-link.rules
-	if [[ ! -e ${net_setup_link} ]]; then
-		[[ -f ${net_name_slot} && $(sed -e "/^#/d" -e "/^\W*$/d" ${net_name_slot} | wc -l) == 0 ]] && net_move=yes
-		if [[ -L ${net_name_slot} && $(readlink ${net_name_slot}) == /dev/null ]]; then
-			net_move=yes
-			net_name_slot_sym=yes
-		fi
-	fi
-	if [[ ${net_move} == yes ]]; then
-		ebegin "Copying ${net_name_slot} to ${net_setup_link}"
-
-		if [[ ${net_name_slot_sym} == yes ]]; then
-			ln -nfs /dev/null "${net_setup_link}"
-		else
-			cp "${net_name_slot}" "${net_setup_link}"
-		fi
-		eend $?
-	fi
-
-	# https://cgit.freedesktop.org/systemd/systemd/commit/rules/50-udev-default.rules?id=3dff3e00e044e2d53c76fa842b9a4759d4a50e69
-	# https://bugs.gentoo.org/246847
-	# https://bugs.gentoo.org/514174
-	enewgroup input
-
-	# Update hwdb database in case the format is changed by udev version.
-	if has_version 'sys-apps/hwids[udev]'; then
-		udevadm hwdb --update --root="${ROOT%/}"
-		# Only reload when we are not upgrading to avoid potential race w/ incompatible hwdb.bin and the running udevd
-		# https://cgit.freedesktop.org/systemd/systemd/commit/?id=1fab57c209035f7e66198343074e9cee06718bda
-		[[ -z ${REPLACING_VERSIONS} ]] && udev_reload
-	fi
-}

diff --git a/sys-fs/udev/udev-238.ebuild b/sys-fs/udev/udev-238.ebuild
deleted file mode 100644
index 0aa97d85fa6..00000000000
--- a/sys-fs/udev/udev-238.ebuild
+++ /dev/null
@@ -1,323 +0,0 @@
-# Copyright 2003-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit bash-completion-r1 linux-info meson ninja-utils multilib-minimal toolchain-funcs udev user versionator
-
-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 -> systemd-${PV}.tar.gz"
-	KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86"
-fi
-
-DESCRIPTION="Linux dynamic and persistent device naming support (aka userspace devfs)"
-HOMEPAGE="https://www.freedesktop.org/wiki/Software/systemd"
-
-LICENSE="LGPL-2.1 MIT GPL-2"
-SLOT="0"
-IUSE="acl +kmod selinux"
-
-RESTRICT="test"
-
-COMMON_DEPEND=">=sys-apps/util-linux-2.30[${MULTILIB_USEDEP}]
-	sys-libs/libcap[${MULTILIB_USEDEP}]
-	acl? ( sys-apps/acl )
-	kmod? ( >=sys-apps/kmod-16 )
-	selinux? ( >=sys-libs/libselinux-2.1.9 )
-	!<sys-libs/glibc-2.11
-	!sys-apps/gentoo-systemd-integration
-	!sys-apps/systemd"
-DEPEND="${COMMON_DEPEND}
-	dev-util/gperf
-	>=dev-util/intltool-0.50
-	>=dev-util/meson-0.40.0
-	dev-util/ninja
-	>=sys-apps/coreutils-8.16
-	virtual/os-headers
-	virtual/pkgconfig
-	>=sys-kernel/linux-headers-3.9
-	app-text/docbook-xml-dtd:4.2
-	app-text/docbook-xml-dtd:4.5
-	app-text/docbook-xsl-stylesheets
-	dev-libs/libxslt"
-RDEPEND="${COMMON_DEPEND}
-	!<sys-fs/lvm2-2.02.103
-	!<sec-policy/selinux-base-2.20120725-r10"
-PDEPEND=">=sys-apps/hwids-20140304[udev]
-	>=sys-fs/udev-init-scripts-26"
-
-S=${WORKDIR}/systemd-${PV}
-EGIT_CHECKOUT_DIR=${S}
-
-pkg_setup() {
-	if [[ ${MERGE_TYPE} != buildonly ]]; then
-		CONFIG_CHECK="~BLK_DEV_BSG ~DEVTMPFS ~!IDE ~INOTIFY_USER ~!SYSFS_DEPRECATED ~!SYSFS_DEPRECATED_V2 ~SIGNALFD ~EPOLL ~FHANDLE ~NET ~!FW_LOADER_USER_HELPER ~UNIX"
-		linux-info_pkg_setup
-
-		# CONFIG_FHANDLE was introduced by 2.6.39
-		local MINKV=2.6.39
-
-		if kernel_is -lt ${MINKV//./ }; then
-			eerror "Your running kernel is too old to run this version of ${P}"
-			eerror "You need to upgrade kernel at least to ${MINKV}"
-		fi
-
-		if kernel_is -lt 3 7; then
-			ewarn "Your running kernel is too old to have firmware loader and"
-			ewarn "this version of ${P} doesn't have userspace firmware loader"
-			ewarn "If you need firmware support, you need to upgrade kernel at least to 3.7"
-		fi
-	fi
-}
-
-src_prepare() {
-	cat <<-EOF > "${T}"/40-gentoo.rules
-	# Gentoo specific floppy and usb groups
-	ACTION=="add", SUBSYSTEM=="block", KERNEL=="fd[0-9]", GROUP="floppy"
-	ACTION=="add", SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GROUP="usb"
-	EOF
-
-	local PATCHES=(
-		"${FILESDIR}/236-uucp-group.patch"
-	)
-
-	default
-}
-
-meson_multilib_native_use() {
-	if multilib_is_native_abi && use "$1"; then
-		echo true
-	else
-		echo false
-	fi
-}
-
-multilib_src_configure() {
-	local emesonargs=(
-		-Dacl=$(meson_multilib_native_use acl)
-		-Defi=false
-		-Dkmod=$(meson_multilib_native_use kmod)
-		-Dselinux=$(meson_multilib_native_use selinux)
-		-Dlink-udev-shared=false
-		-Dsplit-usr=true
-
-		# Prevent automagic deps
-		-Dgcrypt=false
-		-Dlibcryptsetup=false
-		-Dlibidn=false
-		-Dlibidn2=false
-		-Dlibiptc=false
-		-Dseccomp=false
-		-Dlz4=false
-		-Dxz=false
-	)
-	meson_src_configure
-}
-
-src_configure() {
-	# Prevent conflicts with i686 cross toolchain, bug 559726
-	tc-export AR CC NM OBJCOPY RANLIB
-	multilib-minimal_src_configure
-}
-
-multilib_src_compile() {
-	# meson creates this link
-	local libudev=$(readlink src/udev/libudev.so.1)
-
-	local targets=(
-		src/udev/${libudev}
-	)
-	if multilib_is_native_abi; then
-		targets+=(
-			systemd-udevd
-			udevadm
-			src/udev/ata_id
-			src/udev/cdrom_id
-			src/udev/collect
-			src/udev/mtd_probe
-			src/udev/scsi_id
-			src/udev/v4l_id
-			man/udev.conf.5
-			man/systemd.link.5
-			man/hwdb.7
-			man/udev.7
-			man/systemd-udevd.service.8
-			man/udevadm.8
-		)
-	fi
-	eninja "${targets[@]}"
-}
-
-multilib_src_install() {
-	local libudev=$(readlink src/udev/libudev.so.1)
-
-	into /
-	dolib.so src/udev/{${libudev},libudev.so.1,libudev.so}
-
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins src/libudev/libudev.pc
-
-	if multilib_is_native_abi; then
-		into /
-		dobin udevadm
-
-		exeinto /lib/systemd
-		doexe systemd-udevd
-
-		exeinto /lib/udev
-		doexe src/udev/{ata_id,cdrom_id,collect,mtd_probe,scsi_id,v4l_id}
-
-		rm rules/99-systemd.rules || die
-		insinto /lib/udev/rules.d
-		doins rules/*.rules
-
-		insinto /usr/share/pkgconfig
-		doins src/udev/udev.pc
-
-		mv man/systemd-udevd.service.8 man/systemd-udevd.8 || die
-		rm man/systemd-udevd-{control,kernel}.socket.8 || die
-		doman man/*.[0-9]
-	fi
-}
-
-multilib_src_install_all() {
-	doheader src/libudev/libudev.h
-
-	insinto /etc/udev
-	doins src/udev/udev.conf
-	keepdir /etc/udev/{hwdb.d,rules.d}
-
-	insinto /lib/systemd/network
-	doins network/99-default.link
-
-	# see src_prepare() for content of 40-gentoo.rules
-	insinto /lib/udev/rules.d
-	doins "${T}"/40-gentoo.rules
-	doins "${S}"/rules/*.rules
-
-	dobashcomp shell-completion/bash/udevadm
-
-	insinto /usr/share/zsh/site-functions
-	doins shell-completion/zsh/_udevadm
-
-	einstalldocs
-}
-
-pkg_postinst() {
-	mkdir -p "${ROOT%/}"/run
-
-	# "losetup -f" is confused if there is an empty /dev/loop/, Bug #338766
-	# So try to remove it here (will only work if empty).
-	rmdir "${ROOT%/}"/dev/loop 2>/dev/null
-	if [[ -d ${ROOT%/}/dev/loop ]]; then
-		ewarn "Please make sure your remove /dev/loop,"
-		ewarn "else losetup may be confused when looking for unused devices."
-	fi
-
-	local fstab="${ROOT%/}"/etc/fstab dev path fstype rest
-	while read -r dev path fstype rest; do
-		if [[ ${path} == /dev && ${fstype} != devtmpfs ]]; then
-			ewarn "You need to edit your /dev line in ${fstab} to have devtmpfs"
-			ewarn "filesystem. Otherwise udev won't be able to boot."
-			ewarn "See, https://bugs.gentoo.org/453186"
-		fi
-	done < "${fstab}"
-
-	if [[ -d ${ROOT%/}/usr/lib/udev ]]; then
-		ewarn
-		ewarn "Please re-emerge all packages on your system which install"
-		ewarn "rules and helpers in /usr/lib/udev. They should now be in"
-		ewarn "/lib/udev."
-		ewarn
-		ewarn "One way to do this is to run the following command:"
-		ewarn "emerge -av1 \$(qfile -q -S -C /usr/lib/udev)"
-		ewarn "Note that qfile can be found in app-portage/portage-utils"
-	fi
-
-	local old_cd_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-cd.rules
-	local old_net_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-net.rules
-	for old_rules in "${old_cd_rules}" "${old_net_rules}"; do
-		if [[ -f ${old_rules} ]]; then
-			ewarn
-			ewarn "File ${old_rules} is from old udev installation but if you still use it,"
-			ewarn "rename it to something else starting with 70- to silence this deprecation"
-			ewarn "warning."
-		fi
-	done
-
-	elog
-	elog "Starting from version >= 197 the new predictable network interface names are"
-	elog "used by default, see:"
-	elog "https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames"
-	elog "https://cgit.freedesktop.org/systemd/systemd/tree/src/udev/udev-builtin-net_id.c"
-	elog
-	elog "Example command to get the information for the new interface name before booting"
-	elog "(replace <ifname> with, for example, eth0):"
-	elog "# udevadm test-builtin net_id /sys/class/net/<ifname> 2> /dev/null"
-	elog
-	elog "You can use either kernel parameter \"net.ifnames=0\", create empty"
-	elog "file /etc/systemd/network/99-default.link, or symlink it to /dev/null"
-	elog "to disable the feature."
-
-	if has_version 'sys-apps/biosdevname'; then
-		ewarn
-		ewarn "You can replace the functionality of sys-apps/biosdevname which has been"
-		ewarn "detected to be installed with the new predictable network interface names."
-	fi
-
-	ewarn
-	ewarn "You need to restart udev as soon as possible to make the upgrade go"
-	ewarn "into effect."
-	ewarn "The method you use to do this depends on your init system."
-	if has_version 'sys-apps/openrc'; then
-		ewarn "For sys-apps/openrc users it is:"
-		ewarn "# /etc/init.d/udev --nodeps restart"
-	fi
-
-	elog
-	elog "For more information on udev on Gentoo, upgrading, writing udev rules, and"
-	elog "fixing known issues visit:"
-	elog "https://wiki.gentoo.org/wiki/Udev"
-	elog "https://wiki.gentoo.org/wiki/Udev/upgrade"
-
-	# If user has disabled 80-net-name-slot.rules using a empty file or a symlink to /dev/null,
-	# do the same for 80-net-setup-link.rules to keep the old behavior
-	local net_move=no
-	local net_name_slot_sym=no
-	local net_rules_path="${ROOT%/}"/etc/udev/rules.d
-	local net_name_slot="${net_rules_path}"/80-net-name-slot.rules
-	local net_setup_link="${net_rules_path}"/80-net-setup-link.rules
-	if [[ ! -e ${net_setup_link} ]]; then
-		[[ -f ${net_name_slot} && $(sed -e "/^#/d" -e "/^\W*$/d" ${net_name_slot} | wc -l) == 0 ]] && net_move=yes
-		if [[ -L ${net_name_slot} && $(readlink ${net_name_slot}) == /dev/null ]]; then
-			net_move=yes
-			net_name_slot_sym=yes
-		fi
-	fi
-	if [[ ${net_move} == yes ]]; then
-		ebegin "Copying ${net_name_slot} to ${net_setup_link}"
-
-		if [[ ${net_name_slot_sym} == yes ]]; then
-			ln -nfs /dev/null "${net_setup_link}"
-		else
-			cp "${net_name_slot}" "${net_setup_link}"
-		fi
-		eend $?
-	fi
-
-	# https://cgit.freedesktop.org/systemd/systemd/commit/rules/50-udev-default.rules?id=3dff3e00e044e2d53c76fa842b9a4759d4a50e69
-	# https://bugs.gentoo.org/246847
-	# https://bugs.gentoo.org/514174
-	enewgroup input
-
-	# Update hwdb database in case the format is changed by udev version.
-	if has_version 'sys-apps/hwids[udev]'; then
-		udevadm hwdb --update --root="${ROOT%/}"
-		# Only reload when we are not upgrading to avoid potential race w/ incompatible hwdb.bin and the running udevd
-		# https://cgit.freedesktop.org/systemd/systemd/commit/?id=1fab57c209035f7e66198343074e9cee06718bda
-		[[ -z ${REPLACING_VERSIONS} ]] && udev_reload
-	fi
-}

diff --git a/sys-fs/udev/udev-239.ebuild b/sys-fs/udev/udev-239.ebuild
deleted file mode 100644
index b57d90865ed..00000000000
--- a/sys-fs/udev/udev-239.ebuild
+++ /dev/null
@@ -1,327 +0,0 @@
-# Copyright 2003-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit bash-completion-r1 linux-info meson ninja-utils multilib-minimal toolchain-funcs udev user
-
-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 -> systemd-${PV}.tar.gz"
-	KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86"
-fi
-
-DESCRIPTION="Linux dynamic and persistent device naming support (aka userspace devfs)"
-HOMEPAGE="https://www.freedesktop.org/wiki/Software/systemd"
-
-LICENSE="LGPL-2.1 MIT GPL-2"
-SLOT="0"
-IUSE="acl +kmod selinux"
-
-RESTRICT="test"
-
-COMMON_DEPEND=">=sys-apps/util-linux-2.30[${MULTILIB_USEDEP}]
-	sys-libs/libcap[${MULTILIB_USEDEP}]
-	acl? ( sys-apps/acl )
-	kmod? ( >=sys-apps/kmod-16 )
-	selinux? ( >=sys-libs/libselinux-2.1.9 )
-	!<sys-libs/glibc-2.11
-	!sys-apps/gentoo-systemd-integration
-	!sys-apps/systemd"
-DEPEND="${COMMON_DEPEND}
-	dev-util/gperf
-	>=dev-util/intltool-0.50
-	>=dev-util/meson-0.40.0
-	dev-util/ninja
-	>=sys-apps/coreutils-8.16
-	virtual/os-headers
-	virtual/pkgconfig
-	>=sys-kernel/linux-headers-3.9
-	app-text/docbook-xml-dtd:4.2
-	app-text/docbook-xml-dtd:4.5
-	app-text/docbook-xsl-stylesheets
-	dev-libs/libxslt"
-RDEPEND="${COMMON_DEPEND}
-	!<sys-fs/lvm2-2.02.103
-	!<sec-policy/selinux-base-2.20120725-r10"
-PDEPEND=">=sys-apps/hwids-20140304[udev]
-	>=sys-fs/udev-init-scripts-26"
-
-S=${WORKDIR}/systemd-${PV}
-EGIT_CHECKOUT_DIR=${S}
-
-pkg_setup() {
-	if [[ ${MERGE_TYPE} != buildonly ]]; then
-		CONFIG_CHECK="~BLK_DEV_BSG ~DEVTMPFS ~!IDE ~INOTIFY_USER ~!SYSFS_DEPRECATED ~!SYSFS_DEPRECATED_V2 ~SIGNALFD ~EPOLL ~FHANDLE ~NET ~!FW_LOADER_USER_HELPER ~UNIX"
-		linux-info_pkg_setup
-
-		# CONFIG_FHANDLE was introduced by 2.6.39
-		local MINKV=2.6.39
-
-		if kernel_is -lt ${MINKV//./ }; then
-			eerror "Your running kernel is too old to run this version of ${P}"
-			eerror "You need to upgrade kernel at least to ${MINKV}"
-		fi
-
-		if kernel_is -lt 3 7; then
-			ewarn "Your running kernel is too old to have firmware loader and"
-			ewarn "this version of ${P} doesn't have userspace firmware loader"
-			ewarn "If you need firmware support, you need to upgrade kernel at least to 3.7"
-		fi
-	fi
-}
-
-src_prepare() {
-	cat <<-EOF > "${T}"/40-gentoo.rules
-	# Gentoo specific floppy and usb groups
-	ACTION=="add", SUBSYSTEM=="block", KERNEL=="fd[0-9]", GROUP="floppy"
-	ACTION=="add", SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GROUP="usb"
-	EOF
-
-	local PATCHES=(
-		"${FILESDIR}/236-uucp-group.patch"
-		"${FILESDIR}/239-basic-add-missing-comma-in-raw_clone-assembly-for-sp.patch"
-		"${FILESDIR}/239-debug-extra.patch"
-		"${FILESDIR}/239-stat-0.patch"
-		"${FILESDIR}/239-stat-1.patch"
-	)
-
-	default
-}
-
-meson_multilib_native_use() {
-	if multilib_is_native_abi && use "$1"; then
-		echo true
-	else
-		echo false
-	fi
-}
-
-multilib_src_configure() {
-	local emesonargs=(
-		-Dacl=$(meson_multilib_native_use acl)
-		-Defi=false
-		-Dkmod=$(meson_multilib_native_use kmod)
-		-Dselinux=$(meson_multilib_native_use selinux)
-		-Dlink-udev-shared=false
-		-Dsplit-usr=true
-
-		# Prevent automagic deps
-		-Dgcrypt=false
-		-Dlibcryptsetup=false
-		-Dlibidn=false
-		-Dlibidn2=false
-		-Dlibiptc=false
-		-Dseccomp=false
-		-Dlz4=false
-		-Dxz=false
-	)
-	meson_src_configure
-}
-
-src_configure() {
-	# Prevent conflicts with i686 cross toolchain, bug 559726
-	tc-export AR CC NM OBJCOPY RANLIB
-	multilib-minimal_src_configure
-}
-
-multilib_src_compile() {
-	# meson creates this link
-	local libudev=$(readlink src/udev/libudev.so.1)
-
-	local targets=(
-		src/udev/${libudev}
-	)
-	if multilib_is_native_abi; then
-		targets+=(
-			systemd-udevd
-			udevadm
-			src/udev/ata_id
-			src/udev/cdrom_id
-			src/udev/collect
-			src/udev/mtd_probe
-			src/udev/scsi_id
-			src/udev/v4l_id
-			man/udev.conf.5
-			man/systemd.link.5
-			man/hwdb.7
-			man/udev.7
-			man/systemd-udevd.service.8
-			man/udevadm.8
-		)
-	fi
-	eninja "${targets[@]}"
-}
-
-multilib_src_install() {
-	local libudev=$(readlink src/udev/libudev.so.1)
-
-	into /
-	dolib.so src/udev/{${libudev},libudev.so.1,libudev.so}
-
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins src/libudev/libudev.pc
-
-	if multilib_is_native_abi; then
-		into /
-		dobin udevadm
-
-		exeinto /lib/systemd
-		doexe systemd-udevd
-
-		exeinto /lib/udev
-		doexe src/udev/{ata_id,cdrom_id,collect,mtd_probe,scsi_id,v4l_id}
-
-		rm rules/99-systemd.rules || die
-		insinto /lib/udev/rules.d
-		doins rules/*.rules
-
-		insinto /usr/share/pkgconfig
-		doins src/udev/udev.pc
-
-		mv man/systemd-udevd.service.8 man/systemd-udevd.8 || die
-		rm man/systemd-udevd-{control,kernel}.socket.8 || die
-		doman man/*.[0-9]
-	fi
-}
-
-multilib_src_install_all() {
-	doheader src/libudev/libudev.h
-
-	insinto /etc/udev
-	doins src/udev/udev.conf
-	keepdir /etc/udev/{hwdb.d,rules.d}
-
-	insinto /lib/systemd/network
-	doins network/99-default.link
-
-	# see src_prepare() for content of 40-gentoo.rules
-	insinto /lib/udev/rules.d
-	doins "${T}"/40-gentoo.rules
-	doins "${S}"/rules/*.rules
-
-	dobashcomp shell-completion/bash/udevadm
-
-	insinto /usr/share/zsh/site-functions
-	doins shell-completion/zsh/_udevadm
-
-	einstalldocs
-}
-
-pkg_postinst() {
-	mkdir -p "${ROOT%/}"/run
-
-	# "losetup -f" is confused if there is an empty /dev/loop/, Bug #338766
-	# So try to remove it here (will only work if empty).
-	rmdir "${ROOT%/}"/dev/loop 2>/dev/null
-	if [[ -d ${ROOT%/}/dev/loop ]]; then
-		ewarn "Please make sure your remove /dev/loop,"
-		ewarn "else losetup may be confused when looking for unused devices."
-	fi
-
-	local fstab="${ROOT%/}"/etc/fstab dev path fstype rest
-	while read -r dev path fstype rest; do
-		if [[ ${path} == /dev && ${fstype} != devtmpfs ]]; then
-			ewarn "You need to edit your /dev line in ${fstab} to have devtmpfs"
-			ewarn "filesystem. Otherwise udev won't be able to boot."
-			ewarn "See, https://bugs.gentoo.org/453186"
-		fi
-	done < "${fstab}"
-
-	if [[ -d ${ROOT%/}/usr/lib/udev ]]; then
-		ewarn
-		ewarn "Please re-emerge all packages on your system which install"
-		ewarn "rules and helpers in /usr/lib/udev. They should now be in"
-		ewarn "/lib/udev."
-		ewarn
-		ewarn "One way to do this is to run the following command:"
-		ewarn "emerge -av1 \$(qfile -q -S -C /usr/lib/udev)"
-		ewarn "Note that qfile can be found in app-portage/portage-utils"
-	fi
-
-	local old_cd_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-cd.rules
-	local old_net_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-net.rules
-	for old_rules in "${old_cd_rules}" "${old_net_rules}"; do
-		if [[ -f ${old_rules} ]]; then
-			ewarn
-			ewarn "File ${old_rules} is from old udev installation but if you still use it,"
-			ewarn "rename it to something else starting with 70- to silence this deprecation"
-			ewarn "warning."
-		fi
-	done
-
-	elog
-	elog "Starting from version >= 197 the new predictable network interface names are"
-	elog "used by default, see:"
-	elog "https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames"
-	elog "https://cgit.freedesktop.org/systemd/systemd/tree/src/udev/udev-builtin-net_id.c"
-	elog
-	elog "Example command to get the information for the new interface name before booting"
-	elog "(replace <ifname> with, for example, eth0):"
-	elog "# udevadm test-builtin net_id /sys/class/net/<ifname> 2> /dev/null"
-	elog
-	elog "You can use either kernel parameter \"net.ifnames=0\", create empty"
-	elog "file /etc/systemd/network/99-default.link, or symlink it to /dev/null"
-	elog "to disable the feature."
-
-	if has_version 'sys-apps/biosdevname'; then
-		ewarn
-		ewarn "You can replace the functionality of sys-apps/biosdevname which has been"
-		ewarn "detected to be installed with the new predictable network interface names."
-	fi
-
-	ewarn
-	ewarn "You need to restart udev as soon as possible to make the upgrade go"
-	ewarn "into effect."
-	ewarn "The method you use to do this depends on your init system."
-	if has_version 'sys-apps/openrc'; then
-		ewarn "For sys-apps/openrc users it is:"
-		ewarn "# /etc/init.d/udev --nodeps restart"
-	fi
-
-	elog
-	elog "For more information on udev on Gentoo, upgrading, writing udev rules, and"
-	elog "fixing known issues visit:"
-	elog "https://wiki.gentoo.org/wiki/Udev"
-	elog "https://wiki.gentoo.org/wiki/Udev/upgrade"
-
-	# If user has disabled 80-net-name-slot.rules using a empty file or a symlink to /dev/null,
-	# do the same for 80-net-setup-link.rules to keep the old behavior
-	local net_move=no
-	local net_name_slot_sym=no
-	local net_rules_path="${ROOT%/}"/etc/udev/rules.d
-	local net_name_slot="${net_rules_path}"/80-net-name-slot.rules
-	local net_setup_link="${net_rules_path}"/80-net-setup-link.rules
-	if [[ ! -e ${net_setup_link} ]]; then
-		[[ -f ${net_name_slot} && $(sed -e "/^#/d" -e "/^\W*$/d" ${net_name_slot} | wc -l) == 0 ]] && net_move=yes
-		if [[ -L ${net_name_slot} && $(readlink ${net_name_slot}) == /dev/null ]]; then
-			net_move=yes
-			net_name_slot_sym=yes
-		fi
-	fi
-	if [[ ${net_move} == yes ]]; then
-		ebegin "Copying ${net_name_slot} to ${net_setup_link}"
-
-		if [[ ${net_name_slot_sym} == yes ]]; then
-			ln -nfs /dev/null "${net_setup_link}"
-		else
-			cp "${net_name_slot}" "${net_setup_link}"
-		fi
-		eend $?
-	fi
-
-	# https://cgit.freedesktop.org/systemd/systemd/commit/rules/50-udev-default.rules?id=3dff3e00e044e2d53c76fa842b9a4759d4a50e69
-	# https://bugs.gentoo.org/246847
-	# https://bugs.gentoo.org/514174
-	enewgroup input
-
-	# Update hwdb database in case the format is changed by udev version.
-	if has_version 'sys-apps/hwids[udev]'; then
-		udevadm hwdb --update --root="${ROOT%/}"
-		# Only reload when we are not upgrading to avoid potential race w/ incompatible hwdb.bin and the running udevd
-		# https://cgit.freedesktop.org/systemd/systemd/commit/?id=1fab57c209035f7e66198343074e9cee06718bda
-		[[ -z ${REPLACING_VERSIONS} ]] && udev_reload
-	fi
-}

diff --git a/sys-fs/udev/udev-240-r2.ebuild b/sys-fs/udev/udev-240-r2.ebuild
deleted file mode 100644
index 9772ccf7dcb..00000000000
--- a/sys-fs/udev/udev-240-r2.ebuild
+++ /dev/null
@@ -1,325 +0,0 @@
-# Copyright 2003-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit bash-completion-r1 linux-info meson ninja-utils multilib-minimal toolchain-funcs udev user
-
-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 -> systemd-${PV}.tar.gz
-		https://dev.gentoo.org/~floppym/dist/systemd-${PV}-patches-1.tar.gz"
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
-fi
-
-DESCRIPTION="Linux dynamic and persistent device naming support (aka userspace devfs)"
-HOMEPAGE="https://www.freedesktop.org/wiki/Software/systemd"
-
-LICENSE="LGPL-2.1 MIT GPL-2"
-SLOT="0"
-IUSE="acl +kmod selinux"
-
-RESTRICT="test"
-
-COMMON_DEPEND=">=sys-apps/util-linux-2.30[${MULTILIB_USEDEP}]
-	sys-libs/libcap[${MULTILIB_USEDEP}]
-	acl? ( sys-apps/acl )
-	kmod? ( >=sys-apps/kmod-16 )
-	selinux? ( >=sys-libs/libselinux-2.1.9 )
-	!<sys-libs/glibc-2.11
-	!sys-apps/gentoo-systemd-integration
-	!sys-apps/systemd"
-DEPEND="${COMMON_DEPEND}
-	dev-util/gperf
-	>=dev-util/intltool-0.50
-	>=dev-util/meson-0.40.0
-	dev-util/ninja
-	>=sys-apps/coreutils-8.16
-	virtual/os-headers
-	virtual/pkgconfig
-	>=sys-kernel/linux-headers-3.9
-	app-text/docbook-xml-dtd:4.2
-	app-text/docbook-xml-dtd:4.5
-	app-text/docbook-xsl-stylesheets
-	dev-libs/libxslt"
-RDEPEND="${COMMON_DEPEND}
-	!<sys-fs/lvm2-2.02.103
-	!<sec-policy/selinux-base-2.20120725-r10"
-PDEPEND=">=sys-apps/hwids-20140304[udev]
-	>=sys-fs/udev-init-scripts-26"
-
-S=${WORKDIR}/systemd-${PV}
-EGIT_CHECKOUT_DIR=${S}
-
-pkg_setup() {
-	if [[ ${MERGE_TYPE} != buildonly ]]; then
-		CONFIG_CHECK="~BLK_DEV_BSG ~DEVTMPFS ~!IDE ~INOTIFY_USER ~!SYSFS_DEPRECATED ~!SYSFS_DEPRECATED_V2 ~SIGNALFD ~EPOLL ~FHANDLE ~NET ~!FW_LOADER_USER_HELPER ~UNIX"
-		linux-info_pkg_setup
-
-		# CONFIG_FHANDLE was introduced by 2.6.39
-		local MINKV=2.6.39
-
-		if kernel_is -lt ${MINKV//./ }; then
-			eerror "Your running kernel is too old to run this version of ${P}"
-			eerror "You need to upgrade kernel at least to ${MINKV}"
-		fi
-
-		if kernel_is -lt 3 7; then
-			ewarn "Your running kernel is too old to have firmware loader and"
-			ewarn "this version of ${P} doesn't have userspace firmware loader"
-			ewarn "If you need firmware support, you need to upgrade kernel at least to 3.7"
-		fi
-	fi
-}
-
-src_prepare() {
-	cat <<-EOF > "${T}"/40-gentoo.rules
-	# Gentoo specific floppy and usb groups
-	ACTION=="add", SUBSYSTEM=="block", KERNEL=="fd[0-9]", GROUP="floppy"
-	ACTION=="add", SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GROUP="usb"
-	EOF
-
-	eapply "${WORKDIR}/patches"
-
-	local PATCHES=(
-		"${FILESDIR}/236-uucp-group.patch"
-	)
-
-	default
-}
-
-meson_multilib_native_use() {
-	if multilib_is_native_abi && use "$1"; then
-		echo true
-	else
-		echo false
-	fi
-}
-
-multilib_src_configure() {
-	local emesonargs=(
-		-Dacl=$(meson_multilib_native_use acl)
-		-Defi=false
-		-Dkmod=$(meson_multilib_native_use kmod)
-		-Dselinux=$(meson_multilib_native_use selinux)
-		-Dlink-udev-shared=false
-		-Dsplit-usr=true
-
-		# Prevent automagic deps
-		-Dgcrypt=false
-		-Dlibcryptsetup=false
-		-Dlibidn=false
-		-Dlibidn2=false
-		-Dlibiptc=false
-		-Dseccomp=false
-		-Dlz4=false
-		-Dxz=false
-	)
-	meson_src_configure
-}
-
-src_configure() {
-	# Prevent conflicts with i686 cross toolchain, bug 559726
-	tc-export AR CC NM OBJCOPY RANLIB
-	multilib-minimal_src_configure
-}
-
-multilib_src_compile() {
-	# meson creates this link
-	local libudev=$(readlink src/udev/libudev.so.1)
-
-	local targets=(
-		src/udev/${libudev}
-	)
-	if multilib_is_native_abi; then
-		targets+=(
-			systemd-udevd
-			udevadm
-			src/udev/ata_id
-			src/udev/cdrom_id
-			src/udev/mtd_probe
-			src/udev/scsi_id
-			src/udev/v4l_id
-			man/udev.conf.5
-			man/systemd.link.5
-			man/hwdb.7
-			man/udev.7
-			man/systemd-udevd.service.8
-			man/udevadm.8
-		)
-	fi
-	eninja "${targets[@]}"
-}
-
-multilib_src_install() {
-	local libudev=$(readlink src/udev/libudev.so.1)
-
-	into /
-	dolib.so src/udev/{${libudev},libudev.so.1,libudev.so}
-
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins src/libudev/libudev.pc
-
-	if multilib_is_native_abi; then
-		into /
-		dobin udevadm
-
-		exeinto /lib/systemd
-		doexe systemd-udevd
-
-		exeinto /lib/udev
-		doexe src/udev/{ata_id,cdrom_id,mtd_probe,scsi_id,v4l_id}
-
-		rm rules/99-systemd.rules || die
-		insinto /lib/udev/rules.d
-		doins rules/*.rules
-
-		insinto /usr/share/pkgconfig
-		doins src/udev/udev.pc
-
-		mv man/systemd-udevd.service.8 man/systemd-udevd.8 || die
-		rm man/systemd-udevd-{control,kernel}.socket.8 || die
-		doman man/*.[0-9]
-	fi
-}
-
-multilib_src_install_all() {
-	doheader src/libudev/libudev.h
-
-	insinto /etc/udev
-	doins src/udev/udev.conf
-	keepdir /etc/udev/{hwdb.d,rules.d}
-
-	insinto /lib/systemd/network
-	doins network/99-default.link
-
-	# see src_prepare() for content of 40-gentoo.rules
-	insinto /lib/udev/rules.d
-	doins "${T}"/40-gentoo.rules
-	doins "${S}"/rules/*.rules
-
-	dobashcomp shell-completion/bash/udevadm
-
-	insinto /usr/share/zsh/site-functions
-	doins shell-completion/zsh/_udevadm
-
-	einstalldocs
-}
-
-pkg_postinst() {
-	mkdir -p "${ROOT%/}"/run
-
-	# "losetup -f" is confused if there is an empty /dev/loop/, Bug #338766
-	# So try to remove it here (will only work if empty).
-	rmdir "${ROOT%/}"/dev/loop 2>/dev/null
-	if [[ -d ${ROOT%/}/dev/loop ]]; then
-		ewarn "Please make sure your remove /dev/loop,"
-		ewarn "else losetup may be confused when looking for unused devices."
-	fi
-
-	local fstab="${ROOT%/}"/etc/fstab dev path fstype rest
-	while read -r dev path fstype rest; do
-		if [[ ${path} == /dev && ${fstype} != devtmpfs ]]; then
-			ewarn "You need to edit your /dev line in ${fstab} to have devtmpfs"
-			ewarn "filesystem. Otherwise udev won't be able to boot."
-			ewarn "See, https://bugs.gentoo.org/453186"
-		fi
-	done < "${fstab}"
-
-	if [[ -d ${ROOT%/}/usr/lib/udev ]]; then
-		ewarn
-		ewarn "Please re-emerge all packages on your system which install"
-		ewarn "rules and helpers in /usr/lib/udev. They should now be in"
-		ewarn "/lib/udev."
-		ewarn
-		ewarn "One way to do this is to run the following command:"
-		ewarn "emerge -av1 \$(qfile -q -S -C /usr/lib/udev)"
-		ewarn "Note that qfile can be found in app-portage/portage-utils"
-	fi
-
-	local old_cd_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-cd.rules
-	local old_net_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-net.rules
-	for old_rules in "${old_cd_rules}" "${old_net_rules}"; do
-		if [[ -f ${old_rules} ]]; then
-			ewarn
-			ewarn "File ${old_rules} is from old udev installation but if you still use it,"
-			ewarn "rename it to something else starting with 70- to silence this deprecation"
-			ewarn "warning."
-		fi
-	done
-
-	elog
-	elog "Starting from version >= 197 the new predictable network interface names are"
-	elog "used by default, see:"
-	elog "https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames"
-	elog "https://cgit.freedesktop.org/systemd/systemd/tree/src/udev/udev-builtin-net_id.c"
-	elog
-	elog "Example command to get the information for the new interface name before booting"
-	elog "(replace <ifname> with, for example, eth0):"
-	elog "# udevadm test-builtin net_id /sys/class/net/<ifname> 2> /dev/null"
-	elog
-	elog "You can use either kernel parameter \"net.ifnames=0\", create empty"
-	elog "file /etc/systemd/network/99-default.link, or symlink it to /dev/null"
-	elog "to disable the feature."
-
-	if has_version 'sys-apps/biosdevname'; then
-		ewarn
-		ewarn "You can replace the functionality of sys-apps/biosdevname which has been"
-		ewarn "detected to be installed with the new predictable network interface names."
-	fi
-
-	ewarn
-	ewarn "You need to restart udev as soon as possible to make the upgrade go"
-	ewarn "into effect."
-	ewarn "The method you use to do this depends on your init system."
-	if has_version 'sys-apps/openrc'; then
-		ewarn "For sys-apps/openrc users it is:"
-		ewarn "# /etc/init.d/udev --nodeps restart"
-	fi
-
-	elog
-	elog "For more information on udev on Gentoo, upgrading, writing udev rules, and"
-	elog "fixing known issues visit:"
-	elog "https://wiki.gentoo.org/wiki/Udev"
-	elog "https://wiki.gentoo.org/wiki/Udev/upgrade"
-
-	# If user has disabled 80-net-name-slot.rules using a empty file or a symlink to /dev/null,
-	# do the same for 80-net-setup-link.rules to keep the old behavior
-	local net_move=no
-	local net_name_slot_sym=no
-	local net_rules_path="${ROOT%/}"/etc/udev/rules.d
-	local net_name_slot="${net_rules_path}"/80-net-name-slot.rules
-	local net_setup_link="${net_rules_path}"/80-net-setup-link.rules
-	if [[ ! -e ${net_setup_link} ]]; then
-		[[ -f ${net_name_slot} && $(sed -e "/^#/d" -e "/^\W*$/d" ${net_name_slot} | wc -l) == 0 ]] && net_move=yes
-		if [[ -L ${net_name_slot} && $(readlink ${net_name_slot}) == /dev/null ]]; then
-			net_move=yes
-			net_name_slot_sym=yes
-		fi
-	fi
-	if [[ ${net_move} == yes ]]; then
-		ebegin "Copying ${net_name_slot} to ${net_setup_link}"
-
-		if [[ ${net_name_slot_sym} == yes ]]; then
-			ln -nfs /dev/null "${net_setup_link}"
-		else
-			cp "${net_name_slot}" "${net_setup_link}"
-		fi
-		eend $?
-	fi
-
-	# https://cgit.freedesktop.org/systemd/systemd/commit/rules/50-udev-default.rules?id=3dff3e00e044e2d53c76fa842b9a4759d4a50e69
-	# https://bugs.gentoo.org/246847
-	# https://bugs.gentoo.org/514174
-	enewgroup input
-
-	# Update hwdb database in case the format is changed by udev version.
-	if has_version 'sys-apps/hwids[udev]'; then
-		udevadm hwdb --update --root="${ROOT%/}"
-		# Only reload when we are not upgrading to avoid potential race w/ incompatible hwdb.bin and the running udevd
-		# https://cgit.freedesktop.org/systemd/systemd/commit/?id=1fab57c209035f7e66198343074e9cee06718bda
-		[[ -z ${REPLACING_VERSIONS} ]] && udev_reload
-	fi
-}

diff --git a/sys-fs/udev/udev-240-r3.ebuild b/sys-fs/udev/udev-240-r3.ebuild
deleted file mode 100644
index e7251ee0143..00000000000
--- a/sys-fs/udev/udev-240-r3.ebuild
+++ /dev/null
@@ -1,325 +0,0 @@
-# Copyright 2003-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit bash-completion-r1 linux-info meson ninja-utils multilib-minimal toolchain-funcs udev user
-
-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 -> systemd-${PV}.tar.gz
-		https://dev.gentoo.org/~floppym/dist/systemd-${PV}-patches-3.tar.gz"
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
-fi
-
-DESCRIPTION="Linux dynamic and persistent device naming support (aka userspace devfs)"
-HOMEPAGE="https://www.freedesktop.org/wiki/Software/systemd"
-
-LICENSE="LGPL-2.1 MIT GPL-2"
-SLOT="0"
-IUSE="acl +kmod selinux"
-
-RESTRICT="test"
-
-COMMON_DEPEND=">=sys-apps/util-linux-2.30[${MULTILIB_USEDEP}]
-	sys-libs/libcap[${MULTILIB_USEDEP}]
-	acl? ( sys-apps/acl )
-	kmod? ( >=sys-apps/kmod-16 )
-	selinux? ( >=sys-libs/libselinux-2.1.9 )
-	!<sys-libs/glibc-2.11
-	!sys-apps/gentoo-systemd-integration
-	!sys-apps/systemd"
-DEPEND="${COMMON_DEPEND}
-	dev-util/gperf
-	>=dev-util/intltool-0.50
-	>=dev-util/meson-0.40.0
-	dev-util/ninja
-	>=sys-apps/coreutils-8.16
-	virtual/os-headers
-	virtual/pkgconfig
-	>=sys-kernel/linux-headers-3.9
-	app-text/docbook-xml-dtd:4.2
-	app-text/docbook-xml-dtd:4.5
-	app-text/docbook-xsl-stylesheets
-	dev-libs/libxslt"
-RDEPEND="${COMMON_DEPEND}
-	!<sys-fs/lvm2-2.02.103
-	!<sec-policy/selinux-base-2.20120725-r10"
-PDEPEND=">=sys-apps/hwids-20140304[udev]
-	>=sys-fs/udev-init-scripts-26"
-
-S=${WORKDIR}/systemd-${PV}
-EGIT_CHECKOUT_DIR=${S}
-
-pkg_setup() {
-	if [[ ${MERGE_TYPE} != buildonly ]]; then
-		CONFIG_CHECK="~BLK_DEV_BSG ~DEVTMPFS ~!IDE ~INOTIFY_USER ~!SYSFS_DEPRECATED ~!SYSFS_DEPRECATED_V2 ~SIGNALFD ~EPOLL ~FHANDLE ~NET ~!FW_LOADER_USER_HELPER ~UNIX"
-		linux-info_pkg_setup
-
-		# CONFIG_FHANDLE was introduced by 2.6.39
-		local MINKV=2.6.39
-
-		if kernel_is -lt ${MINKV//./ }; then
-			eerror "Your running kernel is too old to run this version of ${P}"
-			eerror "You need to upgrade kernel at least to ${MINKV}"
-		fi
-
-		if kernel_is -lt 3 7; then
-			ewarn "Your running kernel is too old to have firmware loader and"
-			ewarn "this version of ${P} doesn't have userspace firmware loader"
-			ewarn "If you need firmware support, you need to upgrade kernel at least to 3.7"
-		fi
-	fi
-}
-
-src_prepare() {
-	cat <<-EOF > "${T}"/40-gentoo.rules
-	# Gentoo specific floppy and usb groups
-	ACTION=="add", SUBSYSTEM=="block", KERNEL=="fd[0-9]", GROUP="floppy"
-	ACTION=="add", SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GROUP="usb"
-	EOF
-
-	eapply "${WORKDIR}/patches"
-
-	local PATCHES=(
-		"${FILESDIR}/236-uucp-group.patch"
-	)
-
-	default
-}
-
-meson_multilib_native_use() {
-	if multilib_is_native_abi && use "$1"; then
-		echo true
-	else
-		echo false
-	fi
-}
-
-multilib_src_configure() {
-	local emesonargs=(
-		-Dacl=$(meson_multilib_native_use acl)
-		-Defi=false
-		-Dkmod=$(meson_multilib_native_use kmod)
-		-Dselinux=$(meson_multilib_native_use selinux)
-		-Dlink-udev-shared=false
-		-Dsplit-usr=true
-
-		# Prevent automagic deps
-		-Dgcrypt=false
-		-Dlibcryptsetup=false
-		-Dlibidn=false
-		-Dlibidn2=false
-		-Dlibiptc=false
-		-Dseccomp=false
-		-Dlz4=false
-		-Dxz=false
-	)
-	meson_src_configure
-}
-
-src_configure() {
-	# Prevent conflicts with i686 cross toolchain, bug 559726
-	tc-export AR CC NM OBJCOPY RANLIB
-	multilib-minimal_src_configure
-}
-
-multilib_src_compile() {
-	# meson creates this link
-	local libudev=$(readlink src/udev/libudev.so.1)
-
-	local targets=(
-		src/udev/${libudev}
-	)
-	if multilib_is_native_abi; then
-		targets+=(
-			systemd-udevd
-			udevadm
-			src/udev/ata_id
-			src/udev/cdrom_id
-			src/udev/mtd_probe
-			src/udev/scsi_id
-			src/udev/v4l_id
-			man/udev.conf.5
-			man/systemd.link.5
-			man/hwdb.7
-			man/udev.7
-			man/systemd-udevd.service.8
-			man/udevadm.8
-		)
-	fi
-	eninja "${targets[@]}"
-}
-
-multilib_src_install() {
-	local libudev=$(readlink src/udev/libudev.so.1)
-
-	into /
-	dolib.so src/udev/{${libudev},libudev.so.1,libudev.so}
-
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins src/libudev/libudev.pc
-
-	if multilib_is_native_abi; then
-		into /
-		dobin udevadm
-
-		exeinto /lib/systemd
-		doexe systemd-udevd
-
-		exeinto /lib/udev
-		doexe src/udev/{ata_id,cdrom_id,mtd_probe,scsi_id,v4l_id}
-
-		rm rules/99-systemd.rules || die
-		insinto /lib/udev/rules.d
-		doins rules/*.rules
-
-		insinto /usr/share/pkgconfig
-		doins src/udev/udev.pc
-
-		mv man/systemd-udevd.service.8 man/systemd-udevd.8 || die
-		rm man/systemd-udevd-{control,kernel}.socket.8 || die
-		doman man/*.[0-9]
-	fi
-}
-
-multilib_src_install_all() {
-	doheader src/libudev/libudev.h
-
-	insinto /etc/udev
-	doins src/udev/udev.conf
-	keepdir /etc/udev/{hwdb.d,rules.d}
-
-	insinto /lib/systemd/network
-	doins network/99-default.link
-
-	# see src_prepare() for content of 40-gentoo.rules
-	insinto /lib/udev/rules.d
-	doins "${T}"/40-gentoo.rules
-	doins "${S}"/rules/*.rules
-
-	dobashcomp shell-completion/bash/udevadm
-
-	insinto /usr/share/zsh/site-functions
-	doins shell-completion/zsh/_udevadm
-
-	einstalldocs
-}
-
-pkg_postinst() {
-	mkdir -p "${ROOT%/}"/run
-
-	# "losetup -f" is confused if there is an empty /dev/loop/, Bug #338766
-	# So try to remove it here (will only work if empty).
-	rmdir "${ROOT%/}"/dev/loop 2>/dev/null
-	if [[ -d ${ROOT%/}/dev/loop ]]; then
-		ewarn "Please make sure your remove /dev/loop,"
-		ewarn "else losetup may be confused when looking for unused devices."
-	fi
-
-	local fstab="${ROOT%/}"/etc/fstab dev path fstype rest
-	while read -r dev path fstype rest; do
-		if [[ ${path} == /dev && ${fstype} != devtmpfs ]]; then
-			ewarn "You need to edit your /dev line in ${fstab} to have devtmpfs"
-			ewarn "filesystem. Otherwise udev won't be able to boot."
-			ewarn "See, https://bugs.gentoo.org/453186"
-		fi
-	done < "${fstab}"
-
-	if [[ -d ${ROOT%/}/usr/lib/udev ]]; then
-		ewarn
-		ewarn "Please re-emerge all packages on your system which install"
-		ewarn "rules and helpers in /usr/lib/udev. They should now be in"
-		ewarn "/lib/udev."
-		ewarn
-		ewarn "One way to do this is to run the following command:"
-		ewarn "emerge -av1 \$(qfile -q -S -C /usr/lib/udev)"
-		ewarn "Note that qfile can be found in app-portage/portage-utils"
-	fi
-
-	local old_cd_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-cd.rules
-	local old_net_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-net.rules
-	for old_rules in "${old_cd_rules}" "${old_net_rules}"; do
-		if [[ -f ${old_rules} ]]; then
-			ewarn
-			ewarn "File ${old_rules} is from old udev installation but if you still use it,"
-			ewarn "rename it to something else starting with 70- to silence this deprecation"
-			ewarn "warning."
-		fi
-	done
-
-	elog
-	elog "Starting from version >= 197 the new predictable network interface names are"
-	elog "used by default, see:"
-	elog "https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames"
-	elog "https://cgit.freedesktop.org/systemd/systemd/tree/src/udev/udev-builtin-net_id.c"
-	elog
-	elog "Example command to get the information for the new interface name before booting"
-	elog "(replace <ifname> with, for example, eth0):"
-	elog "# udevadm test-builtin net_id /sys/class/net/<ifname> 2> /dev/null"
-	elog
-	elog "You can use either kernel parameter \"net.ifnames=0\", create empty"
-	elog "file /etc/systemd/network/99-default.link, or symlink it to /dev/null"
-	elog "to disable the feature."
-
-	if has_version 'sys-apps/biosdevname'; then
-		ewarn
-		ewarn "You can replace the functionality of sys-apps/biosdevname which has been"
-		ewarn "detected to be installed with the new predictable network interface names."
-	fi
-
-	ewarn
-	ewarn "You need to restart udev as soon as possible to make the upgrade go"
-	ewarn "into effect."
-	ewarn "The method you use to do this depends on your init system."
-	if has_version 'sys-apps/openrc'; then
-		ewarn "For sys-apps/openrc users it is:"
-		ewarn "# /etc/init.d/udev --nodeps restart"
-	fi
-
-	elog
-	elog "For more information on udev on Gentoo, upgrading, writing udev rules, and"
-	elog "fixing known issues visit:"
-	elog "https://wiki.gentoo.org/wiki/Udev"
-	elog "https://wiki.gentoo.org/wiki/Udev/upgrade"
-
-	# If user has disabled 80-net-name-slot.rules using a empty file or a symlink to /dev/null,
-	# do the same for 80-net-setup-link.rules to keep the old behavior
-	local net_move=no
-	local net_name_slot_sym=no
-	local net_rules_path="${ROOT%/}"/etc/udev/rules.d
-	local net_name_slot="${net_rules_path}"/80-net-name-slot.rules
-	local net_setup_link="${net_rules_path}"/80-net-setup-link.rules
-	if [[ ! -e ${net_setup_link} ]]; then
-		[[ -f ${net_name_slot} && $(sed -e "/^#/d" -e "/^\W*$/d" ${net_name_slot} | wc -l) == 0 ]] && net_move=yes
-		if [[ -L ${net_name_slot} && $(readlink ${net_name_slot}) == /dev/null ]]; then
-			net_move=yes
-			net_name_slot_sym=yes
-		fi
-	fi
-	if [[ ${net_move} == yes ]]; then
-		ebegin "Copying ${net_name_slot} to ${net_setup_link}"
-
-		if [[ ${net_name_slot_sym} == yes ]]; then
-			ln -nfs /dev/null "${net_setup_link}"
-		else
-			cp "${net_name_slot}" "${net_setup_link}"
-		fi
-		eend $?
-	fi
-
-	# https://cgit.freedesktop.org/systemd/systemd/commit/rules/50-udev-default.rules?id=3dff3e00e044e2d53c76fa842b9a4759d4a50e69
-	# https://bugs.gentoo.org/246847
-	# https://bugs.gentoo.org/514174
-	enewgroup input
-
-	# Update hwdb database in case the format is changed by udev version.
-	if has_version 'sys-apps/hwids[udev]'; then
-		udevadm hwdb --update --root="${ROOT%/}"
-		# Only reload when we are not upgrading to avoid potential race w/ incompatible hwdb.bin and the running udevd
-		# https://cgit.freedesktop.org/systemd/systemd/commit/?id=1fab57c209035f7e66198343074e9cee06718bda
-		[[ -z ${REPLACING_VERSIONS} ]] && udev_reload
-	fi
-}

diff --git a/sys-fs/udev/udev-241.ebuild b/sys-fs/udev/udev-241.ebuild
deleted file mode 100644
index e3c9cbfb5d8..00000000000
--- a/sys-fs/udev/udev-241.ebuild
+++ /dev/null
@@ -1,328 +0,0 @@
-# Copyright 2003-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit bash-completion-r1 linux-info meson ninja-utils multilib-minimal toolchain-funcs udev user
-
-if [[ ${PV} = 9999* ]]; then
-	EGIT_REPO_URI="https://github.com/systemd/systemd.git"
-	inherit git-r3
-else
-	MY_PV=${PV/_/-}
-	MY_P=systemd-${MY_PV}
-	S=${WORKDIR}/${MY_P}
-	SRC_URI="https://github.com/systemd/systemd/archive/v${MY_PV}/${MY_P}.tar.gz"
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
-fi
-
-DESCRIPTION="Linux dynamic and persistent device naming support (aka userspace devfs)"
-HOMEPAGE="https://www.freedesktop.org/wiki/Software/systemd"
-
-LICENSE="LGPL-2.1 MIT GPL-2"
-SLOT="0"
-IUSE="acl +kmod selinux"
-
-RESTRICT="test"
-
-COMMON_DEPEND=">=sys-apps/util-linux-2.30[${MULTILIB_USEDEP}]
-	sys-libs/libcap[${MULTILIB_USEDEP}]
-	acl? ( sys-apps/acl )
-	kmod? ( >=sys-apps/kmod-16 )
-	selinux? ( >=sys-libs/libselinux-2.1.9 )
-	!<sys-libs/glibc-2.11
-	!sys-apps/gentoo-systemd-integration
-	!sys-apps/systemd"
-DEPEND="${COMMON_DEPEND}
-	dev-util/gperf
-	>=dev-util/intltool-0.50
-	>=dev-util/meson-0.40.0
-	dev-util/ninja
-	>=sys-apps/coreutils-8.16
-	virtual/os-headers
-	virtual/pkgconfig
-	>=sys-kernel/linux-headers-3.9
-	app-text/docbook-xml-dtd:4.2
-	app-text/docbook-xml-dtd:4.5
-	app-text/docbook-xsl-stylesheets
-	dev-libs/libxslt"
-RDEPEND="${COMMON_DEPEND}
-	!<sys-fs/lvm2-2.02.103
-	!<sec-policy/selinux-base-2.20120725-r10"
-PDEPEND=">=sys-apps/hwids-20140304[udev]
-	>=sys-fs/udev-init-scripts-26"
-
-pkg_setup() {
-	if [[ ${MERGE_TYPE} != buildonly ]]; then
-		CONFIG_CHECK="~BLK_DEV_BSG ~DEVTMPFS ~!IDE ~INOTIFY_USER ~!SYSFS_DEPRECATED ~!SYSFS_DEPRECATED_V2 ~SIGNALFD ~EPOLL ~FHANDLE ~NET ~!FW_LOADER_USER_HELPER ~UNIX"
-		linux-info_pkg_setup
-
-		# CONFIG_FHANDLE was introduced by 2.6.39
-		local MINKV=2.6.39
-
-		if kernel_is -lt ${MINKV//./ }; then
-			eerror "Your running kernel is too old to run this version of ${P}"
-			eerror "You need to upgrade kernel at least to ${MINKV}"
-		fi
-
-		if kernel_is -lt 3 7; then
-			ewarn "Your running kernel is too old to have firmware loader and"
-			ewarn "this version of ${P} doesn't have userspace firmware loader"
-			ewarn "If you need firmware support, you need to upgrade kernel at least to 3.7"
-		fi
-	fi
-}
-
-src_prepare() {
-	cat <<-EOF > "${T}"/40-gentoo.rules
-	# Gentoo specific floppy and usb groups
-	ACTION=="add", SUBSYSTEM=="block", KERNEL=="fd[0-9]", GROUP="floppy"
-	ACTION=="add", SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GROUP="usb"
-	EOF
-
-	if [[ -d "${WORKDIR}/patches" ]]; then
-		eapply "${WORKDIR}/patches"
-	fi
-
-	local PATCHES=(
-		"${FILESDIR}/236-uucp-group.patch"
-	)
-
-	default
-}
-
-meson_multilib_native_use() {
-	if multilib_is_native_abi && use "$1"; then
-		echo true
-	else
-		echo false
-	fi
-}
-
-multilib_src_configure() {
-	local emesonargs=(
-		-Dacl=$(meson_multilib_native_use acl)
-		-Defi=false
-		-Dkmod=$(meson_multilib_native_use kmod)
-		-Dselinux=$(meson_multilib_native_use selinux)
-		-Dlink-udev-shared=false
-		-Dsplit-usr=true
-
-		# Prevent automagic deps
-		-Dgcrypt=false
-		-Dlibcryptsetup=false
-		-Dlibidn=false
-		-Dlibidn2=false
-		-Dlibiptc=false
-		-Dseccomp=false
-		-Dlz4=false
-		-Dxz=false
-	)
-	meson_src_configure
-}
-
-src_configure() {
-	# Prevent conflicts with i686 cross toolchain, bug 559726
-	tc-export AR CC NM OBJCOPY RANLIB
-	multilib-minimal_src_configure
-}
-
-multilib_src_compile() {
-	# meson creates this link
-	local libudev=$(readlink src/udev/libudev.so.1)
-
-	local targets=(
-		src/udev/${libudev}
-	)
-	if multilib_is_native_abi; then
-		targets+=(
-			systemd-udevd
-			udevadm
-			src/udev/ata_id
-			src/udev/cdrom_id
-			src/udev/mtd_probe
-			src/udev/scsi_id
-			src/udev/v4l_id
-			man/udev.conf.5
-			man/systemd.link.5
-			man/hwdb.7
-			man/udev.7
-			man/systemd-udevd.service.8
-			man/udevadm.8
-		)
-	fi
-	eninja "${targets[@]}"
-}
-
-multilib_src_install() {
-	local libudev=$(readlink src/udev/libudev.so.1)
-
-	into /
-	dolib.so src/udev/{${libudev},libudev.so.1,libudev.so}
-
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins src/libudev/libudev.pc
-
-	if multilib_is_native_abi; then
-		into /
-		dobin udevadm
-
-		exeinto /lib/systemd
-		doexe systemd-udevd
-
-		exeinto /lib/udev
-		doexe src/udev/{ata_id,cdrom_id,mtd_probe,scsi_id,v4l_id}
-
-		rm rules/99-systemd.rules || die
-		insinto /lib/udev/rules.d
-		doins rules/*.rules
-
-		insinto /usr/share/pkgconfig
-		doins src/udev/udev.pc
-
-		mv man/systemd-udevd.service.8 man/systemd-udevd.8 || die
-		rm man/systemd-udevd-{control,kernel}.socket.8 || die
-		doman man/*.[0-9]
-	fi
-}
-
-multilib_src_install_all() {
-	doheader src/libudev/libudev.h
-
-	insinto /etc/udev
-	doins src/udev/udev.conf
-	keepdir /etc/udev/{hwdb.d,rules.d}
-
-	insinto /lib/systemd/network
-	doins network/99-default.link
-
-	# see src_prepare() for content of 40-gentoo.rules
-	insinto /lib/udev/rules.d
-	doins "${T}"/40-gentoo.rules
-	doins "${S}"/rules/*.rules
-
-	dobashcomp shell-completion/bash/udevadm
-
-	insinto /usr/share/zsh/site-functions
-	doins shell-completion/zsh/_udevadm
-
-	einstalldocs
-}
-
-pkg_postinst() {
-	mkdir -p "${ROOT%/}"/run
-
-	# "losetup -f" is confused if there is an empty /dev/loop/, Bug #338766
-	# So try to remove it here (will only work if empty).
-	rmdir "${ROOT%/}"/dev/loop 2>/dev/null
-	if [[ -d ${ROOT%/}/dev/loop ]]; then
-		ewarn "Please make sure your remove /dev/loop,"
-		ewarn "else losetup may be confused when looking for unused devices."
-	fi
-
-	local fstab="${ROOT%/}"/etc/fstab dev path fstype rest
-	while read -r dev path fstype rest; do
-		if [[ ${path} == /dev && ${fstype} != devtmpfs ]]; then
-			ewarn "You need to edit your /dev line in ${fstab} to have devtmpfs"
-			ewarn "filesystem. Otherwise udev won't be able to boot."
-			ewarn "See, https://bugs.gentoo.org/453186"
-		fi
-	done < "${fstab}"
-
-	if [[ -d ${ROOT%/}/usr/lib/udev ]]; then
-		ewarn
-		ewarn "Please re-emerge all packages on your system which install"
-		ewarn "rules and helpers in /usr/lib/udev. They should now be in"
-		ewarn "/lib/udev."
-		ewarn
-		ewarn "One way to do this is to run the following command:"
-		ewarn "emerge -av1 \$(qfile -q -S -C /usr/lib/udev)"
-		ewarn "Note that qfile can be found in app-portage/portage-utils"
-	fi
-
-	local old_cd_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-cd.rules
-	local old_net_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-net.rules
-	for old_rules in "${old_cd_rules}" "${old_net_rules}"; do
-		if [[ -f ${old_rules} ]]; then
-			ewarn
-			ewarn "File ${old_rules} is from old udev installation but if you still use it,"
-			ewarn "rename it to something else starting with 70- to silence this deprecation"
-			ewarn "warning."
-		fi
-	done
-
-	elog
-	elog "Starting from version >= 197 the new predictable network interface names are"
-	elog "used by default, see:"
-	elog "https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames"
-	elog "https://cgit.freedesktop.org/systemd/systemd/tree/src/udev/udev-builtin-net_id.c"
-	elog
-	elog "Example command to get the information for the new interface name before booting"
-	elog "(replace <ifname> with, for example, eth0):"
-	elog "# udevadm test-builtin net_id /sys/class/net/<ifname> 2> /dev/null"
-	elog
-	elog "You can use either kernel parameter \"net.ifnames=0\", create empty"
-	elog "file /etc/systemd/network/99-default.link, or symlink it to /dev/null"
-	elog "to disable the feature."
-
-	if has_version 'sys-apps/biosdevname'; then
-		ewarn
-		ewarn "You can replace the functionality of sys-apps/biosdevname which has been"
-		ewarn "detected to be installed with the new predictable network interface names."
-	fi
-
-	ewarn
-	ewarn "You need to restart udev as soon as possible to make the upgrade go"
-	ewarn "into effect."
-	ewarn "The method you use to do this depends on your init system."
-	if has_version 'sys-apps/openrc'; then
-		ewarn "For sys-apps/openrc users it is:"
-		ewarn "# /etc/init.d/udev --nodeps restart"
-	fi
-
-	elog
-	elog "For more information on udev on Gentoo, upgrading, writing udev rules, and"
-	elog "fixing known issues visit:"
-	elog "https://wiki.gentoo.org/wiki/Udev"
-	elog "https://wiki.gentoo.org/wiki/Udev/upgrade"
-
-	# If user has disabled 80-net-name-slot.rules using a empty file or a symlink to /dev/null,
-	# do the same for 80-net-setup-link.rules to keep the old behavior
-	local net_move=no
-	local net_name_slot_sym=no
-	local net_rules_path="${ROOT%/}"/etc/udev/rules.d
-	local net_name_slot="${net_rules_path}"/80-net-name-slot.rules
-	local net_setup_link="${net_rules_path}"/80-net-setup-link.rules
-	if [[ ! -e ${net_setup_link} ]]; then
-		[[ -f ${net_name_slot} && $(sed -e "/^#/d" -e "/^\W*$/d" ${net_name_slot} | wc -l) == 0 ]] && net_move=yes
-		if [[ -L ${net_name_slot} && $(readlink ${net_name_slot}) == /dev/null ]]; then
-			net_move=yes
-			net_name_slot_sym=yes
-		fi
-	fi
-	if [[ ${net_move} == yes ]]; then
-		ebegin "Copying ${net_name_slot} to ${net_setup_link}"
-
-		if [[ ${net_name_slot_sym} == yes ]]; then
-			ln -nfs /dev/null "${net_setup_link}"
-		else
-			cp "${net_name_slot}" "${net_setup_link}"
-		fi
-		eend $?
-	fi
-
-	# https://cgit.freedesktop.org/systemd/systemd/commit/rules/50-udev-default.rules?id=3dff3e00e044e2d53c76fa842b9a4759d4a50e69
-	# https://bugs.gentoo.org/246847
-	# https://bugs.gentoo.org/514174
-	enewgroup input
-	enewgroup kvm 78
-	enewgroup render
-
-	# Update hwdb database in case the format is changed by udev version.
-	if has_version 'sys-apps/hwids[udev]'; then
-		udevadm hwdb --update --root="${ROOT%/}"
-		# Only reload when we are not upgrading to avoid potential race w/ incompatible hwdb.bin and the running udevd
-		# https://cgit.freedesktop.org/systemd/systemd/commit/?id=1fab57c209035f7e66198343074e9cee06718bda
-		[[ -z ${REPLACING_VERSIONS} ]] && udev_reload
-	fi
-}

diff --git a/sys-fs/udev/udev-241_rc1.ebuild b/sys-fs/udev/udev-241_rc1.ebuild
deleted file mode 100644
index ba1551d202d..00000000000
--- a/sys-fs/udev/udev-241_rc1.ebuild
+++ /dev/null
@@ -1,326 +0,0 @@
-# Copyright 2003-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit bash-completion-r1 linux-info meson ninja-utils multilib-minimal toolchain-funcs udev user
-
-if [[ ${PV} = 9999* ]]; then
-	EGIT_REPO_URI="https://github.com/systemd/systemd.git"
-	inherit git-r3
-else
-	MY_PV=${PV/_/-}
-	MY_P=systemd-${MY_PV}
-	S=${WORKDIR}/${MY_P}
-	SRC_URI="https://github.com/systemd/systemd/archive/v${MY_PV}/${MY_P}.tar.gz"
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
-fi
-
-DESCRIPTION="Linux dynamic and persistent device naming support (aka userspace devfs)"
-HOMEPAGE="https://www.freedesktop.org/wiki/Software/systemd"
-
-LICENSE="LGPL-2.1 MIT GPL-2"
-SLOT="0"
-IUSE="acl +kmod selinux"
-
-RESTRICT="test"
-
-COMMON_DEPEND=">=sys-apps/util-linux-2.30[${MULTILIB_USEDEP}]
-	sys-libs/libcap[${MULTILIB_USEDEP}]
-	acl? ( sys-apps/acl )
-	kmod? ( >=sys-apps/kmod-16 )
-	selinux? ( >=sys-libs/libselinux-2.1.9 )
-	!<sys-libs/glibc-2.11
-	!sys-apps/gentoo-systemd-integration
-	!sys-apps/systemd"
-DEPEND="${COMMON_DEPEND}
-	dev-util/gperf
-	>=dev-util/intltool-0.50
-	>=dev-util/meson-0.40.0
-	dev-util/ninja
-	>=sys-apps/coreutils-8.16
-	virtual/os-headers
-	virtual/pkgconfig
-	>=sys-kernel/linux-headers-3.9
-	app-text/docbook-xml-dtd:4.2
-	app-text/docbook-xml-dtd:4.5
-	app-text/docbook-xsl-stylesheets
-	dev-libs/libxslt"
-RDEPEND="${COMMON_DEPEND}
-	!<sys-fs/lvm2-2.02.103
-	!<sec-policy/selinux-base-2.20120725-r10"
-PDEPEND=">=sys-apps/hwids-20140304[udev]
-	>=sys-fs/udev-init-scripts-26"
-
-pkg_setup() {
-	if [[ ${MERGE_TYPE} != buildonly ]]; then
-		CONFIG_CHECK="~BLK_DEV_BSG ~DEVTMPFS ~!IDE ~INOTIFY_USER ~!SYSFS_DEPRECATED ~!SYSFS_DEPRECATED_V2 ~SIGNALFD ~EPOLL ~FHANDLE ~NET ~!FW_LOADER_USER_HELPER ~UNIX"
-		linux-info_pkg_setup
-
-		# CONFIG_FHANDLE was introduced by 2.6.39
-		local MINKV=2.6.39
-
-		if kernel_is -lt ${MINKV//./ }; then
-			eerror "Your running kernel is too old to run this version of ${P}"
-			eerror "You need to upgrade kernel at least to ${MINKV}"
-		fi
-
-		if kernel_is -lt 3 7; then
-			ewarn "Your running kernel is too old to have firmware loader and"
-			ewarn "this version of ${P} doesn't have userspace firmware loader"
-			ewarn "If you need firmware support, you need to upgrade kernel at least to 3.7"
-		fi
-	fi
-}
-
-src_prepare() {
-	cat <<-EOF > "${T}"/40-gentoo.rules
-	# Gentoo specific floppy and usb groups
-	ACTION=="add", SUBSYSTEM=="block", KERNEL=="fd[0-9]", GROUP="floppy"
-	ACTION=="add", SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GROUP="usb"
-	EOF
-
-	if [[ -d "${WORKDIR}/patches" ]]; then
-		eapply "${WORKDIR}/patches"
-	fi
-
-	local PATCHES=(
-		"${FILESDIR}/236-uucp-group.patch"
-	)
-
-	default
-}
-
-meson_multilib_native_use() {
-	if multilib_is_native_abi && use "$1"; then
-		echo true
-	else
-		echo false
-	fi
-}
-
-multilib_src_configure() {
-	local emesonargs=(
-		-Dacl=$(meson_multilib_native_use acl)
-		-Defi=false
-		-Dkmod=$(meson_multilib_native_use kmod)
-		-Dselinux=$(meson_multilib_native_use selinux)
-		-Dlink-udev-shared=false
-		-Dsplit-usr=true
-
-		# Prevent automagic deps
-		-Dgcrypt=false
-		-Dlibcryptsetup=false
-		-Dlibidn=false
-		-Dlibidn2=false
-		-Dlibiptc=false
-		-Dseccomp=false
-		-Dlz4=false
-		-Dxz=false
-	)
-	meson_src_configure
-}
-
-src_configure() {
-	# Prevent conflicts with i686 cross toolchain, bug 559726
-	tc-export AR CC NM OBJCOPY RANLIB
-	multilib-minimal_src_configure
-}
-
-multilib_src_compile() {
-	# meson creates this link
-	local libudev=$(readlink src/udev/libudev.so.1)
-
-	local targets=(
-		src/udev/${libudev}
-	)
-	if multilib_is_native_abi; then
-		targets+=(
-			systemd-udevd
-			udevadm
-			src/udev/ata_id
-			src/udev/cdrom_id
-			src/udev/mtd_probe
-			src/udev/scsi_id
-			src/udev/v4l_id
-			man/udev.conf.5
-			man/systemd.link.5
-			man/hwdb.7
-			man/udev.7
-			man/systemd-udevd.service.8
-			man/udevadm.8
-		)
-	fi
-	eninja "${targets[@]}"
-}
-
-multilib_src_install() {
-	local libudev=$(readlink src/udev/libudev.so.1)
-
-	into /
-	dolib.so src/udev/{${libudev},libudev.so.1,libudev.so}
-
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins src/libudev/libudev.pc
-
-	if multilib_is_native_abi; then
-		into /
-		dobin udevadm
-
-		exeinto /lib/systemd
-		doexe systemd-udevd
-
-		exeinto /lib/udev
-		doexe src/udev/{ata_id,cdrom_id,mtd_probe,scsi_id,v4l_id}
-
-		rm rules/99-systemd.rules || die
-		insinto /lib/udev/rules.d
-		doins rules/*.rules
-
-		insinto /usr/share/pkgconfig
-		doins src/udev/udev.pc
-
-		mv man/systemd-udevd.service.8 man/systemd-udevd.8 || die
-		rm man/systemd-udevd-{control,kernel}.socket.8 || die
-		doman man/*.[0-9]
-	fi
-}
-
-multilib_src_install_all() {
-	doheader src/libudev/libudev.h
-
-	insinto /etc/udev
-	doins src/udev/udev.conf
-	keepdir /etc/udev/{hwdb.d,rules.d}
-
-	insinto /lib/systemd/network
-	doins network/99-default.link
-
-	# see src_prepare() for content of 40-gentoo.rules
-	insinto /lib/udev/rules.d
-	doins "${T}"/40-gentoo.rules
-	doins "${S}"/rules/*.rules
-
-	dobashcomp shell-completion/bash/udevadm
-
-	insinto /usr/share/zsh/site-functions
-	doins shell-completion/zsh/_udevadm
-
-	einstalldocs
-}
-
-pkg_postinst() {
-	mkdir -p "${ROOT%/}"/run
-
-	# "losetup -f" is confused if there is an empty /dev/loop/, Bug #338766
-	# So try to remove it here (will only work if empty).
-	rmdir "${ROOT%/}"/dev/loop 2>/dev/null
-	if [[ -d ${ROOT%/}/dev/loop ]]; then
-		ewarn "Please make sure your remove /dev/loop,"
-		ewarn "else losetup may be confused when looking for unused devices."
-	fi
-
-	local fstab="${ROOT%/}"/etc/fstab dev path fstype rest
-	while read -r dev path fstype rest; do
-		if [[ ${path} == /dev && ${fstype} != devtmpfs ]]; then
-			ewarn "You need to edit your /dev line in ${fstab} to have devtmpfs"
-			ewarn "filesystem. Otherwise udev won't be able to boot."
-			ewarn "See, https://bugs.gentoo.org/453186"
-		fi
-	done < "${fstab}"
-
-	if [[ -d ${ROOT%/}/usr/lib/udev ]]; then
-		ewarn
-		ewarn "Please re-emerge all packages on your system which install"
-		ewarn "rules and helpers in /usr/lib/udev. They should now be in"
-		ewarn "/lib/udev."
-		ewarn
-		ewarn "One way to do this is to run the following command:"
-		ewarn "emerge -av1 \$(qfile -q -S -C /usr/lib/udev)"
-		ewarn "Note that qfile can be found in app-portage/portage-utils"
-	fi
-
-	local old_cd_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-cd.rules
-	local old_net_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-net.rules
-	for old_rules in "${old_cd_rules}" "${old_net_rules}"; do
-		if [[ -f ${old_rules} ]]; then
-			ewarn
-			ewarn "File ${old_rules} is from old udev installation but if you still use it,"
-			ewarn "rename it to something else starting with 70- to silence this deprecation"
-			ewarn "warning."
-		fi
-	done
-
-	elog
-	elog "Starting from version >= 197 the new predictable network interface names are"
-	elog "used by default, see:"
-	elog "https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames"
-	elog "https://cgit.freedesktop.org/systemd/systemd/tree/src/udev/udev-builtin-net_id.c"
-	elog
-	elog "Example command to get the information for the new interface name before booting"
-	elog "(replace <ifname> with, for example, eth0):"
-	elog "# udevadm test-builtin net_id /sys/class/net/<ifname> 2> /dev/null"
-	elog
-	elog "You can use either kernel parameter \"net.ifnames=0\", create empty"
-	elog "file /etc/systemd/network/99-default.link, or symlink it to /dev/null"
-	elog "to disable the feature."
-
-	if has_version 'sys-apps/biosdevname'; then
-		ewarn
-		ewarn "You can replace the functionality of sys-apps/biosdevname which has been"
-		ewarn "detected to be installed with the new predictable network interface names."
-	fi
-
-	ewarn
-	ewarn "You need to restart udev as soon as possible to make the upgrade go"
-	ewarn "into effect."
-	ewarn "The method you use to do this depends on your init system."
-	if has_version 'sys-apps/openrc'; then
-		ewarn "For sys-apps/openrc users it is:"
-		ewarn "# /etc/init.d/udev --nodeps restart"
-	fi
-
-	elog
-	elog "For more information on udev on Gentoo, upgrading, writing udev rules, and"
-	elog "fixing known issues visit:"
-	elog "https://wiki.gentoo.org/wiki/Udev"
-	elog "https://wiki.gentoo.org/wiki/Udev/upgrade"
-
-	# If user has disabled 80-net-name-slot.rules using a empty file or a symlink to /dev/null,
-	# do the same for 80-net-setup-link.rules to keep the old behavior
-	local net_move=no
-	local net_name_slot_sym=no
-	local net_rules_path="${ROOT%/}"/etc/udev/rules.d
-	local net_name_slot="${net_rules_path}"/80-net-name-slot.rules
-	local net_setup_link="${net_rules_path}"/80-net-setup-link.rules
-	if [[ ! -e ${net_setup_link} ]]; then
-		[[ -f ${net_name_slot} && $(sed -e "/^#/d" -e "/^\W*$/d" ${net_name_slot} | wc -l) == 0 ]] && net_move=yes
-		if [[ -L ${net_name_slot} && $(readlink ${net_name_slot}) == /dev/null ]]; then
-			net_move=yes
-			net_name_slot_sym=yes
-		fi
-	fi
-	if [[ ${net_move} == yes ]]; then
-		ebegin "Copying ${net_name_slot} to ${net_setup_link}"
-
-		if [[ ${net_name_slot_sym} == yes ]]; then
-			ln -nfs /dev/null "${net_setup_link}"
-		else
-			cp "${net_name_slot}" "${net_setup_link}"
-		fi
-		eend $?
-	fi
-
-	# https://cgit.freedesktop.org/systemd/systemd/commit/rules/50-udev-default.rules?id=3dff3e00e044e2d53c76fa842b9a4759d4a50e69
-	# https://bugs.gentoo.org/246847
-	# https://bugs.gentoo.org/514174
-	enewgroup input
-
-	# Update hwdb database in case the format is changed by udev version.
-	if has_version 'sys-apps/hwids[udev]'; then
-		udevadm hwdb --update --root="${ROOT%/}"
-		# Only reload when we are not upgrading to avoid potential race w/ incompatible hwdb.bin and the running udevd
-		# https://cgit.freedesktop.org/systemd/systemd/commit/?id=1fab57c209035f7e66198343074e9cee06718bda
-		[[ -z ${REPLACING_VERSIONS} ]] && udev_reload
-	fi
-}

diff --git a/sys-fs/udev/udev-241_rc2.ebuild b/sys-fs/udev/udev-241_rc2.ebuild
deleted file mode 100644
index ba1551d202d..00000000000
--- a/sys-fs/udev/udev-241_rc2.ebuild
+++ /dev/null
@@ -1,326 +0,0 @@
-# Copyright 2003-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit bash-completion-r1 linux-info meson ninja-utils multilib-minimal toolchain-funcs udev user
-
-if [[ ${PV} = 9999* ]]; then
-	EGIT_REPO_URI="https://github.com/systemd/systemd.git"
-	inherit git-r3
-else
-	MY_PV=${PV/_/-}
-	MY_P=systemd-${MY_PV}
-	S=${WORKDIR}/${MY_P}
-	SRC_URI="https://github.com/systemd/systemd/archive/v${MY_PV}/${MY_P}.tar.gz"
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
-fi
-
-DESCRIPTION="Linux dynamic and persistent device naming support (aka userspace devfs)"
-HOMEPAGE="https://www.freedesktop.org/wiki/Software/systemd"
-
-LICENSE="LGPL-2.1 MIT GPL-2"
-SLOT="0"
-IUSE="acl +kmod selinux"
-
-RESTRICT="test"
-
-COMMON_DEPEND=">=sys-apps/util-linux-2.30[${MULTILIB_USEDEP}]
-	sys-libs/libcap[${MULTILIB_USEDEP}]
-	acl? ( sys-apps/acl )
-	kmod? ( >=sys-apps/kmod-16 )
-	selinux? ( >=sys-libs/libselinux-2.1.9 )
-	!<sys-libs/glibc-2.11
-	!sys-apps/gentoo-systemd-integration
-	!sys-apps/systemd"
-DEPEND="${COMMON_DEPEND}
-	dev-util/gperf
-	>=dev-util/intltool-0.50
-	>=dev-util/meson-0.40.0
-	dev-util/ninja
-	>=sys-apps/coreutils-8.16
-	virtual/os-headers
-	virtual/pkgconfig
-	>=sys-kernel/linux-headers-3.9
-	app-text/docbook-xml-dtd:4.2
-	app-text/docbook-xml-dtd:4.5
-	app-text/docbook-xsl-stylesheets
-	dev-libs/libxslt"
-RDEPEND="${COMMON_DEPEND}
-	!<sys-fs/lvm2-2.02.103
-	!<sec-policy/selinux-base-2.20120725-r10"
-PDEPEND=">=sys-apps/hwids-20140304[udev]
-	>=sys-fs/udev-init-scripts-26"
-
-pkg_setup() {
-	if [[ ${MERGE_TYPE} != buildonly ]]; then
-		CONFIG_CHECK="~BLK_DEV_BSG ~DEVTMPFS ~!IDE ~INOTIFY_USER ~!SYSFS_DEPRECATED ~!SYSFS_DEPRECATED_V2 ~SIGNALFD ~EPOLL ~FHANDLE ~NET ~!FW_LOADER_USER_HELPER ~UNIX"
-		linux-info_pkg_setup
-
-		# CONFIG_FHANDLE was introduced by 2.6.39
-		local MINKV=2.6.39
-
-		if kernel_is -lt ${MINKV//./ }; then
-			eerror "Your running kernel is too old to run this version of ${P}"
-			eerror "You need to upgrade kernel at least to ${MINKV}"
-		fi
-
-		if kernel_is -lt 3 7; then
-			ewarn "Your running kernel is too old to have firmware loader and"
-			ewarn "this version of ${P} doesn't have userspace firmware loader"
-			ewarn "If you need firmware support, you need to upgrade kernel at least to 3.7"
-		fi
-	fi
-}
-
-src_prepare() {
-	cat <<-EOF > "${T}"/40-gentoo.rules
-	# Gentoo specific floppy and usb groups
-	ACTION=="add", SUBSYSTEM=="block", KERNEL=="fd[0-9]", GROUP="floppy"
-	ACTION=="add", SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GROUP="usb"
-	EOF
-
-	if [[ -d "${WORKDIR}/patches" ]]; then
-		eapply "${WORKDIR}/patches"
-	fi
-
-	local PATCHES=(
-		"${FILESDIR}/236-uucp-group.patch"
-	)
-
-	default
-}
-
-meson_multilib_native_use() {
-	if multilib_is_native_abi && use "$1"; then
-		echo true
-	else
-		echo false
-	fi
-}
-
-multilib_src_configure() {
-	local emesonargs=(
-		-Dacl=$(meson_multilib_native_use acl)
-		-Defi=false
-		-Dkmod=$(meson_multilib_native_use kmod)
-		-Dselinux=$(meson_multilib_native_use selinux)
-		-Dlink-udev-shared=false
-		-Dsplit-usr=true
-
-		# Prevent automagic deps
-		-Dgcrypt=false
-		-Dlibcryptsetup=false
-		-Dlibidn=false
-		-Dlibidn2=false
-		-Dlibiptc=false
-		-Dseccomp=false
-		-Dlz4=false
-		-Dxz=false
-	)
-	meson_src_configure
-}
-
-src_configure() {
-	# Prevent conflicts with i686 cross toolchain, bug 559726
-	tc-export AR CC NM OBJCOPY RANLIB
-	multilib-minimal_src_configure
-}
-
-multilib_src_compile() {
-	# meson creates this link
-	local libudev=$(readlink src/udev/libudev.so.1)
-
-	local targets=(
-		src/udev/${libudev}
-	)
-	if multilib_is_native_abi; then
-		targets+=(
-			systemd-udevd
-			udevadm
-			src/udev/ata_id
-			src/udev/cdrom_id
-			src/udev/mtd_probe
-			src/udev/scsi_id
-			src/udev/v4l_id
-			man/udev.conf.5
-			man/systemd.link.5
-			man/hwdb.7
-			man/udev.7
-			man/systemd-udevd.service.8
-			man/udevadm.8
-		)
-	fi
-	eninja "${targets[@]}"
-}
-
-multilib_src_install() {
-	local libudev=$(readlink src/udev/libudev.so.1)
-
-	into /
-	dolib.so src/udev/{${libudev},libudev.so.1,libudev.so}
-
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins src/libudev/libudev.pc
-
-	if multilib_is_native_abi; then
-		into /
-		dobin udevadm
-
-		exeinto /lib/systemd
-		doexe systemd-udevd
-
-		exeinto /lib/udev
-		doexe src/udev/{ata_id,cdrom_id,mtd_probe,scsi_id,v4l_id}
-
-		rm rules/99-systemd.rules || die
-		insinto /lib/udev/rules.d
-		doins rules/*.rules
-
-		insinto /usr/share/pkgconfig
-		doins src/udev/udev.pc
-
-		mv man/systemd-udevd.service.8 man/systemd-udevd.8 || die
-		rm man/systemd-udevd-{control,kernel}.socket.8 || die
-		doman man/*.[0-9]
-	fi
-}
-
-multilib_src_install_all() {
-	doheader src/libudev/libudev.h
-
-	insinto /etc/udev
-	doins src/udev/udev.conf
-	keepdir /etc/udev/{hwdb.d,rules.d}
-
-	insinto /lib/systemd/network
-	doins network/99-default.link
-
-	# see src_prepare() for content of 40-gentoo.rules
-	insinto /lib/udev/rules.d
-	doins "${T}"/40-gentoo.rules
-	doins "${S}"/rules/*.rules
-
-	dobashcomp shell-completion/bash/udevadm
-
-	insinto /usr/share/zsh/site-functions
-	doins shell-completion/zsh/_udevadm
-
-	einstalldocs
-}
-
-pkg_postinst() {
-	mkdir -p "${ROOT%/}"/run
-
-	# "losetup -f" is confused if there is an empty /dev/loop/, Bug #338766
-	# So try to remove it here (will only work if empty).
-	rmdir "${ROOT%/}"/dev/loop 2>/dev/null
-	if [[ -d ${ROOT%/}/dev/loop ]]; then
-		ewarn "Please make sure your remove /dev/loop,"
-		ewarn "else losetup may be confused when looking for unused devices."
-	fi
-
-	local fstab="${ROOT%/}"/etc/fstab dev path fstype rest
-	while read -r dev path fstype rest; do
-		if [[ ${path} == /dev && ${fstype} != devtmpfs ]]; then
-			ewarn "You need to edit your /dev line in ${fstab} to have devtmpfs"
-			ewarn "filesystem. Otherwise udev won't be able to boot."
-			ewarn "See, https://bugs.gentoo.org/453186"
-		fi
-	done < "${fstab}"
-
-	if [[ -d ${ROOT%/}/usr/lib/udev ]]; then
-		ewarn
-		ewarn "Please re-emerge all packages on your system which install"
-		ewarn "rules and helpers in /usr/lib/udev. They should now be in"
-		ewarn "/lib/udev."
-		ewarn
-		ewarn "One way to do this is to run the following command:"
-		ewarn "emerge -av1 \$(qfile -q -S -C /usr/lib/udev)"
-		ewarn "Note that qfile can be found in app-portage/portage-utils"
-	fi
-
-	local old_cd_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-cd.rules
-	local old_net_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-net.rules
-	for old_rules in "${old_cd_rules}" "${old_net_rules}"; do
-		if [[ -f ${old_rules} ]]; then
-			ewarn
-			ewarn "File ${old_rules} is from old udev installation but if you still use it,"
-			ewarn "rename it to something else starting with 70- to silence this deprecation"
-			ewarn "warning."
-		fi
-	done
-
-	elog
-	elog "Starting from version >= 197 the new predictable network interface names are"
-	elog "used by default, see:"
-	elog "https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames"
-	elog "https://cgit.freedesktop.org/systemd/systemd/tree/src/udev/udev-builtin-net_id.c"
-	elog
-	elog "Example command to get the information for the new interface name before booting"
-	elog "(replace <ifname> with, for example, eth0):"
-	elog "# udevadm test-builtin net_id /sys/class/net/<ifname> 2> /dev/null"
-	elog
-	elog "You can use either kernel parameter \"net.ifnames=0\", create empty"
-	elog "file /etc/systemd/network/99-default.link, or symlink it to /dev/null"
-	elog "to disable the feature."
-
-	if has_version 'sys-apps/biosdevname'; then
-		ewarn
-		ewarn "You can replace the functionality of sys-apps/biosdevname which has been"
-		ewarn "detected to be installed with the new predictable network interface names."
-	fi
-
-	ewarn
-	ewarn "You need to restart udev as soon as possible to make the upgrade go"
-	ewarn "into effect."
-	ewarn "The method you use to do this depends on your init system."
-	if has_version 'sys-apps/openrc'; then
-		ewarn "For sys-apps/openrc users it is:"
-		ewarn "# /etc/init.d/udev --nodeps restart"
-	fi
-
-	elog
-	elog "For more information on udev on Gentoo, upgrading, writing udev rules, and"
-	elog "fixing known issues visit:"
-	elog "https://wiki.gentoo.org/wiki/Udev"
-	elog "https://wiki.gentoo.org/wiki/Udev/upgrade"
-
-	# If user has disabled 80-net-name-slot.rules using a empty file or a symlink to /dev/null,
-	# do the same for 80-net-setup-link.rules to keep the old behavior
-	local net_move=no
-	local net_name_slot_sym=no
-	local net_rules_path="${ROOT%/}"/etc/udev/rules.d
-	local net_name_slot="${net_rules_path}"/80-net-name-slot.rules
-	local net_setup_link="${net_rules_path}"/80-net-setup-link.rules
-	if [[ ! -e ${net_setup_link} ]]; then
-		[[ -f ${net_name_slot} && $(sed -e "/^#/d" -e "/^\W*$/d" ${net_name_slot} | wc -l) == 0 ]] && net_move=yes
-		if [[ -L ${net_name_slot} && $(readlink ${net_name_slot}) == /dev/null ]]; then
-			net_move=yes
-			net_name_slot_sym=yes
-		fi
-	fi
-	if [[ ${net_move} == yes ]]; then
-		ebegin "Copying ${net_name_slot} to ${net_setup_link}"
-
-		if [[ ${net_name_slot_sym} == yes ]]; then
-			ln -nfs /dev/null "${net_setup_link}"
-		else
-			cp "${net_name_slot}" "${net_setup_link}"
-		fi
-		eend $?
-	fi
-
-	# https://cgit.freedesktop.org/systemd/systemd/commit/rules/50-udev-default.rules?id=3dff3e00e044e2d53c76fa842b9a4759d4a50e69
-	# https://bugs.gentoo.org/246847
-	# https://bugs.gentoo.org/514174
-	enewgroup input
-
-	# Update hwdb database in case the format is changed by udev version.
-	if has_version 'sys-apps/hwids[udev]'; then
-		udevadm hwdb --update --root="${ROOT%/}"
-		# Only reload when we are not upgrading to avoid potential race w/ incompatible hwdb.bin and the running udevd
-		# https://cgit.freedesktop.org/systemd/systemd/commit/?id=1fab57c209035f7e66198343074e9cee06718bda
-		[[ -z ${REPLACING_VERSIONS} ]] && udev_reload
-	fi
-}


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-fs/udev/, sys-fs/udev/files/
@ 2021-01-06 15:47 Mike Gilbert
  0 siblings, 0 replies; 13+ messages in thread
From: Mike Gilbert @ 2021-01-06 15:47 UTC (permalink / raw
  To: gentoo-commits

commit:     e1c9784d3db136c7ce82dd00bcad18839dd11fee
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Wed Jan  6 15:47:10 2021 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Wed Jan  6 15:47:10 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e1c9784d

sys-fs/udev: remove old

Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 sys-fs/udev/Manifest              |   1 -
 sys-fs/udev/files/242-gcc-9.patch | 163 -------------------
 sys-fs/udev/udev-242.ebuild       | 333 --------------------------------------
 3 files changed, 497 deletions(-)

diff --git a/sys-fs/udev/Manifest b/sys-fs/udev/Manifest
index 299515c5f11..d0bd75c2b5b 100644
--- a/sys-fs/udev/Manifest
+++ b/sys-fs/udev/Manifest
@@ -1,4 +1,3 @@
-DIST systemd-242.tar.gz 7831435 BLAKE2B 288e65d0a8e133ef5885689eb16118a83d93c730e342da63115cea0892fc999104c3a4856c83f3e7ef909ba2f3311146730b05ee02d84cc0400851ccbdcd54cd SHA512 578f68a3c8f2d454198fc04ff8d943abcfb390531d57f9603d185857f7afa7f4dc641dafecf49ce50fe22f5837b252b181400891e8efd4459fd4f69bb4283cb4
 DIST systemd-243.tar.gz 8242522 BLAKE2B 89e3ebbea5a99061329f7c78220a66c1e075d5ba90dfdf5ee8d0d9b762ef4600dc82d8ca2054632e5e343b6272cd8046c92f7f99dcfa8287c5ef2b42fb96d4cb SHA512 56b52a297aa5ac04d9667eb3afb1598725b197de73ff72baa1aabbc2844e36fba7b7fccdf6d214ae8b5b926616b2b7e15772763aaa80ec938d74333ff9c8673e
 DIST systemd-246.tar.gz 9534036 BLAKE2B 71b72abcd4d066d35d45d9835d41bec8faa9a7eddc80b48fe7073223f07d32f78a8442c52dc0800940f9750d9c5502123a633738981d797cf610d85df2035bf0 SHA512 7103f7da53f7ced3b5543c238f23bd11c82af8e37166c1720a90576b6b431b4329320c78726166c65a9f5e101dd465c0a86dd13c586c4e55e608a6273d8f324f
 DIST systemd-stable-245.5.tar.gz 9020836 BLAKE2B 7753eecceffa86c9208c3e71df2037b58b445f9090b73c6ff499b4170b94488a1fd1cabcd17cbb98506a692875a3eef07a40a54d23e09c331a01319f8d03d13d SHA512 47de4a59980643002f325c499eeb4dd76fa9f1d1267686e7564f103690487bf85974590d7cb3e3641409e5bfba567fe2a66efa80320e7e8adc48af4461e2e172

diff --git a/sys-fs/udev/files/242-gcc-9.patch b/sys-fs/udev/files/242-gcc-9.patch
deleted file mode 100644
index e9f690a65be..00000000000
--- a/sys-fs/udev/files/242-gcc-9.patch
+++ /dev/null
@@ -1,163 +0,0 @@
-From c98b3545008d8e984ab456dcf79787418fcbfe13 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
-Date: Tue, 7 May 2019 13:46:55 +0200
-Subject: [PATCH] network: remove redunant link name in message
-
-Fixes #12454.
-
-gcc was complaining that the link->ifname argument is NULL. Adding
-assert(link->ifname) right before the call has no effect. It seems that
-gcc is confused by the fact that log_link_warning_errno() internally
-calls log_object(), with link->ifname passed as the object. log_object()
-is also a macro and is does a check whether the passed object is NULL.
-So we have a check if something is NULL right next an unconditional use
-of it where it cannot be NULL. I think it's a bug in gcc.
-
-Anyway, we don't need to use link->ifname here. log_object() already prepends
-the object name to the message.
----
- src/network/networkd-link.c | 3 +--
- 1 file changed, 1 insertion(+), 2 deletions(-)
-
-diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c
-index 533193ac932..6fc82940033 100644
---- a/src/network/networkd-link.c
-+++ b/src/network/networkd-link.c
-@@ -338,8 +338,7 @@ static int link_enable_ipv6(Link *link) {
- 
-         r = sysctl_write_ip_property_boolean(AF_INET6, link->ifname, "disable_ipv6", disabled);
-         if (r < 0)
--                log_link_warning_errno(link, r, "Cannot %s IPv6 for interface %s: %m",
--                                       enable_disable(!disabled), link->ifname);
-+                log_link_warning_errno(link, r, "Cannot %s IPv6: %m", enable_disable(!disabled));
-         else
-                 log_link_info(link, "IPv6 successfully %sd", enable_disable(!disabled));
- 
-From bcb846f30f9ca8f42e79d109706aee9f2032261b Mon Sep 17 00:00:00 2001
-From: Mike Gilbert <floppym@gentoo.org>
-Date: Wed, 22 May 2019 10:31:01 -0400
-Subject: [PATCH] shared/machine-image: avoid passing NULL to log_debug_errno
-
-Fixes: https://github.com/systemd/systemd/issues/12534
----
- src/shared/machine-image.c | 11 ++++++++---
- 1 file changed, 8 insertions(+), 3 deletions(-)
-
-diff --git a/src/shared/machine-image.c b/src/shared/machine-image.c
-index 6b9d8fb97a6..6a6d952b424 100644
---- a/src/shared/machine-image.c
-+++ b/src/shared/machine-image.c
-@@ -201,11 +201,13 @@ static int image_make(
-                 Image **ret) {
- 
-         _cleanup_free_ char *pretty_buffer = NULL;
-+        _cleanup_free_ char *cwd = NULL;
-         struct stat stbuf;
-         bool read_only;
-         int r;
- 
-         assert(dfd >= 0 || dfd == AT_FDCWD);
-+        assert(path || dfd == AT_FDCWD);
-         assert(filename);
- 
-         /* We explicitly *do* follow symlinks here, since we want to allow symlinking trees, raw files and block
-@@ -221,6 +223,9 @@ static int image_make(
-                 st = &stbuf;
-         }
- 
-+        if (!path)
-+                safe_getcwd(&cwd);
-+
-         read_only =
-                 (path && path_startswith(path, "/usr")) ||
-                 (faccessat(dfd, filename, W_OK, AT_EACCESS) < 0 && errno == EROFS);
-@@ -359,7 +364,7 @@ static int image_make(
- 
-                 block_fd = openat(dfd, filename, O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_NOCTTY);
-                 if (block_fd < 0)
--                        log_debug_errno(errno, "Failed to open block device %s/%s, ignoring: %m", path, filename);
-+                        log_debug_errno(errno, "Failed to open block device %s/%s, ignoring: %m", path ?: strnull(cwd), filename);
-                 else {
-                         /* Refresh stat data after opening the node */
-                         if (fstat(block_fd, &stbuf) < 0)
-@@ -373,13 +378,13 @@ static int image_make(
-                                 int state = 0;
- 
-                                 if (ioctl(block_fd, BLKROGET, &state) < 0)
--                                        log_debug_errno(errno, "Failed to issue BLKROGET on device %s/%s, ignoring: %m", path, filename);
-+                                        log_debug_errno(errno, "Failed to issue BLKROGET on device %s/%s, ignoring: %m", path ?: strnull(cwd), filename);
-                                 else if (state)
-                                         read_only = true;
-                         }
- 
-                         if (ioctl(block_fd, BLKGETSIZE64, &size) < 0)
--                                log_debug_errno(errno, "Failed to issue BLKGETSIZE64 on device %s/%s, ignoring: %m", path, filename);
-+                                log_debug_errno(errno, "Failed to issue BLKGETSIZE64 on device %s/%s, ignoring: %m", path ?: strnull(cwd), filename);
- 
-                         block_fd = safe_close(block_fd);
-                 }
-From 2570578d908a8e010828fa1f88826b1c45d534ff Mon Sep 17 00:00:00 2001
-From: Lennart Poettering <lennart@poettering.net>
-Date: Fri, 24 May 2019 10:54:09 +0200
-Subject: [PATCH] machine-image: openat() doesn't operate on the cwd if the
- first argument is specified
-
-A fix-up for bcb846f30f9ca8f42e79d109706aee9f2032261b.
----
- src/shared/machine-image.c | 17 ++++++++++-------
- 1 file changed, 10 insertions(+), 7 deletions(-)
-
-diff --git a/src/shared/machine-image.c b/src/shared/machine-image.c
-index 6a6d952b424..55e5f08f91e 100644
---- a/src/shared/machine-image.c
-+++ b/src/shared/machine-image.c
-@@ -200,8 +200,7 @@ static int image_make(
-                 const struct stat *st,
-                 Image **ret) {
- 
--        _cleanup_free_ char *pretty_buffer = NULL;
--        _cleanup_free_ char *cwd = NULL;
-+        _cleanup_free_ char *pretty_buffer = NULL, *parent = NULL;
-         struct stat stbuf;
-         bool read_only;
-         int r;
-@@ -223,8 +222,12 @@ static int image_make(
-                 st = &stbuf;
-         }
- 
--        if (!path)
--                safe_getcwd(&cwd);
-+        if (!path) {
-+                if (dfd == AT_FDCWD)
-+                        (void) safe_getcwd(&parent);
-+                else
-+                        (void) fd_get_path(dfd, &parent);
-+        }
- 
-         read_only =
-                 (path && path_startswith(path, "/usr")) ||
-@@ -364,7 +367,7 @@ static int image_make(
- 
-                 block_fd = openat(dfd, filename, O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_NOCTTY);
-                 if (block_fd < 0)
--                        log_debug_errno(errno, "Failed to open block device %s/%s, ignoring: %m", path ?: strnull(cwd), filename);
-+                        log_debug_errno(errno, "Failed to open block device %s/%s, ignoring: %m", path ?: strnull(parent), filename);
-                 else {
-                         /* Refresh stat data after opening the node */
-                         if (fstat(block_fd, &stbuf) < 0)
-@@ -378,13 +381,13 @@ static int image_make(
-                                 int state = 0;
- 
-                                 if (ioctl(block_fd, BLKROGET, &state) < 0)
--                                        log_debug_errno(errno, "Failed to issue BLKROGET on device %s/%s, ignoring: %m", path ?: strnull(cwd), filename);
-+                                        log_debug_errno(errno, "Failed to issue BLKROGET on device %s/%s, ignoring: %m", path ?: strnull(parent), filename);
-                                 else if (state)
-                                         read_only = true;
-                         }
- 
-                         if (ioctl(block_fd, BLKGETSIZE64, &size) < 0)
--                                log_debug_errno(errno, "Failed to issue BLKGETSIZE64 on device %s/%s, ignoring: %m", path ?: strnull(cwd), filename);
-+                                log_debug_errno(errno, "Failed to issue BLKGETSIZE64 on device %s/%s, ignoring: %m", path ?: strnull(parent), filename);
- 
-                         block_fd = safe_close(block_fd);
-                 }

diff --git a/sys-fs/udev/udev-242.ebuild b/sys-fs/udev/udev-242.ebuild
deleted file mode 100644
index 6c9973b9a66..00000000000
--- a/sys-fs/udev/udev-242.ebuild
+++ /dev/null
@@ -1,333 +0,0 @@
-# Copyright 2003-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit bash-completion-r1 linux-info meson ninja-utils multilib-minimal toolchain-funcs udev
-
-if [[ ${PV} = 9999* ]]; then
-	EGIT_REPO_URI="https://github.com/systemd/systemd.git"
-	inherit git-r3
-else
-	MY_PV=${PV/_/-}
-	MY_P=systemd-${MY_PV}
-	S=${WORKDIR}/${MY_P}
-	SRC_URI="https://github.com/systemd/systemd/archive/v${MY_PV}/${MY_P}.tar.gz"
-	KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86"
-fi
-
-DESCRIPTION="Linux dynamic and persistent device naming support (aka userspace devfs)"
-HOMEPAGE="https://www.freedesktop.org/wiki/Software/systemd"
-
-LICENSE="LGPL-2.1 MIT GPL-2"
-SLOT="0"
-IUSE="acl +kmod selinux"
-
-RESTRICT="test"
-
-COMMON_DEPEND=">=sys-apps/util-linux-2.30[${MULTILIB_USEDEP}]
-	sys-libs/libcap[${MULTILIB_USEDEP}]
-	acl? ( sys-apps/acl )
-	kmod? ( >=sys-apps/kmod-16 )
-	selinux? ( >=sys-libs/libselinux-2.1.9 )
-	!<sys-libs/glibc-2.11
-	!sys-apps/gentoo-systemd-integration
-	!sys-apps/systemd"
-DEPEND="${COMMON_DEPEND}
-	dev-util/gperf
-	>=dev-util/intltool-0.50
-	>=dev-util/meson-0.40.0
-	dev-util/ninja
-	>=sys-apps/coreutils-8.16
-	virtual/os-headers
-	virtual/pkgconfig
-	>=sys-kernel/linux-headers-3.9
-	app-text/docbook-xml-dtd:4.2
-	app-text/docbook-xml-dtd:4.5
-	app-text/docbook-xsl-stylesheets
-	dev-libs/libxslt"
-RDEPEND="${COMMON_DEPEND}
-	acct-group/kmem
-	acct-group/tty
-	acct-group/audio
-	acct-group/cdrom
-	acct-group/dialout
-	acct-group/disk
-	acct-group/input
-	acct-group/kvm
-	acct-group/lp
-	acct-group/render
-	acct-group/tape
-	acct-group/video
-	!<sys-fs/lvm2-2.02.103
-	!<sec-policy/selinux-base-2.20120725-r10"
-PDEPEND=">=sys-apps/hwids-20140304[udev]
-	>=sys-fs/udev-init-scripts-26"
-
-pkg_setup() {
-	if [[ ${MERGE_TYPE} != buildonly ]]; then
-		CONFIG_CHECK="~BLK_DEV_BSG ~DEVTMPFS ~!IDE ~INOTIFY_USER ~!SYSFS_DEPRECATED ~!SYSFS_DEPRECATED_V2 ~SIGNALFD ~EPOLL ~FHANDLE ~NET ~!FW_LOADER_USER_HELPER ~UNIX"
-		linux-info_pkg_setup
-
-		# CONFIG_FHANDLE was introduced by 2.6.39
-		local MINKV=2.6.39
-
-		if kernel_is -lt ${MINKV//./ }; then
-			eerror "Your running kernel is too old to run this version of ${P}"
-			eerror "You need to upgrade kernel at least to ${MINKV}"
-		fi
-
-		if kernel_is -lt 3 7; then
-			ewarn "Your running kernel is too old to have firmware loader and"
-			ewarn "this version of ${P} doesn't have userspace firmware loader"
-			ewarn "If you need firmware support, you need to upgrade kernel at least to 3.7"
-		fi
-	fi
-}
-
-src_prepare() {
-	cat <<-EOF > "${T}"/40-gentoo.rules
-	# Gentoo specific floppy and usb groups
-	ACTION=="add", SUBSYSTEM=="block", KERNEL=="fd[0-9]", GROUP="floppy"
-	ACTION=="add", SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GROUP="usb"
-	EOF
-
-	if [[ -d "${WORKDIR}/patches" ]]; then
-		eapply "${WORKDIR}/patches"
-	fi
-
-	local PATCHES=(
-		"${FILESDIR}"/242-gcc-9.patch
-	)
-
-	default
-}
-
-meson_multilib_native_use() {
-	if multilib_is_native_abi && use "$1"; then
-		echo true
-	else
-		echo false
-	fi
-}
-
-multilib_src_configure() {
-	local emesonargs=(
-		-Dacl=$(meson_multilib_native_use acl)
-		-Defi=false
-		-Dkmod=$(meson_multilib_native_use kmod)
-		-Dselinux=$(meson_multilib_native_use selinux)
-		-Dlink-udev-shared=false
-		-Dsplit-usr=true
-
-		# Prevent automagic deps
-		-Dgcrypt=false
-		-Dlibcryptsetup=false
-		-Dlibidn=false
-		-Dlibidn2=false
-		-Dlibiptc=false
-		-Dseccomp=false
-		-Dlz4=false
-		-Dxz=false
-	)
-	meson_src_configure
-}
-
-src_configure() {
-	# Prevent conflicts with i686 cross toolchain, bug 559726
-	tc-export AR CC NM OBJCOPY RANLIB
-	multilib-minimal_src_configure
-}
-
-multilib_src_compile() {
-	# meson creates this link
-	local libudev=$(readlink src/udev/libudev.so.1)
-
-	local targets=(
-		src/udev/${libudev}
-	)
-	if multilib_is_native_abi; then
-		targets+=(
-			systemd-udevd
-			udevadm
-			src/udev/ata_id
-			src/udev/cdrom_id
-			src/udev/mtd_probe
-			src/udev/scsi_id
-			src/udev/v4l_id
-			man/udev.conf.5
-			man/systemd.link.5
-			man/hwdb.7
-			man/udev.7
-			man/systemd-udevd.service.8
-			man/udevadm.8
-		)
-	fi
-	eninja "${targets[@]}"
-}
-
-multilib_src_install() {
-	local libudev=$(readlink src/udev/libudev.so.1)
-
-	into /
-	dolib.so src/udev/{${libudev},libudev.so.1,libudev.so}
-
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins src/libudev/libudev.pc
-
-	if multilib_is_native_abi; then
-		into /
-		dobin udevadm
-
-		exeinto /lib/systemd
-		doexe systemd-udevd
-
-		exeinto /lib/udev
-		doexe src/udev/{ata_id,cdrom_id,mtd_probe,scsi_id,v4l_id}
-
-		rm rules/99-systemd.rules || die
-		insinto /lib/udev/rules.d
-		doins rules/*.rules
-
-		insinto /usr/share/pkgconfig
-		doins src/udev/udev.pc
-
-		mv man/systemd-udevd.service.8 man/systemd-udevd.8 || die
-		rm man/systemd-udevd-{control,kernel}.socket.8 || die
-		doman man/*.[0-9]
-	fi
-}
-
-multilib_src_install_all() {
-	doheader src/libudev/libudev.h
-
-	insinto /etc/udev
-	doins src/udev/udev.conf
-	keepdir /etc/udev/{hwdb.d,rules.d}
-
-	insinto /lib/systemd/network
-	doins network/99-default.link
-
-	# see src_prepare() for content of 40-gentoo.rules
-	insinto /lib/udev/rules.d
-	doins "${T}"/40-gentoo.rules
-	doins "${S}"/rules/*.rules
-
-	dobashcomp shell-completion/bash/udevadm
-
-	insinto /usr/share/zsh/site-functions
-	doins shell-completion/zsh/_udevadm
-
-	einstalldocs
-}
-
-pkg_postinst() {
-	mkdir -p "${ROOT%/}"/run
-
-	# "losetup -f" is confused if there is an empty /dev/loop/, Bug #338766
-	# So try to remove it here (will only work if empty).
-	rmdir "${ROOT%/}"/dev/loop 2>/dev/null
-	if [[ -d ${ROOT%/}/dev/loop ]]; then
-		ewarn "Please make sure your remove /dev/loop,"
-		ewarn "else losetup may be confused when looking for unused devices."
-	fi
-
-	local fstab="${ROOT%/}"/etc/fstab dev path fstype rest
-	while read -r dev path fstype rest; do
-		if [[ ${path} == /dev && ${fstype} != devtmpfs ]]; then
-			ewarn "You need to edit your /dev line in ${fstab} to have devtmpfs"
-			ewarn "filesystem. Otherwise udev won't be able to boot."
-			ewarn "See, https://bugs.gentoo.org/453186"
-		fi
-	done < "${fstab}"
-
-	if [[ -d ${ROOT%/}/usr/lib/udev ]]; then
-		ewarn
-		ewarn "Please re-emerge all packages on your system which install"
-		ewarn "rules and helpers in /usr/lib/udev. They should now be in"
-		ewarn "/lib/udev."
-		ewarn
-		ewarn "One way to do this is to run the following command:"
-		ewarn "emerge -av1 \$(qfile -q -S -C /usr/lib/udev)"
-		ewarn "Note that qfile can be found in app-portage/portage-utils"
-	fi
-
-	local old_cd_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-cd.rules
-	local old_net_rules="${ROOT%/}"/etc/udev/rules.d/70-persistent-net.rules
-	for old_rules in "${old_cd_rules}" "${old_net_rules}"; do
-		if [[ -f ${old_rules} ]]; then
-			ewarn
-			ewarn "File ${old_rules} is from old udev installation but if you still use it,"
-			ewarn "rename it to something else starting with 70- to silence this deprecation"
-			ewarn "warning."
-		fi
-	done
-
-	elog
-	elog "Starting from version >= 197 the new predictable network interface names are"
-	elog "used by default, see:"
-	elog "https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames"
-	elog "https://cgit.freedesktop.org/systemd/systemd/tree/src/udev/udev-builtin-net_id.c"
-	elog
-	elog "Example command to get the information for the new interface name before booting"
-	elog "(replace <ifname> with, for example, eth0):"
-	elog "# udevadm test-builtin net_id /sys/class/net/<ifname> 2> /dev/null"
-	elog
-	elog "You can use either kernel parameter \"net.ifnames=0\", create empty"
-	elog "file /etc/systemd/network/99-default.link, or symlink it to /dev/null"
-	elog "to disable the feature."
-
-	if has_version 'sys-apps/biosdevname'; then
-		ewarn
-		ewarn "You can replace the functionality of sys-apps/biosdevname which has been"
-		ewarn "detected to be installed with the new predictable network interface names."
-	fi
-
-	ewarn
-	ewarn "You need to restart udev as soon as possible to make the upgrade go"
-	ewarn "into effect."
-	ewarn "The method you use to do this depends on your init system."
-	if has_version 'sys-apps/openrc'; then
-		ewarn "For sys-apps/openrc users it is:"
-		ewarn "# /etc/init.d/udev --nodeps restart"
-	fi
-
-	elog
-	elog "For more information on udev on Gentoo, upgrading, writing udev rules, and"
-	elog "fixing known issues visit:"
-	elog "https://wiki.gentoo.org/wiki/Udev"
-	elog "https://wiki.gentoo.org/wiki/Udev/upgrade"
-
-	# If user has disabled 80-net-name-slot.rules using a empty file or a symlink to /dev/null,
-	# do the same for 80-net-setup-link.rules to keep the old behavior
-	local net_move=no
-	local net_name_slot_sym=no
-	local net_rules_path="${ROOT%/}"/etc/udev/rules.d
-	local net_name_slot="${net_rules_path}"/80-net-name-slot.rules
-	local net_setup_link="${net_rules_path}"/80-net-setup-link.rules
-	if [[ ! -e ${net_setup_link} ]]; then
-		[[ -f ${net_name_slot} && $(sed -e "/^#/d" -e "/^\W*$/d" ${net_name_slot} | wc -l) == 0 ]] && net_move=yes
-		if [[ -L ${net_name_slot} && $(readlink ${net_name_slot}) == /dev/null ]]; then
-			net_move=yes
-			net_name_slot_sym=yes
-		fi
-	fi
-	if [[ ${net_move} == yes ]]; then
-		ebegin "Copying ${net_name_slot} to ${net_setup_link}"
-
-		if [[ ${net_name_slot_sym} == yes ]]; then
-			ln -nfs /dev/null "${net_setup_link}"
-		else
-			cp "${net_name_slot}" "${net_setup_link}"
-		fi
-		eend $?
-	fi
-
-	# Update hwdb database in case the format is changed by udev version.
-	if has_version 'sys-apps/hwids[udev]'; then
-		udevadm hwdb --update --root="${ROOT%/}"
-		# Only reload when we are not upgrading to avoid potential race w/ incompatible hwdb.bin and the running udevd
-		# https://cgit.freedesktop.org/systemd/systemd/commit/?id=1fab57c209035f7e66198343074e9cee06718bda
-		[[ -z ${REPLACING_VERSIONS} ]] && udev_reload
-	fi
-}


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-fs/udev/, sys-fs/udev/files/
@ 2021-08-03 11:27 David Seifert
  0 siblings, 0 replies; 13+ messages in thread
From: David Seifert @ 2021-08-03 11:27 UTC (permalink / raw
  To: gentoo-commits

commit:     eb6b84e59fabdec573a61ea845edc144541c6b75
Author:     David Seifert <soap <AT> gentoo <DOT> org>
AuthorDate: Tue Aug  3 11:27:33 2021 +0000
Commit:     David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Tue Aug  3 11:27:33 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=eb6b84e5

sys-fs/udev: enable musl

Closes: https://github.com/gentoo/gentoo/pull/21862
Signed-off-by: David Seifert <soap <AT> gentoo.org>

 sys-fs/udev/Manifest                          |  1 +
 sys-fs/udev/files/249-sys-include-posix.patch | 67 +++++++++++++++++++++++++++
 sys-fs/udev/udev-249-r2.ebuild                | 64 +++++++++++++++++++++++--
 3 files changed, 127 insertions(+), 5 deletions(-)

diff --git a/sys-fs/udev/Manifest b/sys-fs/udev/Manifest
index f3904e20d03..507013c24e8 100644
--- a/sys-fs/udev/Manifest
+++ b/sys-fs/udev/Manifest
@@ -1,2 +1,3 @@
 DIST systemd-248.tar.gz 10306883 BLAKE2B 3cb25d6101136a5f57e841d3f464f0d7649f6c1cb190b25e4dbf0a8f2be075d04a3cbe92e2fee5bb6a03b73bd8195d8c7b691661b39b7850547d512219cc40af SHA512 486f6ac6c2897a2aac97a59306091a03fd50768340407401e1f088ea5b21c67dae726bff4cbe53cec6b89a8f0ee72205b340165a4fe3a3c16cff6d176506c6e0
 DIST systemd-249.tar.gz 10588828 BLAKE2B f7896dea0bdec25125188b94ee84270b972649b1eb16599bed1967ced79f62dbfd1494e22362934f418823c054b342fb24dc57706b49520814beb95b6956bf27 SHA512 0810d09cc32e4aaa4425ee5b7ddf129262b061ce159cbd43571fabda48285243d8f80b566379ece9215d531b9407ee45e1e72c71935644fea31c7bca1bbf540c
+DIST systemd-musl-patches-249.1-r0.tar.xz 24276 BLAKE2B ba96bcfb04096d639d7ee028b219bb90648b6aa8aaefe804cd658d3fb8c4f9770b617dc9c5ddfb93e876b739ad927d037c881cbfb19d2db095fa897f3bb83d20 SHA512 9bd7ea515184e44bfa50c9f415200c62f931c657a49cd53a15ee9719991f3773c12ca7162dc12f61a7e67ed791405e879f9b5a13c9fa09fab464be269508f31f

diff --git a/sys-fs/udev/files/249-sys-include-posix.patch b/sys-fs/udev/files/249-sys-include-posix.patch
new file mode 100644
index 00000000000..6d9e0039b9c
--- /dev/null
+++ b/sys-fs/udev/files/249-sys-include-posix.patch
@@ -0,0 +1,67 @@
+Silence annoying #warning's on musl
+
+https://github.com/systemd/systemd/pull/20362
+https://github.com/systemd/systemd/pull/20364
+
+From f8d54f7810aeea5ff27a5db03e1aab7ea54c8268 Mon Sep 17 00:00:00 2001
+From: David Seifert <soap@gentoo.org>
+Date: Mon, 2 Aug 2021 12:41:38 +0200
+Subject: [PATCH] Use correct `<fcntl.h>` include
+
+* `<sys/fcntl.h>` is not specified in POSIX
+---
+ src/basic/fileio.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/basic/fileio.h b/src/basic/fileio.h
+index af797cfafdbf..4295b84a85c5 100644
+--- a/src/basic/fileio.h
++++ b/src/basic/fileio.h
+@@ -2,11 +2,11 @@
+ #pragma once
+ 
+ #include <dirent.h>
++#include <fcntl.h>
+ #include <stdbool.h>
+ #include <stddef.h>
+ #include <stdio.h>
+ #include <sys/stat.h>
+-#include <sys/fcntl.h>
+ #include <sys/types.h>
+ 
+ #include "macro.h"
+From 2b6c0bb2a341c95223ce672249e43c743b03d78c Mon Sep 17 00:00:00 2001
+From: David Seifert <soap@gentoo.org>
+Date: Mon, 2 Aug 2021 16:09:10 +0200
+Subject: [PATCH] Use correct `<poll.h>` include
+
+* `<sys/poll.h>` is not specified in POSIX
+---
+ src/shared/nscd-flush.c | 2 +-
+ src/shared/varlink.c    | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/shared/nscd-flush.c b/src/shared/nscd-flush.c
+index dfc47c423441..19e16d93455c 100644
+--- a/src/shared/nscd-flush.c
++++ b/src/shared/nscd-flush.c
+@@ -1,5 +1,5 @@
+ /* SPDX-License-Identifier: LGPL-2.1-or-later */
+-#include <sys/poll.h>
++#include <poll.h>
+ 
+ #include "fd-util.h"
+ #include "io-util.h"
+diff --git a/src/shared/varlink.c b/src/shared/varlink.c
+index 3a53c16a7242..4033947d3b8c 100644
+--- a/src/shared/varlink.c
++++ b/src/shared/varlink.c
+@@ -1,7 +1,7 @@
+ /* SPDX-License-Identifier: LGPL-2.1-or-later */
+ 
+ #include <malloc.h>
+-#include <sys/poll.h>
++#include <poll.h>
+ 
+ #include "alloc-util.h"
+ #include "errno-util.h"

diff --git a/sys-fs/udev/udev-249-r2.ebuild b/sys-fs/udev/udev-249-r2.ebuild
index ae3ddedfae4..e2c3e613c5e 100644
--- a/sys-fs/udev/udev-249-r2.ebuild
+++ b/sys-fs/udev/udev-249-r2.ebuild
@@ -2,9 +2,9 @@
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=7
-PYTHON_COMPAT=( python3_{7..9} )
+PYTHON_COMPAT=( python3_{8..9} )
 
-inherit bash-completion-r1 linux-info meson-multilib ninja-utils python-any-r1 toolchain-funcs udev usr-ldscript
+inherit bash-completion-r1 flag-o-matic linux-info meson-multilib ninja-utils python-any-r1 toolchain-funcs udev usr-ldscript
 
 if [[ ${PV} = 9999* ]] ; then
 	EGIT_REPO_URI="https://github.com/systemd/systemd.git"
@@ -22,14 +22,21 @@ else
 	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
 fi
 
+# musl patches taken from:
+# http://cgit.openembedded.org/openembedded-core/tree/meta/recipes-core/systemd/systemd
+SRC_URI+="
+	elibc_musl? (
+		https://dev.gentoo.org/~gyakovlev/distfiles/systemd-musl-patches-${PV}.1-r0.tar.xz
+		https://dev.gentoo.org/~soap/distfiles/systemd-musl-patches-${PV}.1-r0.tar.xz
+	)"
+
 DESCRIPTION="Linux dynamic and persistent device naming support (aka userspace devfs)"
 HOMEPAGE="https://www.freedesktop.org/wiki/Software/systemd"
 
 LICENSE="LGPL-2.1 MIT GPL-2"
 SLOT="0"
-IUSE="acl +kmod selinux static-libs"
-
-RESTRICT="test"
+IUSE="acl +kmod selinux static-libs test"
+RESTRICT="!test? ( test )"
 
 BDEPEND="
 	dev-util/gperf
@@ -42,6 +49,7 @@ BDEPEND="
 	dev-libs/libxslt
 	${PYTHON_DEPS}
 	$(python_gen_any_dep 'dev-python/jinja[${PYTHON_USEDEP}]')
+	test? ( app-text/tree )
 "
 COMMON_DEPEND="
 	>=sys-apps/util-linux-2.30[${MULTILIB_USEDEP}]
@@ -100,8 +108,11 @@ pkg_setup() {
 
 src_prepare() {
 	local PATCHES=(
+		# backport from 250 to silence musl warnings
+		"${FILESDIR}/249-sys-include-posix.patch"
 		"${FILESDIR}/249-libudev-static.patch"
 	)
+	use elibc_musl && PATCHES+=( "${WORKDIR}"/musl-patches )
 
 	default
 }
@@ -120,6 +131,7 @@ multilib_src_configure() {
 		# Prevent automagic deps
 		-Dgcrypt=false
 		-Dlibcryptsetup=false
+		-Didn=false
 		-Dlibidn=false
 		-Dlibidn2=false
 		-Dlibiptc=false
@@ -128,6 +140,12 @@ multilib_src_configure() {
 		-Dlz4=false
 		-Dxz=false
 	)
+	use elibc_musl && emesonargs+=(
+		-Dgshadow=false
+		-Dsmack=false
+		-Dutmp=false
+	)
+
 	meson_src_configure
 }
 
@@ -135,6 +153,9 @@ src_configure() {
 	# Prevent conflicts with i686 cross toolchain, bug 559726
 	tc-export AR CC NM OBJCOPY RANLIB
 	python_setup
+
+	use elibc_musl && append-cppflags -D__UAPI_DEF_ETHHDR=0
+
 	multilib-minimal_src_configure
 }
 
@@ -172,6 +193,39 @@ multilib_src_compile() {
 	eninja "${targets[@]}"
 }
 
+multilib_src_test() {
+	# The testsuite is *very* finicky. Don't try running it in
+	# containers or anything but a full VM or on bare metal.
+	# udev calls 'mknod' a number of times, and this interacts
+	# badly with kernel namespaces.
+
+	if has userpriv ${FEATURES}; then
+		ewarn "\'FEATURES=userpriv\' detected"
+		ewarn "udev tests need to run under uid 0"
+		ewarn "Skipping tests"
+	elif has usersandbox ${FEATURES}; then
+		ewarn "\'FEATURES=usersandbox\' detected"
+		ewarn "udev tests needs full access to /dev"
+		ewarn "Skipping tests"
+	elif has sandbox ${FEATURES}; then
+		ewarn "\'FEATURES=sandbox\' detected"
+		ewarn "udev tests needs full access to /dev"
+		ewarn "Skipping tests"
+	else
+		einfo Running tests
+
+		# two binaries required by udev-test.pl
+		eninja systemd-detect-virt test-udev
+		local -x PATH="${PWD}:${PATH}"
+
+		# prepare ${BUILD_DIR}/test/sys, required by udev-test.pl
+		"${EPYTHON}" "${S}"/test/sys-script.py test || die
+
+		# the perl script contains all the udev tests
+		"${S}"/test/udev-test.pl || die
+	fi
+}
+
 multilib_src_install() {
 	local libudev=$(readlink libudev.so.1)
 


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-fs/udev/, sys-fs/udev/files/
@ 2021-12-25  0:02 Mike Gilbert
  0 siblings, 0 replies; 13+ messages in thread
From: Mike Gilbert @ 2021-12-25  0:02 UTC (permalink / raw
  To: gentoo-commits

commit:     14ca519cc16eee5cb7b7c0eda524ac8d98fa36c3
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Fri Dec 24 19:59:34 2021 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Sat Dec 25 00:02:14 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=14ca519c

sys-fs/udev: drop 249-r3, 249.6

Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 sys-fs/udev/Manifest                               |   2 -
 sys-fs/udev/files/249-libudev-static.patch         |  26 --
 sys-fs/udev/files/249-sys-include-posix.patch      |  67 -----
 .../udev/files/249-udev-linux-headers-5-15.patch   |  22 --
 sys-fs/udev/udev-249-r3.ebuild                     | 300 --------------------
 sys-fs/udev/udev-249.6.ebuild                      | 303 ---------------------
 6 files changed, 720 deletions(-)

diff --git a/sys-fs/udev/Manifest b/sys-fs/udev/Manifest
index c58cfe1e2b1a..8ce148c0811d 100644
--- a/sys-fs/udev/Manifest
+++ b/sys-fs/udev/Manifest
@@ -1,4 +1,2 @@
-DIST systemd-249.tar.gz 10588828 BLAKE2B f7896dea0bdec25125188b94ee84270b972649b1eb16599bed1967ced79f62dbfd1494e22362934f418823c054b342fb24dc57706b49520814beb95b6956bf27 SHA512 0810d09cc32e4aaa4425ee5b7ddf129262b061ce159cbd43571fabda48285243d8f80b566379ece9215d531b9407ee45e1e72c71935644fea31c7bca1bbf540c
-DIST systemd-musl-patches-249.1-r1.tar.xz 24536 BLAKE2B 25135519112b2a1c638046addb6971ea1997fc7dd8626de90d162a4beb6383b5724df78a14c73be1283df58632fb4a0fcb32f90f50f1886f31a1aded15e9567c SHA512 4655f2a06e1b3310cb27b839360353dfbfdbdaa86f4392aeebf63f63efd441d1953f7ac108be7fed7ea721596d191988ed999e34443e47922afca92db779175a
 DIST systemd-musl-patches-249.5-r1.tar.xz 25148 BLAKE2B 6717291b5335997dcc327764beffc4ded50a5ac0e777bb3c540b5e355bee419c3d9b4a5605c239392d4c1b0e70792bc87282fa15dc9c09a0465b5608f2909006 SHA512 4bb7566437c280e75402fc435a3437aedad127f7b94c9bd54b94e9e1e7507409ad0898681f23e813b9b47414f58e4ca413b6d4e520bbbf578faec09054bf7f9b
 DIST systemd-stable-249.6.tar.gz 10599611 BLAKE2B 9c0cbaa4319f2ce9a78dbe820d1b6df5191e6c632e2eac9f71f9ff9817564d9b3fc177d2aec0c0daea8ac33bbdc2066ad68a8967cf8857f4af3668b9a3e7d3bf SHA512 7a7791dfe4923c00987b924adcb1cd08c4d17af2b17b4c6c6c701856c6810cfda61f06821c39787339fc05293853c0ea61b9973fcf4495c7bf4f8054ecfae66f

diff --git a/sys-fs/udev/files/249-libudev-static.patch b/sys-fs/udev/files/249-libudev-static.patch
deleted file mode 100644
index 73375b716e9b..000000000000
--- a/sys-fs/udev/files/249-libudev-static.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From f2c57d4f3805775e0ffdc80ce578eaa737017d31 Mon Sep 17 00:00:00 2001
-From: Mike Gilbert <floppym@gentoo.org>
-Date: Fri, 9 Jul 2021 13:05:23 -0400
-Subject: [PATCH] libudev: add "Libs.private: -lrt -pthread" to libudev.pc
-
-This resolves a failure when linking cryptsetup.static against libudev.a.
-
-```
-libtool: link: x86_64-pc-linux-gnu-gcc -Wall -O2 -pipe -march=amdfam10 -static -O2 -o cryptsetup.static lib/utils_crypt.o lib/utils_loop.o lib/utils_io.o lib/utils_blkid.o src/utils_tools.o src/utils_password.o src/utils_luks2.o src/utils_blockdev.o src/cryptsetup.o -pthread -pthread  -Wl,--as-needed ./.libs/libcryptsetup.a -largon2 -lrt -ljson-c -lpopt -luuid -lblkid -lssl -lcrypto -lz -ldl -ldevmapper -lm -lpthread -ludev -pthread
-/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib64/libudev.a(src_libsystemd_sd-daemon_sd-daemon.c.o): in function `sd_is_mq':
-(.text.sd_is_mq+0x3a): undefined reference to `mq_getattr'
-```
----
- src/libudev/libudev.pc.in | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/libudev/libudev.pc.in b/src/libudev/libudev.pc.in
-index 89028aaa6bf2..1d6487fa4084 100644
---- a/src/libudev/libudev.pc.in
-+++ b/src/libudev/libudev.pc.in
-@@ -16,4 +16,5 @@ Name: libudev
- Description: Library to access udev device information
- Version: {{PROJECT_VERSION}}
- Libs: -L${libdir} -ludev
-+Libs.private: -lrt -pthread
- Cflags: -I${includedir}

diff --git a/sys-fs/udev/files/249-sys-include-posix.patch b/sys-fs/udev/files/249-sys-include-posix.patch
deleted file mode 100644
index 6d9e0039b9c9..000000000000
--- a/sys-fs/udev/files/249-sys-include-posix.patch
+++ /dev/null
@@ -1,67 +0,0 @@
-Silence annoying #warning's on musl
-
-https://github.com/systemd/systemd/pull/20362
-https://github.com/systemd/systemd/pull/20364
-
-From f8d54f7810aeea5ff27a5db03e1aab7ea54c8268 Mon Sep 17 00:00:00 2001
-From: David Seifert <soap@gentoo.org>
-Date: Mon, 2 Aug 2021 12:41:38 +0200
-Subject: [PATCH] Use correct `<fcntl.h>` include
-
-* `<sys/fcntl.h>` is not specified in POSIX
----
- src/basic/fileio.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/basic/fileio.h b/src/basic/fileio.h
-index af797cfafdbf..4295b84a85c5 100644
---- a/src/basic/fileio.h
-+++ b/src/basic/fileio.h
-@@ -2,11 +2,11 @@
- #pragma once
- 
- #include <dirent.h>
-+#include <fcntl.h>
- #include <stdbool.h>
- #include <stddef.h>
- #include <stdio.h>
- #include <sys/stat.h>
--#include <sys/fcntl.h>
- #include <sys/types.h>
- 
- #include "macro.h"
-From 2b6c0bb2a341c95223ce672249e43c743b03d78c Mon Sep 17 00:00:00 2001
-From: David Seifert <soap@gentoo.org>
-Date: Mon, 2 Aug 2021 16:09:10 +0200
-Subject: [PATCH] Use correct `<poll.h>` include
-
-* `<sys/poll.h>` is not specified in POSIX
----
- src/shared/nscd-flush.c | 2 +-
- src/shared/varlink.c    | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/shared/nscd-flush.c b/src/shared/nscd-flush.c
-index dfc47c423441..19e16d93455c 100644
---- a/src/shared/nscd-flush.c
-+++ b/src/shared/nscd-flush.c
-@@ -1,5 +1,5 @@
- /* SPDX-License-Identifier: LGPL-2.1-or-later */
--#include <sys/poll.h>
-+#include <poll.h>
- 
- #include "fd-util.h"
- #include "io-util.h"
-diff --git a/src/shared/varlink.c b/src/shared/varlink.c
-index 3a53c16a7242..4033947d3b8c 100644
---- a/src/shared/varlink.c
-+++ b/src/shared/varlink.c
-@@ -1,7 +1,7 @@
- /* SPDX-License-Identifier: LGPL-2.1-or-later */
- 
- #include <malloc.h>
--#include <sys/poll.h>
-+#include <poll.h>
- 
- #include "alloc-util.h"
- #include "errno-util.h"

diff --git a/sys-fs/udev/files/249-udev-linux-headers-5-15.patch b/sys-fs/udev/files/249-udev-linux-headers-5-15.patch
deleted file mode 100644
index 844099b72819..000000000000
--- a/sys-fs/udev/files/249-udev-linux-headers-5-15.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-https://github.com/systemd/systemd-stable/pull/132/commits/92bbfcdc733d39ec4097d8678bc92a7aaaf78ae1.patch
-https://bugs.gentoo.org/821550
-
-From: Chris Packham <chris.packham@alliedtelesis.co.nz>
-Date: Fri, 10 Sep 2021 09:51:36 +1200
-Subject: [PATCH 1/2] basic/linux: Sync if_arp.h with Linux 5.14
-
-ARPHRD_MCTP was added in 5.14. Sync if_arp.h to pick up the definition
-
-Fixes #20694
-
-(cherry picked from commit 7c5b9952c4f6e2b72f90edbe439982528b7cf223)
---- a/src/basic/linux/if_arp.h
-+++ b/src/basic/linux/if_arp.h
-@@ -54,6 +54,7 @@
- #define ARPHRD_X25	271		/* CCITT X.25			*/
- #define ARPHRD_HWX25	272		/* Boards with X.25 in firmware	*/
- #define ARPHRD_CAN	280		/* Controller Area Network      */
-+#define ARPHRD_MCTP	290
- #define ARPHRD_PPP	512
- #define ARPHRD_CISCO	513		/* Cisco HDLC	 		*/
- #define ARPHRD_HDLC	ARPHRD_CISCO

diff --git a/sys-fs/udev/udev-249-r3.ebuild b/sys-fs/udev/udev-249-r3.ebuild
deleted file mode 100644
index 84fa631f0f66..000000000000
--- a/sys-fs/udev/udev-249-r3.ebuild
+++ /dev/null
@@ -1,300 +0,0 @@
-# Copyright 2003-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{8..10} )
-
-inherit bash-completion-r1 flag-o-matic linux-info meson-multilib ninja-utils python-any-r1 toolchain-funcs udev usr-ldscript
-
-if [[ ${PV} = 9999* ]] ; then
-	EGIT_REPO_URI="https://github.com/systemd/systemd.git"
-	inherit git-r3
-else
-	if [[ ${PV} == *.* ]] ; then
-		MY_PN=systemd-stable
-	else
-		MY_PN=systemd
-	fi
-
-	MY_PV="${PV/_/-}"
-	MY_P="${MY_PN}-${MY_PV}"
-	S="${WORKDIR}/${MY_P}"
-	SRC_URI="https://github.com/systemd/${MY_PN}/archive/v${MY_PV}/${MY_P}.tar.gz"
-
-	# musl patches taken from:
-	# http://cgit.openembedded.org/openembedded-core/tree/meta/recipes-core/systemd/systemd
-	SRC_URI+="
-	elibc_musl? (
-		https://dev.gentoo.org/~gyakovlev/distfiles/systemd-musl-patches-${PV}.1-r1.tar.xz
-		https://dev.gentoo.org/~soap/distfiles/systemd-musl-patches-${PV}.1-r1.tar.xz
-	)"
-
-	KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86"
-fi
-
-DESCRIPTION="Linux dynamic and persistent device naming support (aka userspace devfs)"
-HOMEPAGE="https://www.freedesktop.org/wiki/Software/systemd"
-
-LICENSE="LGPL-2.1 MIT GPL-2"
-SLOT="0"
-IUSE="acl +kmod selinux test"
-RESTRICT="!test? ( test )"
-
-BDEPEND="
-	dev-util/gperf
-	sys-devel/gettext
-	>=sys-apps/coreutils-8.16
-	virtual/pkgconfig
-	app-text/docbook-xml-dtd:4.2
-	app-text/docbook-xml-dtd:4.5
-	app-text/docbook-xsl-stylesheets
-	dev-libs/libxslt
-	${PYTHON_DEPS}
-	$(python_gen_any_dep 'dev-python/jinja[${PYTHON_USEDEP}]')
-	test? (
-		app-text/tree
-		dev-lang/perl
-	)
-"
-COMMON_DEPEND="
-	>=sys-apps/util-linux-2.30[${MULTILIB_USEDEP}]
-	sys-libs/libcap:0=[${MULTILIB_USEDEP}]
-	virtual/libcrypt:=[${MULTILIB_USEDEP}]
-	acl? ( sys-apps/acl )
-	kmod? ( >=sys-apps/kmod-15 )
-	selinux? ( >=sys-libs/libselinux-2.1.9 )
-"
-DEPEND="${COMMON_DEPEND}
-	>=sys-kernel/linux-headers-3.9
-"
-RDEPEND="${COMMON_DEPEND}
-	acct-group/kmem
-	acct-group/tty
-	acct-group/audio
-	acct-group/cdrom
-	acct-group/dialout
-	acct-group/disk
-	acct-group/input
-	acct-group/kvm
-	acct-group/lp
-	acct-group/render
-	acct-group/tape
-	acct-group/video
-	!sys-apps/gentoo-systemd-integration
-	!sys-apps/systemd
-"
-PDEPEND=">=sys-apps/hwids-20140304[udev]
-	>=sys-fs/udev-init-scripts-34"
-
-python_check_deps() {
-	has_version -b "dev-python/jinja[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
-	if [[ ${MERGE_TYPE} != buildonly ]] ; then
-		CONFIG_CHECK="~BLK_DEV_BSG ~DEVTMPFS ~!IDE ~INOTIFY_USER ~!SYSFS_DEPRECATED ~!SYSFS_DEPRECATED_V2 ~SIGNALFD ~EPOLL ~FHANDLE ~NET ~!FW_LOADER_USER_HELPER ~UNIX"
-		linux-info_pkg_setup
-
-		# CONFIG_FHANDLE was introduced by 2.6.39
-		local MINKV=2.6.39
-
-		if kernel_is -lt ${MINKV//./ } ; then
-			eerror "Your running kernel is too old to run this version of ${P}"
-			eerror "You need to upgrade kernel at least to ${MINKV}"
-		fi
-
-		if kernel_is -lt 3 7 ; then
-			ewarn "Your running kernel is too old to have firmware loader and"
-			ewarn "this version of ${P} doesn't have userspace firmware loader"
-			ewarn "If you need firmware support, you need to upgrade kernel at least to 3.7"
-		fi
-	fi
-}
-
-src_prepare() {
-	local PATCHES=(
-		# backport from 250 to silence musl warnings
-		"${FILESDIR}/249-sys-include-posix.patch"
-		"${FILESDIR}/249-libudev-static.patch"
-		"${FILESDIR}/249-udev-linux-headers-5-15.patch"
-	)
-	use elibc_musl && PATCHES+=( "${WORKDIR}"/musl-patches )
-
-	default
-}
-
-multilib_src_configure() {
-	local emesonargs=(
-		$(meson_native_use_bool acl)
-		-Defi=false
-		$(meson_native_use_bool kmod)
-		$(meson_native_use_bool selinux)
-		-Dlink-udev-shared=false
-		-Dsplit-usr=true
-		-Drootlibdir="${EPREFIX}/usr/$(get_libdir)"
-
-		# Prevent automagic deps
-		-Dgcrypt=false
-		-Dlibcryptsetup=false
-		-Didn=false
-		-Dlibidn=false
-		-Dlibidn2=false
-		-Dlibiptc=false
-		-Dp11kit=false
-		-Dseccomp=false
-		-Dlz4=false
-		-Dxz=false
-	)
-	use elibc_musl && emesonargs+=(
-		-Dgshadow=false
-		-Dsmack=false
-		-Dutmp=false
-	)
-
-	meson_src_configure
-}
-
-src_configure() {
-	# Prevent conflicts with i686 cross toolchain, bug 559726
-	tc-export AR CC NM OBJCOPY RANLIB
-	python_setup
-
-	use elibc_musl && append-cppflags -D__UAPI_DEF_ETHHDR=0
-
-	multilib-minimal_src_configure
-}
-
-multilib_src_compile() {
-	# meson creates this link
-	local libudev=$(readlink libudev.so.1)
-
-	local targets=(
-		${libudev}
-		src/libudev/libudev.pc
-	)
-	if multilib_is_native_abi; then
-		targets+=(
-			udevadm
-			src/udev/ata_id
-			src/udev/cdrom_id
-			src/udev/fido_id
-			src/udev/mtd_probe
-			src/udev/scsi_id
-			src/udev/udev.pc
-			src/udev/v4l_id
-			man/udev.conf.5
-			man/systemd.link.5
-			man/hwdb.7
-			man/udev.7
-			man/systemd-udevd.service.8
-			man/udevadm.8
-			rules.d/50-udev-default.rules
-			rules.d/64-btrfs.rules
-		)
-	fi
-	eninja "${targets[@]}"
-}
-
-src_test() {
-	# The testsuite is *very* finicky. Don't try running it in
-	# containers or anything but a full VM or on bare metal.
-	# udev calls 'mknod' a number of times, and this interacts
-	# badly with kernel namespaces.
-
-	if [[ ! -w /dev ]]; then
-		ewarn "udev tests needs full access to /dev"
-		ewarn "Skipping tests"
-	else
-		meson-multilib_src_test
-	fi
-}
-
-multilib_src_test() {
-	# two binaries required by udev-test.pl
-	eninja systemd-detect-virt test-udev
-	local -x PATH="${PWD}:${PATH}"
-
-	# prepare ${BUILD_DIR}/test/sys, required by udev-test.pl
-	"${EPYTHON}" "${S}"/test/sys-script.py test || die
-
-	# the perl script contains all the udev tests
-	"${S}"/test/udev-test.pl || die
-}
-
-multilib_src_install() {
-	local libudev=$(readlink libudev.so.1)
-
-	dolib.so {${libudev},libudev.so.1,libudev.so}
-	gen_usr_ldscript -a udev
-
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins src/libudev/libudev.pc
-
-	if multilib_is_native_abi ; then
-		into /
-		dobin udevadm
-
-		dosym ../../bin/udevadm /lib/systemd/systemd-udevd
-
-		exeinto /lib/udev
-		doexe src/udev/{ata_id,cdrom_id,fido_id,mtd_probe,scsi_id,v4l_id}
-
-		# Install generated rules (${BUILD_DIR}/rules.d/*.rules)
-		insinto /lib/udev/rules.d
-		doins rules.d/*.rules
-
-		insinto /usr/share/pkgconfig
-		doins src/udev/udev.pc
-
-		mv man/systemd-udevd.service.8 man/systemd-udevd.8 || die
-		rm man/systemd-udevd-{control,kernel}.socket.8 || die
-		doman man/*.[0-9]
-	fi
-}
-
-multilib_src_install_all() {
-	doheader src/libudev/libudev.h
-
-	insinto /etc/udev
-	doins src/udev/udev.conf
-	keepdir /etc/udev/{hwdb.d,rules.d}
-
-	insinto /lib/systemd/network
-	doins network/99-default.link
-
-	# Install static rules (${S}/rules.d/*.rules)
-	insinto /lib/udev/rules.d
-	doins rules.d/*.rules
-	doins "${FILESDIR}"/40-gentoo.rules
-
-	dobashcomp shell-completion/bash/udevadm
-
-	insinto /usr/share/zsh/site-functions
-	doins shell-completion/zsh/_udevadm
-
-	einstalldocs
-}
-
-pkg_preinst() {
-	has_version 'sys-fs/eudev' && HAD_EUDEV=1
-}
-
-pkg_postinst() {
-	# Update hwdb database in case the format is changed by udev version.
-	if has_version 'sys-apps/hwids[udev]' ; then
-		udevadm hwdb --update --root="${ROOT}"
-		# Only reload when we are not upgrading to avoid potential race w/ incompatible hwdb.bin and the running udevd
-		# https://cgit.freedesktop.org/systemd/systemd/commit/?id=1fab57c209035f7e66198343074e9cee06718bda
-		[[ -z ${REPLACING_VERSIONS} ]] && udev_reload
-	fi
-
-	if [[ ${HAD_EUDEV} -eq 1 ]] ; then
-		ewarn
-		ewarn "${P} defaults to predictable interface renaming, as described in the URL below:"
-		ewarn "https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames"
-		ewarn
-		ewarn "If you wish to disable this, please see the above documentation, or set"
-		ewarn "net.ifnames=0 on the kernel command line."
-		ewarn "See also: https://wiki.gentoo.org/wiki/Udev#Optional:_Disable_or_override_predictable_network_interface_naming"
-	fi
-}

diff --git a/sys-fs/udev/udev-249.6.ebuild b/sys-fs/udev/udev-249.6.ebuild
deleted file mode 100644
index 513cbfac6257..000000000000
--- a/sys-fs/udev/udev-249.6.ebuild
+++ /dev/null
@@ -1,303 +0,0 @@
-# Copyright 2003-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{8..10} )
-
-inherit bash-completion-r1 flag-o-matic linux-info meson-multilib ninja-utils python-any-r1 toolchain-funcs udev usr-ldscript
-
-if [[ ${PV} = 9999* ]] ; then
-	EGIT_REPO_URI="https://github.com/systemd/systemd.git"
-	inherit git-r3
-else
-	if [[ ${PV} == *.* ]] ; then
-		MY_PN=systemd-stable
-	else
-		MY_PN=systemd
-	fi
-
-	MY_PV="${PV/_/-}"
-	MY_P="${MY_PN}-${MY_PV}"
-	S="${WORKDIR}/${MY_P}"
-	SRC_URI="https://github.com/systemd/${MY_PN}/archive/v${MY_PV}/${MY_P}.tar.gz"
-
-	# musl patches taken from:
-	# http://cgit.openembedded.org/openembedded-core/tree/meta/recipes-core/systemd/systemd
-	MUSL_PATCHSET="249.5-r1"
-	SRC_URI+="
-	elibc_musl? (
-		https://dev.gentoo.org/~gyakovlev/distfiles/systemd-musl-patches-${MUSL_PATCHSET}.tar.xz
-		https://dev.gentoo.org/~soap/distfiles/systemd-musl-patches-${MUSL_PATCHSET}.tar.xz
-	)"
-
-	KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-fi
-
-DESCRIPTION="Linux dynamic and persistent device naming support (aka userspace devfs)"
-HOMEPAGE="https://www.freedesktop.org/wiki/Software/systemd"
-
-LICENSE="LGPL-2.1 MIT GPL-2"
-SLOT="0"
-IUSE="acl +kmod selinux test"
-RESTRICT="!test? ( test )"
-
-BDEPEND="
-	dev-util/gperf
-	sys-devel/gettext
-	>=sys-apps/coreutils-8.16
-	virtual/pkgconfig
-	app-text/docbook-xml-dtd:4.2
-	app-text/docbook-xml-dtd:4.5
-	app-text/docbook-xsl-stylesheets
-	dev-libs/libxslt
-	${PYTHON_DEPS}
-	$(python_gen_any_dep 'dev-python/jinja[${PYTHON_USEDEP}]')
-	test? (
-		app-text/tree
-		dev-lang/perl
-	)
-"
-COMMON_DEPEND="
-	>=sys-apps/util-linux-2.30[${MULTILIB_USEDEP}]
-	sys-libs/libcap:0=[${MULTILIB_USEDEP}]
-	virtual/libcrypt:=[${MULTILIB_USEDEP}]
-	acl? ( sys-apps/acl )
-	kmod? ( >=sys-apps/kmod-15 )
-	selinux? ( >=sys-libs/libselinux-2.1.9 )
-"
-DEPEND="${COMMON_DEPEND}
-	>=sys-kernel/linux-headers-3.9
-"
-RDEPEND="${COMMON_DEPEND}
-	acct-group/kmem
-	acct-group/tty
-	acct-group/audio
-	acct-group/cdrom
-	acct-group/dialout
-	acct-group/disk
-	acct-group/input
-	acct-group/kvm
-	acct-group/lp
-	acct-group/render
-	acct-group/tape
-	acct-group/video
-	!sys-apps/gentoo-systemd-integration
-	!sys-apps/systemd
-"
-PDEPEND=">=sys-apps/hwids-20140304[udev]
-	>=sys-fs/udev-init-scripts-34"
-
-python_check_deps() {
-	has_version -b "dev-python/jinja[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
-	if [[ ${MERGE_TYPE} != buildonly ]] ; then
-		CONFIG_CHECK="~BLK_DEV_BSG ~DEVTMPFS ~!IDE ~INOTIFY_USER ~!SYSFS_DEPRECATED ~!SYSFS_DEPRECATED_V2 ~SIGNALFD ~EPOLL ~FHANDLE ~NET ~!FW_LOADER_USER_HELPER ~UNIX"
-		linux-info_pkg_setup
-
-		# CONFIG_FHANDLE was introduced by 2.6.39
-		local MINKV=2.6.39
-
-		if kernel_is -lt ${MINKV//./ } ; then
-			eerror "Your running kernel is too old to run this version of ${P}"
-			eerror "You need to upgrade kernel at least to ${MINKV}"
-		fi
-
-		if kernel_is -lt 3 7 ; then
-			ewarn "Your running kernel is too old to have firmware loader and"
-			ewarn "this version of ${P} doesn't have userspace firmware loader"
-			ewarn "If you need firmware support, you need to upgrade kernel at least to 3.7"
-		fi
-	fi
-}
-
-src_prepare() {
-	local PATCHES=(
-	)
-	use elibc_musl && PATCHES+=( "${WORKDIR}"/musl-patches )
-
-	default
-}
-
-multilib_src_configure() {
-	local emesonargs=(
-		$(meson_native_use_bool acl)
-		-Defi=false
-		$(meson_native_use_bool kmod)
-		$(meson_native_use_bool selinux)
-		-Dlink-udev-shared=false
-		-Dsplit-usr=true
-		-Drootlibdir="${EPREFIX}/usr/$(get_libdir)"
-
-		# Prevent automagic deps
-		-Dgcrypt=false
-		-Dlibcryptsetup=false
-		-Didn=false
-		-Dlibidn=false
-		-Dlibidn2=false
-		-Dlibiptc=false
-		-Dp11kit=false
-		-Dseccomp=false
-		-Dlz4=false
-		-Dxz=false
-	)
-	use elibc_musl && emesonargs+=(
-		-Dgshadow=false
-		-Dsmack=false
-		-Dutmp=false
-	)
-
-	meson_src_configure
-}
-
-src_configure() {
-	# Prevent conflicts with i686 cross toolchain, bug 559726
-	tc-export AR CC NM OBJCOPY RANLIB
-	python_setup
-
-	use elibc_musl && append-cppflags -D__UAPI_DEF_ETHHDR=0
-
-	multilib-minimal_src_configure
-}
-
-multilib_src_compile() {
-	# meson creates this link
-	local libudev=$(readlink libudev.so.1)
-
-	local targets=(
-		${libudev}
-		src/libudev/libudev.pc
-	)
-	if multilib_is_native_abi; then
-		targets+=(
-			udevadm
-			src/udev/ata_id
-			src/udev/cdrom_id
-			src/udev/fido_id
-			src/udev/mtd_probe
-			src/udev/scsi_id
-			src/udev/udev.pc
-			src/udev/v4l_id
-			man/udev.conf.5
-			man/systemd.link.5
-			man/hwdb.7
-			man/udev.7
-			man/systemd-udevd.service.8
-			man/udevadm.8
-			rules.d/50-udev-default.rules
-			rules.d/64-btrfs.rules
-		)
-	fi
-	eninja "${targets[@]}"
-}
-
-src_test() {
-	# The testsuite is *very* finicky. Don't try running it in
-	# containers or anything but a full VM or on bare metal.
-	# udev calls 'mknod' a number of times, and this interacts
-	# badly with kernel namespaces.
-
-	if [[ ! -w /dev ]]; then
-		ewarn "udev tests needs full access to /dev"
-		ewarn "Skipping tests"
-	else
-		meson-multilib_src_test
-	fi
-}
-
-multilib_src_test() {
-	# two binaries required by udev-test.pl
-	eninja systemd-detect-virt test-udev
-	local -x PATH="${PWD}:${PATH}"
-
-	# prepare ${BUILD_DIR}/test/sys, required by udev-test.pl
-	"${EPYTHON}" "${S}"/test/sys-script.py test || die
-
-	# the perl script contains all the udev tests
-	"${S}"/test/udev-test.pl || die
-}
-
-multilib_src_install() {
-	local libudev=$(readlink libudev.so.1)
-
-	dolib.so {${libudev},libudev.so.1,libudev.so}
-	gen_usr_ldscript -a udev
-
-	insinto "/usr/$(get_libdir)/pkgconfig"
-	doins src/libudev/libudev.pc
-
-	if multilib_is_native_abi ; then
-		into /
-		dobin udevadm
-
-		dosym ../../bin/udevadm /lib/systemd/systemd-udevd
-
-		exeinto /lib/udev
-		doexe src/udev/{ata_id,cdrom_id,fido_id,mtd_probe,scsi_id,v4l_id}
-
-		# Install generated rules (${BUILD_DIR}/rules.d/*.rules)
-		insinto /lib/udev/rules.d
-		doins rules.d/*.rules
-
-		insinto /usr/share/pkgconfig
-		doins src/udev/udev.pc
-
-		mv man/systemd-udevd.service.8 man/systemd-udevd.8 || die
-		rm man/systemd-udevd-{control,kernel}.socket.8 || die
-		doman man/*.[0-9]
-	fi
-}
-
-multilib_src_install_all() {
-	doheader src/libudev/libudev.h
-
-	insinto /etc/udev
-	doins src/udev/udev.conf
-	keepdir /etc/udev/{hwdb.d,rules.d}
-
-	insinto /lib/systemd/network
-	doins network/99-default.link
-
-	# Install static rules (${S}/rules.d/*.rules)
-	insinto /lib/udev/rules.d
-	doins rules.d/*.rules
-	doins "${FILESDIR}"/40-gentoo.rules
-
-	dobashcomp shell-completion/bash/udevadm
-
-	insinto /usr/share/zsh/site-functions
-	doins shell-completion/zsh/_udevadm
-
-	einstalldocs
-}
-
-pkg_preinst() {
-	has_version 'sys-fs/eudev' && HAD_EUDEV=1
-}
-
-pkg_postinst() {
-	# Update hwdb database in case the format is changed by udev version.
-	if has_version 'sys-apps/hwids[udev]' ; then
-		udevadm hwdb --update --root="${ROOT}"
-		# Only reload when we are not upgrading to avoid potential race w/ incompatible hwdb.bin and the running udevd
-		# https://cgit.freedesktop.org/systemd/systemd/commit/?id=1fab57c209035f7e66198343074e9cee06718bda
-		[[ -z ${REPLACING_VERSIONS} ]] && udev_reload
-	fi
-
-	if [[ ${HAD_EUDEV} -eq 1 ]] ; then
-		ewarn
-		ewarn "${P} defaults to predictable interface renaming, as described in the URL below:"
-		ewarn "https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames"
-		ewarn
-		ewarn "If you wish to disable this, please see the above documentation, or set"
-		ewarn "net.ifnames=0 on the kernel command line."
-		ewarn "See also: https://wiki.gentoo.org/wiki/Udev#Optional:_Disable_or_override_predictable_network_interface_naming"
-		if [[ -e ${EROOT}/etc/udev/rules.d/80-net-name-slot.rules ]]; then
-			ewarn
-			ewarn "Detected '${EROOT}/etc/udev/rules.d/80-net-name-slot.rules'"
-			ewarn "Renaming to '${EROOT}/etc/udev/rules.d/80-net-setup-link.rules'"
-			mv "${EROOT}"/etc/udev/rules.d/80-net-{name-slot,setup-link}.rules
-		fi
-	fi
-}


^ permalink raw reply related	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2021-12-25  0:02 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-08-03 11:27 [gentoo-commits] repo/gentoo:master commit in: sys-fs/udev/, sys-fs/udev/files/ David Seifert
  -- strict thread matches above, loose matches on Subject: below --
2021-12-25  0:02 Mike Gilbert
2021-01-06 15:47 Mike Gilbert
2019-10-11  4:38 William Hubbs
2019-07-30 14:46 Mike Gilbert
2018-01-10 18:32 Mike Gilbert
2017-12-16 17:54 William Hubbs
2017-08-13 23:08 Mike Gilbert
2017-07-02 16:11 Mike Gilbert
2017-01-16 16:37 Mike Gilbert
2016-11-05 14:13 Lars Wendler
2016-04-20  3:17 Mike Frysinger
2016-03-09 16:45 William Hubbs

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox