From d162ba1860a88062f4cd61f8b52fc303ba0b2991 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 7 Aug 2021 00:16:33 +0100 Subject: gentoo resync : 07.08.2021 --- sys-fs/udev/Manifest | 8 +- sys-fs/udev/files/249-sys-include-posix.patch | 67 ++++++ sys-fs/udev/udev-248-r1.ebuild | 228 ++++++++++++++++++++ sys-fs/udev/udev-248.ebuild | 228 -------------------- sys-fs/udev/udev-249-r1.ebuild | 238 --------------------- sys-fs/udev/udev-249-r2.ebuild | 290 ++++++++++++++++++++++++++ sys-fs/udev/udev-9999.ebuild | 2 +- 7 files changed, 591 insertions(+), 470 deletions(-) create mode 100644 sys-fs/udev/files/249-sys-include-posix.patch create mode 100644 sys-fs/udev/udev-248-r1.ebuild delete mode 100644 sys-fs/udev/udev-248.ebuild delete mode 100644 sys-fs/udev/udev-249-r1.ebuild create mode 100644 sys-fs/udev/udev-249-r2.ebuild (limited to 'sys-fs/udev') diff --git a/sys-fs/udev/Manifest b/sys-fs/udev/Manifest index 319b0f2a6d56..c6a796dd507e 100644 --- a/sys-fs/udev/Manifest +++ b/sys-fs/udev/Manifest @@ -1,8 +1,10 @@ AUX 249-libudev-static.patch 1454 BLAKE2B 420f9452066ccf951033c1ae1e215284fa9d11f24777c68ecd0178db5c7571ee881451300d409468c1ba3f3b2ad4b35adca5b2761309c84b315bbabd45f6b97f SHA512 4d616b4b02981c4622951a46f23519e03c2d1228453837d31fe060db70afa24722883ca57c08c55cd9fd35c720a5ef2ecb11ab3313867e1b3cfc3682e45e3f45 +AUX 249-sys-include-posix.patch 1831 BLAKE2B eaea99f57a189d77789c9b61ed7962f108f1ed733e3ab8d76fb8dd4849faf8f05338f3addaaad97ba2f8796200de0f5079d3838d995ba2519b7d4ea2a568d0d5 SHA512 3d98055f2beb22fe5607125585929fc531b790f489779dcd162541b5461a9da15d76e7a713f6476a3278073e6fd2488bc0af19eca952f6534d90aadb81ef644f AUX 40-gentoo.rules 167 BLAKE2B 07116c6e5aab7de9fa8a88c6cdd9ad76a09d797d6f7bc3d0535c93ccf83486bbdae8f68d682714576b072a174df070505cce9c6f4b729e91a6f61ed89da72e8e SHA512 92e2be610839432f46cefab4d128825199dc9f2c5ef33119f9ff84dfe635ef56a4f7aaed64ba52ea2798868b00c3a1b7955caa33219aa298c6a2b8290181f94b DIST systemd-248.tar.gz 10306883 BLAKE2B 3cb25d6101136a5f57e841d3f464f0d7649f6c1cb190b25e4dbf0a8f2be075d04a3cbe92e2fee5bb6a03b73bd8195d8c7b691661b39b7850547d512219cc40af SHA512 486f6ac6c2897a2aac97a59306091a03fd50768340407401e1f088ea5b21c67dae726bff4cbe53cec6b89a8f0ee72205b340165a4fe3a3c16cff6d176506c6e0 DIST systemd-249.tar.gz 10588828 BLAKE2B f7896dea0bdec25125188b94ee84270b972649b1eb16599bed1967ced79f62dbfd1494e22362934f418823c054b342fb24dc57706b49520814beb95b6956bf27 SHA512 0810d09cc32e4aaa4425ee5b7ddf129262b061ce159cbd43571fabda48285243d8f80b566379ece9215d531b9407ee45e1e72c71935644fea31c7bca1bbf540c -EBUILD udev-248.ebuild 5475 BLAKE2B 70b628ed25d8f5b39c556e680bece42604ba30ff083fe7e0f2e77a677dc8f89a7aafcea7fadfec4f756aad03c0f9b19dae34f1a43bff724444fa429d55ab183d SHA512 1954e732be787b8a9b9454ae0987bbc2276de6b7e71ec8d260d5e1c835bb9a1f68c04843709f42c791e58ad43c70f5146f5faeaf1e776353119b5ad15404d901 -EBUILD udev-249-r1.ebuild 5776 BLAKE2B 909f1699e70b77b0347f35fa3353cc16021870aea15fbdf4faca6623327a22237ca78a9891e4e141cf72ae682023611155234cac4fb6008e6ccc1cfb97d9eef5 SHA512 1ec11b20403555deb4d7725289af1a214550aa92d3aea2d39807a1d26a73764e499eed1b3b8deec9300e406c5eb9efab24ae01d365fb9055728660b2c74bacba -EBUILD udev-9999.ebuild 5735 BLAKE2B 7847f1af44dd1dd3b85b9144c690066260297ab2beba5cc86be946838f3a07b7976b108629f8d50424b6cc3bfe37e60c3ed87262a44465d42c68c689fb70db16 SHA512 68ee2e626625d6fbd7c7747b0e6788329b3a81015ebe3f6db1d65bc3bca8cbe8e56792ffe2a9acb736395c2549d0f6969f1fadd2cd00eec950ed5726674c05dd +DIST systemd-musl-patches-249.1-r1.tar.xz 24536 BLAKE2B 25135519112b2a1c638046addb6971ea1997fc7dd8626de90d162a4beb6383b5724df78a14c73be1283df58632fb4a0fcb32f90f50f1886f31a1aded15e9567c SHA512 4655f2a06e1b3310cb27b839360353dfbfdbdaa86f4392aeebf63f63efd441d1953f7ac108be7fed7ea721596d191988ed999e34443e47922afca92db779175a +EBUILD udev-248-r1.ebuild 5468 BLAKE2B 65d07077600d16deb4970920dd728698f3d4b8c58f457e8df7167a2fe3c31ae4b8ad2a45b4d3fac4480c1a3a90e4376c22996d94909463df018543af09333fef SHA512 f73fefbcca00081271756322c19fe959cf2548a4e4a27af88e5b6eece368e0760b98465659106c884f8c16cba3f7a337e7b8c22c82ff575eebd7a6c38f5e0ab9 +EBUILD udev-249-r2.ebuild 7289 BLAKE2B 2a67bb851bbf65c6b99dd5fed6d7926e6ae83e0ff0574cb2919afb1c0bc8dee874d52aa0719235fc6ce0ee63ffb1b3e507d51696e62d7a6d8a1b35be27148ad9 SHA512 1e8bd32d7590bfcf90e9aaf1758776e906477f747848d7d99c6aa28797fcfb3ae60d9fc9e238c46d1713f1b2fe76cfbbb550b175e3be8c010e29cc18e25d0e4c +EBUILD udev-9999.ebuild 5728 BLAKE2B f46125da6569e41064abe7a6e2e0bbdd53d112bf1a6f1894e9682952c68df60cf2b81ea262c21d52e7abd45f0a6ee95af157d15dcc621ab03d902a00b0d5c452 SHA512 46c5ec30be014a9d2b27fba94af74c500e506f6b4a813f8195b622ce702711a70e7c0706be5f1607ccc61f94e2bd2e4776c4277d035982a8352cb07cf889fa33 MISC metadata.xml 476 BLAKE2B 5d293590663fda69b35a5f434b64827de86ac14831536e873c38d1e3baa8575cc02cc45525726046103b73212c02852dce6c407fe7c02705370e4b6402771686 SHA512 552311593b07f4f3d41e406fe99606d79973d9c69e5e448ffcdf3f6d1e04ea6b59c97b022ad2fe7fedbf0c627e2b45efc293dc1065e7cec035c2e48c85c3495d 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 000000000000..6d9e0039b9c9 --- /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 +Date: Mon, 2 Aug 2021 12:41:38 +0200 +Subject: [PATCH] Use correct `` include + +* `` 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 ++#include + #include + #include + #include + #include +-#include + #include + + #include "macro.h" +From 2b6c0bb2a341c95223ce672249e43c743b03d78c Mon Sep 17 00:00:00 2001 +From: David Seifert +Date: Mon, 2 Aug 2021 16:09:10 +0200 +Subject: [PATCH] Use correct `` include + +* `` 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 ++#include + + #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 +-#include ++#include + + #include "alloc-util.h" + #include "errno-util.h" diff --git a/sys-fs/udev/udev-248-r1.ebuild b/sys-fs/udev/udev-248-r1.ebuild new file mode 100644 index 000000000000..f8a443b31f96 --- /dev/null +++ b/sys-fs/udev/udev-248-r1.ebuild @@ -0,0 +1,228 @@ +# Copyright 2003-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +PYTHON_COMPAT=( python3_{7..9} ) + +inherit bash-completion-r1 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" + 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 static-libs" + +RESTRICT="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} +" +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" + +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=( + ) + + 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)" + $(meson_use static-libs static-libudev) + + # Prevent automagic deps + -Dgcrypt=false + -Dlibcryptsetup=false + -Dlibidn=false + -Dlibidn2=false + -Dlibiptc=false + -Dp11kit=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 + python_setup + multilib-minimal_src_configure +} + +multilib_src_compile() { + # meson creates this link + local libudev=$(readlink libudev.so.1) + + local targets=( + ${libudev} + ) + if use static-libs; then + targets+=( libudev.a ) + fi + 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/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 libudev.so.1) + + dolib.so {${libudev},libudev.so.1,libudev.so} + gen_usr_ldscript -a udev + use static-libs && dolib.a libudev.a + + 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} + + rm rules.d/99-systemd.rules || die + 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 + + # see src_prepare() for content of 40-gentoo.rules + insinto /lib/udev/rules.d + doins "${FILESDIR}"/40-gentoo.rules + doins "${S}"/rules.d/*.rules + + dobashcomp shell-completion/bash/udevadm + + insinto /usr/share/zsh/site-functions + doins shell-completion/zsh/_udevadm + + einstalldocs +} + +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 +} diff --git a/sys-fs/udev/udev-248.ebuild b/sys-fs/udev/udev-248.ebuild deleted file mode 100644 index 090111f3ac0d..000000000000 --- a/sys-fs/udev/udev-248.ebuild +++ /dev/null @@ -1,228 +0,0 @@ -# Copyright 2003-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 -PYTHON_COMPAT=( python3_{7..9} ) - -inherit bash-completion-r1 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" - 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 static-libs" - -RESTRICT="test" - -BDEPEND=" - dev-util/gperf - >=dev-util/intltool-0.50 - >=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} -" -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" - -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=( - ) - - 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)" - $(meson_use static-libs static-libudev) - - # Prevent automagic deps - -Dgcrypt=false - -Dlibcryptsetup=false - -Dlibidn=false - -Dlibidn2=false - -Dlibiptc=false - -Dp11kit=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 - python_setup - multilib-minimal_src_configure -} - -multilib_src_compile() { - # meson creates this link - local libudev=$(readlink libudev.so.1) - - local targets=( - ${libudev} - ) - if use static-libs; then - targets+=( libudev.a ) - fi - 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/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 libudev.so.1) - - dolib.so {${libudev},libudev.so.1,libudev.so} - gen_usr_ldscript -a udev - use static-libs && dolib.a libudev.a - - 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} - - rm rules.d/99-systemd.rules || die - 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 - - # see src_prepare() for content of 40-gentoo.rules - insinto /lib/udev/rules.d - doins "${FILESDIR}"/40-gentoo.rules - doins "${S}"/rules.d/*.rules - - dobashcomp shell-completion/bash/udevadm - - insinto /usr/share/zsh/site-functions - doins shell-completion/zsh/_udevadm - - einstalldocs -} - -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 -} diff --git a/sys-fs/udev/udev-249-r1.ebuild b/sys-fs/udev/udev-249-r1.ebuild deleted file mode 100644 index 4b808e917a4d..000000000000 --- a/sys-fs/udev/udev-249-r1.ebuild +++ /dev/null @@ -1,238 +0,0 @@ -# Copyright 2003-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 -PYTHON_COMPAT=( python3_{7..9} ) - -inherit bash-completion-r1 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" - 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 static-libs" - -RESTRICT="test" - -BDEPEND=" - dev-util/gperf - >=dev-util/intltool-0.50 - >=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}]') -" -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=( - "${FILESDIR}/249-libudev-static.patch" - ) - - 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)" - $(meson_use static-libs static-libudev) - - # Prevent automagic deps - -Dgcrypt=false - -Dlibcryptsetup=false - -Dlibidn=false - -Dlibidn2=false - -Dlibiptc=false - -Dp11kit=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 - python_setup - 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 use static-libs; then - targets+=( libudev.a ) - fi - 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[@]}" -} - -multilib_src_install() { - local libudev=$(readlink libudev.so.1) - - dolib.so {${libudev},libudev.so.1,libudev.so} - gen_usr_ldscript -a udev - use static-libs && dolib.a libudev.a - - 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_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 -} diff --git a/sys-fs/udev/udev-249-r2.ebuild b/sys-fs/udev/udev-249-r2.ebuild new file mode 100644 index 000000000000..e6d857dcefb5 --- /dev/null +++ b/sys-fs/udev/udev-249-r2.ebuild @@ -0,0 +1,290 @@ +# Copyright 2003-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +PYTHON_COMPAT=( python3_{8..9} ) + +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" + 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-r1.tar.xz + https://dev.gentoo.org/~soap/distfiles/systemd-musl-patches-${PV}.1-r1.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 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" + ) + 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)" + $(meson_use static-libs static-libudev) + + # 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 use static-libs; then + targets+=( libudev.a ) + fi + 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[@]}" +} + +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 [[ ${EUID} -ne 0 ]]; then + ewarn "udev tests need to run under uid 0" + 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) + + dolib.so {${libudev},libudev.so.1,libudev.so} + gen_usr_ldscript -a udev + use static-libs && dolib.a libudev.a + + 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_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 +} diff --git a/sys-fs/udev/udev-9999.ebuild b/sys-fs/udev/udev-9999.ebuild index 9cb8cd5f731a..8cc1075e8be7 100644 --- a/sys-fs/udev/udev-9999.ebuild +++ b/sys-fs/udev/udev-9999.ebuild @@ -33,7 +33,7 @@ RESTRICT="test" BDEPEND=" dev-util/gperf - >=dev-util/intltool-0.50 + sys-devel/gettext >=sys-apps/coreutils-8.16 virtual/pkgconfig app-text/docbook-xml-dtd:4.2 -- cgit v1.2.3