sys-fs/eudev: version bump to 3.1.5
authorAnthony G. Basile <blueness@gentoo.org>
Tue, 13 Oct 2015 06:14:13 +0000 (02:14 -0400)
committerAnthony G. Basile <blueness@gentoo.org>
Tue, 13 Oct 2015 06:17:22 +0000 (02:17 -0400)
Package-Manager: portage-2.2.20.1

sys-fs/eudev/Manifest
sys-fs/eudev/eudev-3.1.5.ebuild [new file with mode: 0644]

index 1bf33559c8b911e613c0d2debcc7515e2c17ec63..0553bdd9a3971a4b7c0fe8aa9aeb392c687b621b 100644 (file)
@@ -1,3 +1,4 @@
 DIST eudev-1.10.tar.gz 1776717 SHA256 401eeb29147d3e24d87849a8006df62eadeb369d913484d59e9e35f3f73a20d1 SHA512 76ba9e3c732a6baad448500ef72368e985e0edf45b80d920e23432b5ee2da3e841c5faf2cc281af6432625758608c31eb441c6af9e2161d4e7264348e33e086f WHIRLPOOL d3251a1ef18e46e000a0941156ca4daa33b54a6147fece4cee6d863f86c98068e88bc11bc8a90f45c578ed62338218c5c8b4b06bb6132610e3d4a30bf79fe192
 DIST eudev-1.9.tar.gz 1762520 SHA256 8f17e92f1177ce9352bde00360e227a7cbb3b97ac8816174bee34be80e44cef0 SHA512 13bd7df42d686818f499856d260e5dfaf10425f06e05449bf4cc8318667b166e2ae9c5e8b519008285aeaab9284ec5fde1f9f19e536dd4bae09a5439c86336b3 WHIRLPOOL d0504f05e191e94229bf60a497cab82fe461f52072ba7ed2171654e684397e4ffa9ba47c8b18cd0cc6d0168701dcac3b7d4b6c73168382e2432c7c229b2d0293
 DIST eudev-3.1.2.tar.gz 1858004 SHA256 4393b69e93dd8117defde6519b199d479f9d051f52061157a1a7a41b8fe10273 SHA512 d9aeb37a163ce4a0c116f75a927b4b99f8445d06624fbb3c28ade18f3effd8c54af5a4a52477c31a0452822a3dc0901468263195256e9dbf79d2ef08cf46f2b6 WHIRLPOOL 2249128672d2adfa968c123a2538063331348bc8e8481ad9c25bf8d9fb4d2d3c8a05417439f155d9ababe657b19a595c18c6ba60ad0d5584a8ead86220b39577
+DIST eudev-3.1.5.tar.gz 1745524 SHA256 f75885a430cd50fe4b31732f808ba7f9b2adf0f26b53b8ba2957b0c1d84b6f2a SHA512 c5192e085ca4230aaac918e701989b712e5bda1558db31eb6ba635c17c4bdff398458d51cefbc5fb77a7c775ec1e04b1dbe019b8314cac3f43a5c1ae61521b5e WHIRLPOOL bc845c474101635c039515489e1316053156d3dd5f9c915c312324b9a1a6168f831e7476eeff834487fc83289e5d5eea2ba764c10bb6628b7c18d188de5f3846
diff --git a/sys-fs/eudev/eudev-3.1.5.ebuild b/sys-fs/eudev/eudev-3.1.5.ebuild
new file mode 100644 (file)
index 0000000..f090a05
--- /dev/null
@@ -0,0 +1,243 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+KV_min=2.6.39
+WANT_AUTOMAKE=1.13
+
+inherit autotools eutils linux-info multilib multilib-minimal user
+
+if [[ ${PV} = 9999* ]]; then
+       EGIT_REPO_URI="git://github.com/gentoo/eudev.git"
+       inherit git-2
+else
+       SRC_URI="https://dev.gentoo.org/~blueness/${PN}/${P}.tar.gz"
+       KEYWORDS="~amd64 ~arm ~hppa ~mips ~ppc ~ppc64 ~sparc ~x86"
+fi
+
+DESCRIPTION="Linux dynamic and persistent device naming support (aka userspace devfs)"
+HOMEPAGE="https://github.com/gentoo/eudev"
+
+LICENSE="LGPL-2.1 MIT GPL-2"
+SLOT="0"
+IUSE="+hwdb +kmod introspection rule-generator selinux static-libs test"
+
+COMMON_DEPEND=">=sys-apps/util-linux-2.20
+       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(-)]
+       )"
+DEPEND="${COMMON_DEPEND}
+       dev-util/gperf
+       virtual/os-headers
+       virtual/pkgconfig
+       >=sys-devel/make-3.82-r4
+       >=sys-kernel/linux-headers-${KV_min}
+       >=dev-util/intltool-0.50
+       test? ( app-text/tree dev-lang/perl )"
+
+RDEPEND="${COMMON_DEPEND}
+       !<sys-fs/lvm2-2.02.103
+       !<sec-policy/selinux-base-2.20120725-r10
+       !sys-fs/udev
+       !sys-apps/systemd"
+
+PDEPEND=">=sys-fs/udev-init-scripts-26
+       hwdb? ( >=sys-apps/hwids-20140304[udev] )"
+
+# 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() { :; }
+
+pkg_pretend() {
+       ewarn
+       ewarn "As of 2013-01-29, ${P} provides the new interface renaming functionality,"
+       ewarn "as described in the URL below:"
+       ewarn "http://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames"
+       ewarn
+       ewarn "This functionality is enabled BY DEFAULT because eudev has no means of synchronizing"
+       ewarn "between the default or user-modified choice of sys-fs/udev.  If you wish to disable"
+       ewarn "this new iface naming, please be sure that /etc/udev/rules.d/80-net-name-slot.rules"
+       ewarn "exists: touch /etc/udev/rules.d/80-net-name-slot.rules"
+       ewarn
+}
+
+pkg_setup() {
+       CONFIG_CHECK="~BLK_DEV_BSG ~DEVTMPFS ~!IDE ~INOTIFY_USER ~!SYSFS_DEPRECATED ~!SYSFS_DEPRECATED_V2 ~SIGNALFD ~EPOLL ~FHANDLE ~NET"
+       linux-info_pkg_setup
+       get_running_version
+
+       # These are required kernel options, but we don't error out on them
+       # because you can build under one kernel and run under another.
+       if kernel_is lt ${KV_min//./ }; then
+               ewarn
+               ewarn "Your current running kernel version ${KV_FULL} is too old to run ${P}."
+               ewarn "Make sure to run udev under kernel version ${KV_min} or above."
+               ewarn
+       fi
+}
+
+src_prepare() {
+       # change rules back to group uucp instead of dialout for now
+       sed -e 's/GROUP="dialout"/GROUP="uucp"/' -i rules/*.rules \
+       || die "failed to change group dialout to uucp"
+
+       epatch_user
+       eautoreconf
+}
+
+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=
+               ac_cv_header_sys_capability_h=yes
+               DBUS_CFLAGS=' '
+               DBUS_LIBS=' '
+               --with-rootprefix=
+               --with-rootrundir=/run
+               --libdir=/usr/$(get_libdir)
+               --with-rootlibexecdir=/lib/udev
+               --enable-split-usr
+               --enable-manpages
+               --disable-hwdb
+               --exec-prefix=/
+       )
+
+       # Only build libudev for non-native_abi, and only install it to libdir,
+       # that means all options only apply to native_abi
+       if multilib_is_native_abi; then
+               econf_args+=(
+                       --with-rootlibdir=/$(get_libdir)
+                       $(use_enable introspection)
+                       $(use_enable kmod)
+                       $(use_enable static-libs static)
+                       $(use_enable selinux)
+                       $(use_enable rule-generator)
+               )
+       else
+               econf_args+=(
+                       --disable-static
+                       --disable-introspection
+                       --disable-kmod
+                       --disable-selinux
+                       --disable-rule-generator
+               )
+       fi
+       ECONF_SOURCE="${S}" econf "${econf_args[@]}"
+}
+
+multilib_src_compile() {
+       if multilib_is_native_abi; then
+               emake
+       else
+               emake -C src/shared
+               emake -C src/libudev
+       fi
+}
+
+multilib_src_install() {
+       if multilib_is_native_abi; then
+               emake DESTDIR="${D}" install
+       else
+               emake -C src/libudev DESTDIR="${D}" install
+       fi
+}
+
+multilib_src_test() {
+       # make sandbox get out of the way
+       # these are safe because there is a fake root filesystem put in place,
+       # but sandbox seems to evaluate the paths of the test i/o instead of the
+       # paths of the actual i/o that results.
+       # also only test for native abi
+       if multilib_is_native_abi; then
+               addread /sys
+               addwrite /dev
+               addwrite /run
+               default_src_test
+       fi
+}
+
+multilib_src_install_all() {
+       prune_libtool_files --all
+
+       insinto /lib/udev/rules.d
+       doins "${FILESDIR}"/40-gentoo.rules
+
+       use rule-generator && doinitd "${FILESDIR}"/udev-postmount
+}
+
+pkg_postinst() {
+       mkdir -p "${EROOT}"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 "${EROOT}"dev/loop 2>/dev/null
+       if [[ -d ${EROOT}dev/loop ]]; then
+               ewarn "Please make sure your remove /dev/loop,"
+               ewarn "else losetup may be confused when looking for unused devices."
+       fi
+
+       if use hwdb && has_version 'sys-apps/hwids[udev]'; then
+               udevadm hwdb --update --root="${ROOT%/}"
+
+               # http://cgit.freedesktop.org/systemd/systemd/commit/?id=1fab57c209035f7e66198343074e9cee06718bda
+               # reload database after it has be rebuilt, but only if we are not upgrading
+               # also pass if we are -9999 since who knows what hwdb related changes there might be
+               if [[ ${REPLACING_VERSIONS%-r*} == ${PV} || -z ${REPLACING_VERSIONS} ]] && \
+               [[ ${ROOT%/} == "" ]] && [[ ${PV} != "9999" ]]; then
+                       udevadm control --reload
+               fi
+       fi
+
+       ewarn
+       ewarn "You need to restart eudev as soon as possible to make the"
+       ewarn "upgrade go into effect:"
+       ewarn "\t/etc/init.d/udev --nodeps restart"
+
+       if use rule-generator && \
+       [[ -x $(type -P rc-update) ]] && rc-update show | grep udev-postmount | grep -qsv 'boot\|default\|sysinit'; then
+               ewarn
+               ewarn "Please add the udev-postmount init script to your default runlevel"
+               ewarn "to ensure the legacy rule-generator functionality works as reliably"
+               ewarn "as possible."
+               ewarn "\trc-update add udev-postmount default"
+       fi
+
+       elog
+       elog "For more information on eudev on Gentoo, writing udev rules, and"
+       elog "fixing known issues visit:"
+       elog "         https://www.gentoo.org/doc/en/udev-guide.xml"
+       elog
+
+       # 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
+               if [[ -z ${REPLACING_VERSIONS} ]]; then
+                       # http://cgit.freedesktop.org/systemd/systemd/commit/?id=1fab57c209035f7e66198343074e9cee06718bda
+                       if [[ ${ROOT} != "" ]] && [[ ${ROOT} != "/" ]]; then
+                               return 0
+                       fi
+                       udevadm control --reload
+               fi
+       fi
+}