Gentoo Archives: gentoo-commits

From: "Samuli Suominen (ssuominen)" <ssuominen@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in eclass: udev.eclass
Date: Tue, 30 Oct 2012 19:08:53
Message-Id: 20121030190839.A9A3D21600@flycatcher.gentoo.org
1 ssuominen 12/10/30 19:08:39
2
3 Added: udev.eclass
4 Log:
5 New eclass to determine udevdir from udev.pc pkg-config file as requested by many people, without ML review due to unproductive feedback
6
7 Revision Changes Path
8 1.1 eclass/udev.eclass
9
10 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/udev.eclass?rev=1.1&view=markup
11 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/udev.eclass?rev=1.1&content-type=text/plain
12
13 Index: udev.eclass
14 ===================================================================
15 # Copyright 1999-2012 Gentoo Foundation
16 # Distributed under the terms of the GNU General Public License v2
17 # $Header: /var/cvsroot/gentoo-x86/eclass/udev.eclass,v 1.1 2012/10/30 19:08:39 ssuominen Exp $
18
19 # @ECLASS: udev.eclass
20 # @MAINTAINER:
21 # udev-bugs@g.o
22 # @BLURB: Default eclass for determining udev directories.
23 # @DESCRIPTION:
24 # Default eclass for determining udev directories.
25 # @EXAMPLE:
26 #
27 # @CODE
28 # inherit udev
29 #
30 # RDEPEND=">=sys-fs/udev-171-r6"
31 # DEPEND="${RDEPEND}"
32 #
33 # src_configure() {
34 # econf --with-udevdir="$(udev_get_udevdir)"
35 # }
36 # @CODE
37
38 inherit toolchain-funcs
39
40 case ${EAPI:-0} in
41 0|1|2|3|4) ;;
42 *) die "${ECLASS}.eclass API in EAPI ${EAPI} not yet established."
43 esac
44
45 RDEPEND=""
46 DEPEND="virtual/pkgconfig"
47
48 # @FUNCTION: _udev_get_udevdir
49 # @INTERNAL
50 # @DESCRIPTION:
51 # Get unprefixed udevdir.
52 _udev_get_udevdir() {
53 if $($(tc-getPKG_CONFIG) --exists udev); then
54 echo -n "$($(tc-getPKG_CONFIG) --variable=udevdir udev)"
55 else
56 echo -n /lib/udev
57 fi
58 }
59
60 # @FUNCTION: udev_get_udevdir
61 # @DESCRIPTION:
62 # Output the path for the udev directory (not including ${D}).
63 # This function always succeeds, even if udev is not installed.
64 # The fallback value is set to /lib/udev
65 udev_get_udevdir() {
66 has "${EAPI:-0}" 0 1 2 && ! use prefix && EPREFIX=
67 debug-print-function ${FUNCNAME} "${@}"
68
69 echo -n "${EPREFIX}$(_udev_get_udevdir)"
70 }