bb781842bf0c7e3276e67799f3c391586edaf286
[gentoo.git] / sys-apps / hwids / hwids-20190316.ebuild
1 # Copyright 2012-2020 Gentoo Authors
2 # Distributed under the terms of the GNU General Public License v2
3
4 EAPI="6"
5
6 inherit udev
7
8 DESCRIPTION="Hardware (PCI, USB, OUI, IAB) IDs databases"
9 HOMEPAGE="https://github.com/gentoo/hwids"
10 if [[ ${PV} == "99999999" ]]; then
11         PYTHON_COMPAT=( python3_{6,7} )
12         inherit git-r3 python-any-r1
13         EGIT_REPO_URI="https://github.com/gentoo/hwids.git"
14 else
15         SRC_URI="https://github.com/gentoo/hwids/archive/${P}.tar.gz"
16         KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux"
17 fi
18
19 LICENSE="|| ( GPL-2 BSD ) public-domain"
20 SLOT="0"
21 IUSE="+net +pci +udev +usb"
22
23 DEPEND=""
24 RDEPEND="
25         udev? ( virtual/udev )
26         !<sys-apps/pciutils-3.1.9-r2
27         !<sys-apps/usbutils-005-r1
28 "
29
30 if [[ ${PV} == 99999999 ]]; then
31         DEPEND+="
32                 net-misc/curl
33                 udev? ( $(python_gen_any_dep 'dev-python/pyparsing[${PYTHON_USEDEP}]') )
34         "
35         python_check_deps() {
36                 if use udev; then
37                         has_version --host-root "dev-python/pyparsing[${PYTHON_USEDEP}]"
38                 fi
39         }
40 else
41         S=${WORKDIR}/hwids-${P}
42 fi
43
44 pkg_setup() {
45         :
46 }
47
48 src_unpack() {
49         if [[ ${PV} == 99999999 ]]; then
50                 git-r3_src_unpack
51                 cd "${S}" || die
52                 emake fetch
53         else
54                 default
55         fi
56 }
57
58 src_prepare() {
59         default
60         sed -i -e '/udevadm hwdb/d' Makefile || die
61 }
62
63 _emake() {
64         emake \
65                 NET=$(usex net) \
66                 PCI=$(usex pci) \
67                 UDEV=$(usex udev) \
68                 USB=$(usex usb) \
69                 "$@"
70 }
71
72 src_compile() {
73         if [[ ${PV} == 99999999 ]] && use udev; then
74                 python_setup
75                 _emake udev-hwdb
76         fi
77         _emake
78 }
79
80 src_install() {
81         _emake install \
82                 DOCDIR="${EPREFIX}/usr/share/doc/${PF}" \
83                 MISCDIR="${EPREFIX}/usr/share/misc" \
84                 HWDBDIR="${EPREFIX}$(get_udevdir)/hwdb.d" \
85                 DESTDIR="${D}"
86 }
87
88 pkg_postinst() {
89         if use udev; then
90                 udevadm hwdb --update --root="${ROOT%/}"
91         fi
92 }