blob: 579fa95df703782c019b3170ce071fd7fcecefb6 [file] [log] [blame]
Andrew Geisslereff27472021-10-29 15:35:00 -05001SECTION = "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 \
Andrew Geissler517393d2023-01-13 08:55:19 -060016 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 \
Andrew Geissler6aa7eec2023-03-03 12:41:14 -060019 file://0001-privsep-linux-fix-SECCOMP_AUDIT_ARCH-missing-ppc64le.patch \
Andrew Geisslereff27472021-10-29 15:35:00 -050020 file://dhcpcd.service \
21 file://dhcpcd@.service \
Andrew Geisslerfc113ea2023-03-31 09:59:46 -050022 file://0001-dhcpcd.8-Fix-conflict-error-when-enable-multilib.patch \
Andrew Geisslereff27472021-10-29 15:35:00 -050023 "
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
Andrew Geissler7e0e3c02022-02-25 20:34:39 +000040# add option to override DBDIR location
41DBDIR ?= "${localstatedir}/lib/${BPN}"
42
Andrew Geisslereff27472021-10-29 15:35:00 -050043EXTRA_OECONF = "--enable-ipv4 \
Andrew Geissler7e0e3c02022-02-25 20:34:39 +000044 --dbdir=${DBDIR} \
Andrew Geisslereff27472021-10-29 15:35:00 -050045 --sbindir=${base_sbindir} \
46 --runstatedir=/run \
47 --enable-privsep \
48 --privsepuser=dhcpcd \
49 --with-hooks \
50 --with-eghooks \
51 "
52
53USERADD_PACKAGES = "${PN}"
Andrew Geissler7e0e3c02022-02-25 20:34:39 +000054USERADD_PARAM:${PN} = "--system -d ${DBDIR} -M -s /bin/false -U dhcpcd"
Andrew Geisslereff27472021-10-29 15:35:00 -050055
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
Andrew Geissler7e0e3c02022-02-25 20:34:39 +000061 chmod 700 ${D}${DBDIR}
62 chown dhcpcd:dhcpcd ${D}${DBDIR}
Andrew Geisslereff27472021-10-29 15:35:00 -050063}
64
65FILES:${PN}-dbg += "${libdir}/dhcpcd/dev/.debug"