From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <gentoo-commits+bounces-1063668-garchives=archives.gentoo.org@lists.gentoo.org>
Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80])
	(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
	(No client certificate requested)
	by finch.gentoo.org (Postfix) with ESMTPS id A0296138334
	for <garchives@archives.gentoo.org>; Tue, 25 Dec 2018 21:08:29 +0000 (UTC)
Received: from pigeon.gentoo.org (localhost [127.0.0.1])
	by pigeon.gentoo.org (Postfix) with SMTP id 72F42E09B1;
	Tue, 25 Dec 2018 21:08:28 +0000 (UTC)
Received: from smtp.gentoo.org (dev.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4])
	(using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
	(No client certificate requested)
	by pigeon.gentoo.org (Postfix) with ESMTPS id 32A91E09B1
	for <gentoo-commits@lists.gentoo.org>; Tue, 25 Dec 2018 21:08:28 +0000 (UTC)
Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52])
	(using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
	(No client certificate requested)
	by smtp.gentoo.org (Postfix) with ESMTPS id 61FB8335C36
	for <gentoo-commits@lists.gentoo.org>; Tue, 25 Dec 2018 21:08:26 +0000 (UTC)
Received: from localhost.localdomain (localhost [IPv6:::1])
	by oystercatcher.gentoo.org (Postfix) with ESMTP id EC3972A7
	for <gentoo-commits@lists.gentoo.org>; Tue, 25 Dec 2018 21:08:24 +0000 (UTC)
From: "William Hubbs" <williamh@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Content-Transfer-Encoding: 8bit
Content-type: text/plain; charset=UTF-8
Reply-To: gentoo-dev@lists.gentoo.org, "William Hubbs" <williamh@gentoo.org>
Message-ID: <1545771977.1facffeb816a3015a865c85cd84a0609bf92c1d8.williamh@gentoo>
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-fs/udev/
X-VCS-Repository: repo/gentoo
X-VCS-Files: sys-fs/udev/Manifest sys-fs/udev/udev-240.ebuild
X-VCS-Directories: sys-fs/udev/
X-VCS-Committer: williamh
X-VCS-Committer-Name: William Hubbs
X-VCS-Revision: 1facffeb816a3015a865c85cd84a0609bf92c1d8
X-VCS-Branch: master
Date: Tue, 25 Dec 2018 21:08:24 +0000 (UTC)
Precedence: bulk
List-Post: <mailto:gentoo-commits@lists.gentoo.org>
List-Help: <mailto:gentoo-commits+help@lists.gentoo.org>
List-Unsubscribe: <mailto:gentoo-commits+unsubscribe@lists.gentoo.org>
List-Subscribe: <mailto:gentoo-commits+subscribe@lists.gentoo.org>
List-Id: Gentoo Linux mail <gentoo-commits.gentoo.org>
X-BeenThere: gentoo-commits@lists.gentoo.org
X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply
X-Archives-Salt: 8492dd73-2f48-4d75-8c62-4ac31bb7e5c9
X-Archives-Hash: b7caf06f6f894f514b9d939464bd104b

commit:     1facffeb816a3015a865c85cd84a0609bf92c1d8
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Tue Dec 25 21:01:35 2018 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Tue Dec 25 21:06:17 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1facffeb

sys-fs/udev: 240 version bump

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

 sys-fs/udev/Manifest        |   1 +
 sys-fs/udev/udev-240.ebuild | 322 ++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 323 insertions(+)

diff --git a/sys-fs/udev/Manifest b/sys-fs/udev/Manifest
index 8892a91fea5..abc16edd81a 100644
--- a/sys-fs/udev/Manifest
+++ b/sys-fs/udev/Manifest
@@ -1,3 +1,4 @@
 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.tar.gz 7582001 BLAKE2B cf53595a83424984dd9f533f7cd0c9905366c5a52ab946fc45ff7fd1bcc85978ff654720113641534e40c0f9a1ad1c9628255778616770762950426789f659c3 SHA512 da7467781b16f65d868931ae88fd07554db61542aec7f11dbec9f7279b529f900301edfea2d3813ddb64eeb3fdcfb7be86e540c65212dd7cfdcdebbc80de2ff5

diff --git a/sys-fs/udev/udev-240.ebuild b/sys-fs/udev/udev-240.ebuild
new file mode 100644
index 00000000000..7934423439b
--- /dev/null
+++ b/sys-fs/udev/udev-240.ebuild
@@ -0,0 +1,322 @@
+# Copyright 1999-2018 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"
+	)
+
+	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
+}