summaryrefslogtreecommitdiff
path: root/package/bind/Makefile
blob: fdde3bf101a86433915287dc33d9d2b46e1fa708 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
# This file is part of the OpenADK project. OpenADK is copyrighted
# material, please see the LICENCE file in the top-level directory.

include ${TOPDIR}/rules.mk

PKG_NAME:=		bind
PKG_VERSION:=		9.7.0
PKG_RELEASE:=		1
PKG_MD5SUM:=		c245b5d1aa0a4f53d9538faa1efe2c3f
PKG_DESCR:=		popular DNS server
PKG_SECTION:=		dns
PKG_DEPENDS:=		libopenssl libbind libxml2
PKG_BUILDDEP:=		openssl libxml2
PKG_URL:=		https://www.isc.org/software/bind/
PKG_SITES:=		ftp://ftp.isc.org/isc/bind9/${PKG_VERSION}/

PKG_SUBPKGS:=		BIND_SERVER BIND_CLIENT LIBBIND BIND_RNDC BIND_CHECK BIND_DNSSEC BIND_HOST BIND_DIG
PKGSD_LIBBIND:=		library for the bind software suite
PKGSC_LIBBIND:=		libs
PKGSD_BIND_CLIENT:=	dynamic dns client (nsupdate utility)
PKGSD_BIND_RNDC:=	rndc & rndc-confgen utilities
PKGSD_BIND_CHECK:=	check utilities
PKGSD_BIND_DNSSEC:=	dnssec utilities
PKGSD_BIND_HOST:=	host utility
PKGSD_BIND_DIG:=	dig utility

PKG_FLAVOURS:=		WITH_IPV6
PKGFD_WITH_IPV6:=	enable IPv6 support

include ${TOPDIR}/mk/package.mk

$(eval $(call PKG_template,BIND_SERVER,bind-server,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
$(eval $(call PKG_template,BIND_CLIENT,bind-client,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_BIND_CLIENT},${PKG_SECTION}))
$(eval $(call PKG_template,LIBBIND,libbind,${PKG_VERSION}-${PKG_RELEASE},,${PKGSD_LIBBIND},${PKGSC_LIBBIND}))
$(eval $(call PKG_template,BIND_RNDC,bind-rndc,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_BIND_RNDC},${PKG_SECTION}))
$(eval $(call PKG_template,BIND_CHECK,bind-check,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_BIND_CHECK},${PKG_SECTION}))
$(eval $(call PKG_template,BIND_DNSSEC,bind-dnssec,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_BIND_DNSSEC},${PKG_SECTION}))
$(eval $(call PKG_template,BIND_HOST,bind-host,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_BIND_HOST},${PKG_SECTION}))
$(eval $(call PKG_template,BIND_DIG,bind-dig,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_BIND_DIG},${PKG_SECTION}))

CONFIGURE_ARGS+=	--with-randomdev=/dev/urandom \
			--disable-threads \
			--with-openssl=${STAGING_TARGET_DIR}/usr/ \
			--with-libxml2=${STAGING_TARGET_DIR}/usr/ \
			--enable-epoll \
			--with-libtool

ifneq (${ADK_PACKAGE_BIND_WITH_IPV6},)
CONFIGURE_ARGS+=	--enable-ipv6
else
CONFIGURE_ARGS+=	--disable-ipv6
endif

pre-build:
	${MAKE} -C ${WRKBUILD}/lib/dns \
		BUILD_CC="${HOSTCC}" \
		CC="${HOSTCC}" \
		CFLAGS='${HOSTCFLAGS}' \
		gen

post-install:
	# bind server
	${INSTALL_DIR} ${IDIR_BIND_SERVER}/usr/sbin ${IDIR_BIND_SERVER}/etc
	${INSTALL_BIN} ${WRKINST}/usr/sbin/named ${IDIR_BIND_SERVER}/usr/sbin/
	${CP} ./files/bind ${IDIR_BIND_SERVER}/etc
	# nsupdate
	${INSTALL_DIR} ${IDIR_BIND_CLIENT}/usr/bin
	${INSTALL_BIN} ${WRKINST}/usr/bin/nsupdate ${IDIR_BIND_CLIENT}/usr/bin/
	# rndc
	${INSTALL_DIR} ${IDIR_BIND_RNDC}/usr/sbin
	${INSTALL_BIN} ${WRKINST}/usr/sbin/rndc ${IDIR_BIND_RNDC}/usr/sbin/
	${INSTALL_BIN} ${WRKINST}/usr/sbin/rndc-confgen \
		${IDIR_BIND_RNDC}/usr/sbin/
	# bind check
	${INSTALL_DIR} ${IDIR_BIND_CHECK}/usr/sbin
	${INSTALL_BIN} ${WRKINST}/usr/sbin/named-checkconf \
		${IDIR_BIND_CHECK}/usr/sbin/
	${INSTALL_BIN} ${WRKINST}/usr/sbin/named-checkzone \
		${IDIR_BIND_CHECK}/usr/sbin/
	# dnsec tools
	${INSTALL_DIR} ${IDIR_BIND_DNSSEC}/usr/sbin
	${INSTALL_BIN} ${WRKINST}/usr/sbin/dnssec-keygen \
		${IDIR_BIND_DNSSEC}/usr/sbin/
	${INSTALL_BIN} ${WRKINST}/usr/sbin/dnssec-signzone \
		${IDIR_BIND_DNSSEC}/usr/sbin/
	# host
	${INSTALL_DIR} ${IDIR_BIND_HOST}/usr/bin
	${INSTALL_BIN} ${WRKINST}/usr/bin/host ${IDIR_BIND_HOST}/usr/bin/
	# dig
	${INSTALL_DIR} ${IDIR_BIND_DIG}/usr/bin
	${INSTALL_BIN} ${WRKINST}/usr/bin/dig ${IDIR_BIND_DIG}/usr/bin/
	# bind lib
	${INSTALL_DIR} ${IDIR_LIBBIND}/usr/lib
	${CP} ${WRKINST}/usr/lib/libbind9.so.* ${IDIR_LIBBIND}/usr/lib/
	${CP} ${WRKINST}/usr/lib/libdns.so.* ${IDIR_LIBBIND}/usr/lib/
	${CP} ${WRKINST}/usr/lib/libisccc.so.* ${IDIR_LIBBIND}/usr/lib/
	${CP} ${WRKINST}/usr/lib/libisccfg.so.* ${IDIR_LIBBIND}/usr/lib/
	${CP} ${WRKINST}/usr/lib/libisc.so.* ${IDIR_LIBBIND}/usr/lib/
	${CP} ${WRKINST}/usr/lib/liblwres.so.* ${IDIR_LIBBIND}/usr/lib/

include ${TOPDIR}/mk/pkg-bottom.mk