xref: /OK3568_Linux_fs/yocto/poky/meta/recipes-connectivity/dhcpcd/dhcpcd_9.4.1.bb (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1SECTION = "console/network"
2SUMMARY = "dhcpcd - a DHCP client"
3DESCRIPTION = "dhcpcd runs on your machine and silently configures your \
4               computer to work on the attached networks without trouble \
5               and mostly without configuration."
6
7HOMEPAGE = "http://roy.marples.name/projects/dhcpcd/"
8
9LICENSE = "BSD-2-Clause"
10LIC_FILES_CHKSUM = "file://LICENSE;md5=d148485768fe85b9f1072b186a7e9b4d"
11
12UPSTREAM_CHECK_URI = "https://roy.marples.name/downloads/dhcpcd/"
13
14SRC_URI = "https://roy.marples.name/downloads/${BPN}/${BPN}-${PV}.tar.xz \
15           file://0001-remove-INCLUDEDIR-to-prevent-build-issues.patch \
16           file://0001-20-resolv.conf-improve-the-sitation-of-working-with-.patch \
17           file://0001-privsep-Allow-getrandom-sysctl-for-newer-glibc.patch \
18           file://0002-privsep-Allow-newfstatat-syscall-as-well.patch \
19           file://0001-privsep-linux-fix-SECCOMP_AUDIT_ARCH-missing-ppc64le.patch \
20           file://dhcpcd.service \
21           file://dhcpcd@.service \
22           file://0001-dhcpcd.8-Fix-conflict-error-when-enable-multilib.patch \
23           "
24
25SRC_URI[sha256sum] = "819357634efed1ea5cf44ec01b24d3d3f8852fec8b4249925dcc5667c54e376c"
26
27inherit pkgconfig autotools-brokensep systemd useradd
28
29SYSTEMD_SERVICE:${PN} = "dhcpcd.service"
30
31PACKAGECONFIG ?= "udev ${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}"
32
33PACKAGECONFIG[udev] = "--with-udev,--without-udev,udev,udev"
34PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6"
35# ntp conflicts with chrony
36PACKAGECONFIG[ntp] = "--with-hook=ntp, , ,ntp"
37PACKAGECONFIG[chrony] = "--with-hook=ntp, , ,chrony"
38PACKAGECONFIG[ypbind] = "--with-eghook=yp, , ,ypbind-mt"
39
40# add option to override DBDIR location
41DBDIR ?= "${localstatedir}/lib/${BPN}"
42
43EXTRA_OECONF = "--enable-ipv4 \
44                --dbdir=${DBDIR} \
45                --sbindir=${base_sbindir} \
46                --runstatedir=/run \
47                --enable-privsep \
48                --privsepuser=dhcpcd \
49                --with-hooks \
50                --with-eghooks \
51               "
52
53USERADD_PACKAGES = "${PN}"
54USERADD_PARAM:${PN} = "--system -d ${DBDIR} -M -s /bin/false -U dhcpcd"
55
56do_install:append () {
57    # install systemd unit files
58    install -d ${D}${systemd_system_unitdir}
59    install -m 0644 ${WORKDIR}/dhcpcd*.service ${D}${systemd_system_unitdir}
60
61    chmod 700 ${D}${DBDIR}
62    chown dhcpcd:dhcpcd ${D}${DBDIR}
63}
64
65FILES:${PN}-dbg += "${libdir}/dhcpcd/dev/.debug"
66