core/eiwd/ndmake.sh
$ cat ndmake.sh
#!/bin/sh -ue
NAME=eiwd
VERSION=git
RELEASE=1
SOURCE="https://github.com/illiliti/eiwd.git
eiwd-hell.patch
iwd.sv::sv"
BUILD_STYLE=hell
BUILD_OPT="-DCOND_MAINTAINER_MODE=0 -DCOND_EXTERNAL_ELL=0 -DCOND_LIBEDIT=0 \
-DCOND_DBUS_POLICY=0 -DCOND_SYSTEMD_SERVICE=0 -DCOND_MANUAL_PAGES=0 \
-DCOND_DAEMON=1 -DCOND_OFONO=0 -DCOND_CLIENT=0 -DCOND_MONITOR=0 \
-DCOND_WIRED=0 -DCOND_TOOLS=0 -DCOND_HWSIM=0 -DCOND_DBUS=0 \
-DCOND_RUN_RST2MAN=0 -DCOND_GCOV=0 \
-DDEF_HAVE_EXPLICIT_BZERO=1 -DDEF_HAVE_REALLOCARRAY=1 \
-DDEF_DAEMON_STORAGEDIR=\"/var/lib/iwd\" -DDEF_DAEMON_CONFIGDIR=\"/etc/iwd\" \
-DDEF_WIRED_STORAGEDIR=\"/var/lib/ead\" -DUNDEF_HAVE_BACKTRACE=1 \
-DLIBEXECDIR=/bin -DCHECK_PKG= -DEXTRA_PKG= \
-DLDFLAGS=\"$LDFLAGS\""
LN_S="ln -s"
build() {
msg "cloning ell..."
rm -rf ell/
git clone --depth=1 https://git.kernel.org/pub/scm/libs/ell/ell.git ell \
|| die "ell clone failed"
ln -sf ../ell/ell/test-private.h ell/test-private.h
( cd ell && for f in ell/*; do
[ -f "$f" ] || continue
ln -sf "$f" "$(basename "$f")"
done )
msg "generating with demiurge..."
has_cmd demiurge && demiurge . || msg "warning: demiurge not found"
msg "generating with satan..."
satan gen ${BUILD_OPT} -DLN_S="$LN_S" PREFIX="$PREFIX" DESTDIR="$PKG" . \
|| die "satan gen failed"
msg "building eiwd..."
if has_cmd samu; then
samu || die "samu build failed"
DESTDIR="$PKG" samu install || die "samu install failed"
else
ninja || die "ninja build failed"
DESTDIR="$PKG" ninja install || die "ninja install failed"
fi
}
. ${0%/*}/../../libsh/libdmake.sh
