чување 07c2df1a21df81dd8266288677c9403ab556cee8
родитељ 4a42dc33bc72ee4c478982d4fb7dac740ecd719b
Аутор: Страхиња Радић <contact@strahinja.org>
Датум: Fri, 29 Sep 2023 18:54:28 +0200
Change build scripts to make .gz optional; add notes about OpenBSD
Signed-off-by: Страхиња Радић <contact@strahinja.org>
Diffstat:
измењених датотека: 5, додавања: 38(+), брисања: 11(-)
diff --git a/all.do b/all.do
@@ -1 +1,2 @@
-redo-ifchange sled sled.1.gz
+. ./config.redo
+redo-ifchange sled "sled.1$MANSUFFIX"
diff --git a/clean.do b/clean.do
@@ -1 +1,2 @@
-rm -f *~ *.o sled sled.1.gz sled.1 version.h version date _config.h
+. ./config.redo
+rm -f *~ *.o sled *.1"$MANSUFFIX" *.1 version.h version date _config.h
diff --git a/config.redo b/config.redo
@@ -1,4 +1,20 @@
PREFIX=${PREFIX:-/usr/local}
+
+BINDIR=$PREFIX/bin
+DOCDIR=$PREFIX/share/doc/sled
+MANDIR=$PREFIX/share/man/man1
+# OpenBSD
+#DOCDIR=$PREFIX/doc/sled
+#MANDIR=$PREFIX/man/man1
+
+PROGS="sled sledv"
+DOCS="README LICENSE"
+MANSUFFIX=${MANSUFFIX-$(command -v gzip >/dev/null && printf ".gz")}
+MANPAGES="sled.1${MANSUFFIX}"
+
CC=${CC:-gcc -g -Wall -pedantic -std=c99 -D_POSIX_C_SOURCE=200809L \
-D_XOPEN_SOURCE=700 -D_DEFAULT_SOURCE}
+# OpenBSD
+#CC=${CC:-gcc -g -Wall -pedantic -std=c99 -D_POSIX_C_SOURCE=200809L \
+#-D_XOPEN_SOURCE=700 -D_BSD_SOURCE -D_DEFAULT_SOURCE}
STRIP=${STRIP:-:}
diff --git a/install.do b/install.do
@@ -1,8 +1,12 @@
redo-ifchange all
. ./config.redo
-BINDIR=$PREFIX/bin
-MANDIR=$PREFIX/share/man/man1
-for executable in sled sledv; do
- install -Dm 0755 "${executable}" "${BINDIR}/${executable}"
+install -d "$DOCDIR" "$BINDIR" "$MANDIR"
+for docfile in $DOCS; do
+ install -Dm 0644 "${docfile}" "${DOCDIR}/${docfile}"
+done
+for binfile in $PROGS; do
+ install -Dm 0755 "${binfile}" "${BINDIR}/${binfile}"
+done
+for manfile in $MANPAGES; do
+ install -Dm 0644 "${manfile}" "${MANDIR}/${manfile}"
done
-install -Dm 0644 sled.1.gz "${MANDIR}/sled.1.gz"
diff --git a/uninstall.do b/uninstall.do
@@ -1,5 +1,10 @@
-redo-always
. ./config.redo
-BINDIR=$PREFIX/bin
-MANDIR=$PREFIX/share/man/man1
-rm -f $BINDIR/sled $BINDIR/sledv $MANDIR/sled.1.gz
+for docfile in README LICENSE; do
+ rm -f "${DOCDIR}/${docfile}"
+done
+for binfile in $PROGS; do
+ rm -f "${BINDIR}/${binfile}"
+done
+for manfile in $MANPAGES; do
+ rm -f "${MANDIR}/${manfile}"
+done