lib/ldns/ndmake.sh
$ cat ndmake.sh
#!/bin/sh -ue
NAME=ldns
VERSION=git
RELEASE=1
SOURCE="https://github.com/NLnetLabs/ldns"
build() {
ver_major=$(sed -n 's/^m4_define(\[VERSION_MAJOR\],\[\([0-9][0-9]*\)\]).*/\1/p' configure.ac)
ver_minor=$(sed -n 's/^m4_define(\[VERSION_MINOR\],\[\([0-9][0-9]*\)\]).*/\1/p' configure.ac)
ver_micro=$(sed -n 's/^m4_define(\[VERSION_MICRO\],\[\([0-9][0-9]*\)\]).*/\1/p' configure.ac)
[ -n "$ver_major" ] || die "failed to parse VERSION_MAJOR"
[ -n "$ver_minor" ] || die "failed to parse VERSION_MINOR"
[ -n "$ver_micro" ] || die "failed to parse VERSION_MICRO"
ver="$ver_major.$ver_minor.$ver_micro"
msg "configuring ldns with demiurge..."
demiurge . || die "demiurge failed"
[ ! -f .satan ] && echo "LDFLAGS=${LDFLAGS}" > .satan
msg "generating ldns makefiles with satan..."
satan gen -c \
-DSHELL=/bin/sh \
-Dlibtool=libtool \
-DVERSION="$ver" \
-DPACKAGE_VERSION="$ver" \
-DDEF_PACKAGE_VERSION="\"$ver\"" \
-DDEF_PACKAGE_STRING="\"ldns $ver\"" \
-DDEF_VERSION="\"$ver\"" \
-DDRILL=drill \
-DINSTALL_DRILL=install-drill \
-DUNINSTALL_DRILL=uninstall-drill \
-DCLEAN_DRILL=clean-drill \
-DLINT_DRILL=lint-drill \
-DINSTALL_CONFIG=install-config \
-DINSTALL_CONFIG_MANPAGE=install-config-manpage \
-DUNINSTALL_CONFIG=uninstall-config \
-DUNINSTALL_CONFIG_MANPAGE=uninstall-config-manpage \
-DPYLDNS= \
-DPYLDNSX= \
-DPYLDNSINST= \
-DPYLDNSUNINST= \
-DPYLDNSXINST= \
-DPYLDNSXUNINST= \
-Dswig= \
-DSWIGPY3= \
-DDEF_HAVE_SWIG=0 \
-DDEF_USE_SHA2=0 \
-DDEF_USE_GOST=0 \
-DDEF_USE_ECDSA=0 \
-DDEF_USE_ED25519=0 \
-DDEF_USE_ED448=0 \
-DDEF_USE_DANE=0 \
-DDEF_USE_DANE_VERIFY=0 \
-DDEF_USE_DANE_TA_USAGE=0 \
-Dldns_build_config_use_dane=0 \
-Dldns_build_config_use_dane_verify=0 \
-Dldns_build_config_use_dane_ta_usage=0 \
-Dldns_build_config_use_ed25519=0 \
-Dldns_build_config_use_ed448=0 \
-Dldns_build_config_have_ssl=0 \
-Dldns_build_config_have_inttypes_h=1 \
-Dldns_build_config_have_socklen_t=1 \
-DLIBSSL_CPPFLAGS= \
-DLIBSSL_LDFLAGS= \
-DLIBSSL_LIBS= \
-DLIBSSL_SSL_LIBS= \
-DCHECK_LIB= \
-DDEF_HAVE_LIBPCAP=0 \
PREFIX="$PREFIX" DESTDIR="$PKG" . || die "satan gen failed"
msg "materializing missing ldns/config.h..."
rm -f config.h ldns/config.h || die "failed to remove broken config.h links"
install -m 644 "$PORTDIR/files/config.h" ldns/config.h || die "failed to install ldns/config.h"
ln -sf ldns/config.h config.h || die "failed to symlink config.h"
msg "building ldns..."
make -j"$NPROC" INSTALL=install libtool='slibtool -all-static' LIBOBJS='compat/b64_pton.o compat/b64_ntop.o' || die "make failed"
msg "installing ldns..."
install -d "$PKG/$PREFIX/lib/pkgconfig" "$PKG/$PREFIX/bin" "$PKG/$PREFIX/share/man/man1" || die "failed to create install dirs"
make -j1 INSTALL=install libtool='slibtool -all-static' LIBOBJS='compat/b64_pton.o compat/b64_ntop.o' DESTDIR="$PKG" install || die "make install failed"
}
. ${0%/*}/../../libsh/libdmake.sh
