2021-02-18 13:30:16 +00:00
|
|
|
#!/usr/bin/env sh
|
|
|
|
#
|
|
|
|
#build stuff
|
|
|
|
|
|
|
|
VERSION='0.0.2-1'
|
|
|
|
|
|
|
|
CFLAGS="-std=c99 -Wall -W -Wpointer-arith -Wbad-function-cast -Wpedantic -D_XOPEN_SOURCE=700"
|
|
|
|
DEBDIR="dist/djl-utils"
|
|
|
|
|
2021-02-20 00:35:23 +00:00
|
|
|
commands="bin clean deb help tarball"
|
|
|
|
argv0="$0"
|
2021-02-18 13:30:16 +00:00
|
|
|
|
|
|
|
prettyname() {
|
|
|
|
basename "$1" | rev | cut -d'.' -f2 | rev
|
|
|
|
}
|
|
|
|
|
|
|
|
cbuild() {
|
|
|
|
target="$1"
|
|
|
|
targetdest="bin/$(prettyname "$target")"
|
|
|
|
shift
|
2021-02-20 01:17:49 +00:00
|
|
|
(set -x; cc $CFLAGS -o "$targetdest" "$target" src/util.c "$@")
|
2021-02-18 13:30:16 +00:00
|
|
|
}
|
|
|
|
|
2021-04-24 03:49:27 +00:00
|
|
|
shbuild() {
|
2021-02-18 13:30:16 +00:00
|
|
|
target="$1"
|
2021-04-24 03:49:27 +00:00
|
|
|
targetdest="bin/$(prettyname "$target" | sed 's/\.sh$//')"
|
2021-02-18 13:30:16 +00:00
|
|
|
(set -x; cp "$target" "$targetdest")
|
|
|
|
}
|
|
|
|
|
|
|
|
bin() {
|
|
|
|
[ ! -d bin ] && mkdir bin
|
|
|
|
|
|
|
|
for f in src/*.c; do
|
2021-02-20 01:17:49 +00:00
|
|
|
[ "$f" = "src/util.c" ] && continue
|
2021-02-18 13:30:16 +00:00
|
|
|
cbuild "$f"
|
|
|
|
done
|
|
|
|
|
2021-04-24 03:49:27 +00:00
|
|
|
for f in src/*.sh; do
|
|
|
|
shbuild "$f"
|
2021-02-18 13:30:16 +00:00
|
|
|
done
|
|
|
|
}
|
|
|
|
|
2021-02-20 00:35:23 +00:00
|
|
|
clean() {
|
|
|
|
(set -x; rm -rf dist bin)
|
|
|
|
}
|
2021-02-18 13:30:16 +00:00
|
|
|
|
|
|
|
deb() {
|
|
|
|
bin
|
|
|
|
[ -d "$DEBDIR" ] && rm -f "$DISTDIR"
|
|
|
|
(set -x; mkdir -p "$DEBDIR/usr/bin"
|
2021-02-22 11:30:34 +00:00
|
|
|
mkdir -p "$DEBDIR/usr/share/man/man1"
|
2021-02-18 13:30:16 +00:00
|
|
|
cp bin/* "$DEBDIR/usr/bin"
|
2021-02-22 11:30:34 +00:00
|
|
|
cp doc/* "$DEBDIR/usr/share/man/man1"
|
2021-02-18 13:30:16 +00:00
|
|
|
cp -r pkgsrc/DEBIAN "$DEBDIR"
|
|
|
|
sed -i "s/%VERSION%/$VERSION/g" "$DEBDIR/DEBIAN/control"
|
|
|
|
dpkg-deb -b "$DEBDIR")
|
|
|
|
}
|
|
|
|
|
2021-02-20 00:35:23 +00:00
|
|
|
|
|
|
|
help() {
|
|
|
|
echo "$argv0 [$(echo "$commands" | tr ' ' '|')]" > /dev/stderr
|
|
|
|
}
|
|
|
|
|
|
|
|
tarball() {
|
|
|
|
"$argv0" clean
|
|
|
|
(set -x; tar -czf "v$VERSION.tgz" src doc pkgsrc "$argv0" LICENSE)
|
2021-02-18 13:30:16 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
test -z "$1" && bin || $1
|
|
|
|
|