blob: c9a5819e47598275ee6ad6eb9e2b08d5960c416f [file] [log] [blame]
Andrew Geisslerc9f78652020-09-18 14:11:35 -05001SUMMARY = "ISC Kea DHCP Server"
2DESCRIPTION = "Kea is the next generation of DHCP software developed by ISC. It supports both DHCPv4 and DHCPv6 protocols along with their extensions, e.g. prefix delegation and dynamic updates to DNS."
3HOMEPAGE = "http://kea.isc.org"
4SECTION = "connectivity"
5LICENSE = "MPL-2.0 & Apache-2.0"
6LIC_FILES_CHKSUM = "file://COPYING;md5=68d95543d2096459290a4e6b9ceccffa"
7
8DEPENDS = "boost log4cplus openssl"
9
10SRC_URI = "\
11 http://ftp.isc.org/isc/kea/${PV}/${BP}.tar.gz \
Andrew Geisslerc3d88e42020-10-02 09:45:00 -050012 file://0001-keactrl.in-create-var-lib-kea-and-var-run-kea-folder.patch \
Andrew Geisslerc9f78652020-09-18 14:11:35 -050013 file://kea-dhcp4.service \
14 file://kea-dhcp6.service \
15 file://kea-dhcp-ddns.service \
Andrew Geissler4c19ea12020-10-27 13:52:24 -050016 file://kea-dhcp4-server \
17 file://kea-dhcp6-server \
18 file://kea-dhcp-ddns-server \
Andrew Geisslerc3d88e42020-10-02 09:45:00 -050019 file://fix-multilib-conflict.patch \
Andrew Geissler4c19ea12020-10-27 13:52:24 -050020 file://fix_pid_keactrl.patch \
Andrew Geisslerc9f78652020-09-18 14:11:35 -050021"
22SRC_URI[sha256sum] = "4e121f0e58b175a827581c69cb1d60778647049fa47f142940dddc9ce58f3c82"
23
Andrew Geissler4c19ea12020-10-27 13:52:24 -050024inherit autotools systemd update-rc.d
25
26INITSCRIPT_NAME = "kea-dhcp4-server"
27INITSCRIPT_PARAMS = "defaults 30"
Andrew Geisslerc9f78652020-09-18 14:11:35 -050028
29SYSTEMD_SERVICE_${PN} = "kea-dhcp4.service kea-dhcp6.service kea-dhcp-ddns.service"
30SYSTEMD_AUTO_ENABLE = "disable"
31
32DEBUG_OPTIMIZATION_remove_mips = " -Og"
33DEBUG_OPTIMIZATION_append_mips = " -O"
34BUILD_OPTIMIZATION_remove_mips = " -Og"
35BUILD_OPTIMIZATION_append_mips = " -O"
36
37DEBUG_OPTIMIZATION_remove_mipsel = " -Og"
38DEBUG_OPTIMIZATION_append_mipsel = " -O"
39BUILD_OPTIMIZATION_remove_mipsel = " -Og"
40BUILD_OPTIMIZATION_append_mipsel = " -O"
41
42EXTRA_OECONF = "--with-boost-libs=-lboost_system \
43 --with-log4cplus=${STAGING_DIR_TARGET}${prefix} \
44 --with-openssl=${STAGING_DIR_TARGET}${prefix}"
45
46do_configure_prepend() {
47 # replace abs_top_builddir to avoid introducing the build path
48 # don't expand the abs_top_builddir on the target as the abs_top_builddir is meanlingless on the target
49 find ${S} -type f -name *.sh.in | xargs sed -i "s:@abs_top_builddir@:@abs_top_builddir_placeholder@:g"
50 sed -i "s:@abs_top_srcdir@:@abs_top_srcdir_placeholder@:g" ${S}/src/bin/admin/kea-admin.in
51}
52
53do_install_append() {
Andrew Geissler4c19ea12020-10-27 13:52:24 -050054 install -d ${D}${sysconfdir}/init.d
Andrew Geisslerc9f78652020-09-18 14:11:35 -050055 install -d ${D}${systemd_system_unitdir}
Andrew Geissler4c19ea12020-10-27 13:52:24 -050056
Andrew Geisslerc9f78652020-09-18 14:11:35 -050057 install -m 0644 ${WORKDIR}/kea-dhcp*service ${D}${systemd_system_unitdir}
Andrew Geissler4c19ea12020-10-27 13:52:24 -050058 install -m 0755 ${WORKDIR}/kea-*-server ${D}${sysconfdir}/init.d
Andrew Geisslerc9f78652020-09-18 14:11:35 -050059 sed -i -e 's,@SBINDIR@,${sbindir},g' -e 's,@BASE_BINDIR@,${base_bindir},g' \
60 -e 's,@LOCALSTATEDIR@,${localstatedir},g' -e 's,@SYSCONFDIR@,${sysconfdir},g' \
Andrew Geisslerc3d88e42020-10-02 09:45:00 -050061 ${D}${systemd_system_unitdir}/kea-dhcp*service ${D}${sbindir}/keactrl
Andrew Geisslerc9f78652020-09-18 14:11:35 -050062}
63
64do_install_append() {
65 rm -rf "${D}${localstatedir}"
66}
67
Andrew Geissler4c19ea12020-10-27 13:52:24 -050068CONFFILES_${PN} = "${sysconfdir}/kea/keactrl.conf"
69
Andrew Geisslerc9f78652020-09-18 14:11:35 -050070FILES_${PN}-staticdev += "${libdir}/kea/hooks/*.a ${libdir}/hooks/*.a"
71FILES_${PN} += "${libdir}/hooks/*.so"
72
73PARALLEL_MAKEINST = ""