[CONTACT]

[ABOUT]

[POLICY]

git clone catpoint catpoint Log gph

Found at: gopher.r-36.net:70/scm/catpoint/commit/a6db1af027460ed5d4544921c81fea7a0584b3c2.gph

tMakefile: improvements - catpoint - Catpoint simple presenting software.

git clone git://r-36.net/catpoint

Log

Files

Refs

LICENSE

---

commit a6db1af027460ed5d4544921c81fea7a0584b3c2

parent 1c4c6d33a77caaed0046b9a6006cfa4dfe866e7b

Author: Hiltjo Posthuma

Date:   Sun, 20 Dec 2020 15:36:50 +0100
Makefile: improvements
- Rewrite the Makefile.
  - Remove config.mk
  - Be verbose.
  - Separate CFLAGS, CPPFLAGS and LDFLAGS and respect system compiler flags.
  - Remove default POSIX flags such as ${CC}.
  - make dist: add missing files.
  - make dist: pipe directly to stdin instead of making a tar file.
  - Generalize the name and use ${NAME},${BIN} and ${MAN1} variables.
Signed-off-by: Christoph Lohmann <20h@r-36.net>
Diffstat:
  Makefile                            |      70 ++++++++++++++++++-------------
  config.mk                           |      21 ---------------------
2 files changed, 40 insertions(+), 51 deletions(-)
---

diff --git a/Makefile b/Makefile

t@@ -1,15 +1,32 @@
 # catpoint - simple presentation software
 # See LICENSE file for copyright and license details.
-include config.mk
+.POSIX:
-SRC = catpoint.c
+NAME = catpoint
+VERSION = 1.0
+
+# paths
+PREFIX = /usr/local
+MANPREFIX = ${PREFIX}/share/man
+
+# use system flags.
+CATPOINT_CFLAGS = ${CFLAGS}
+CATPOINT_CPPFLAGS = ${CPPFLAGS}
+CATPOINT_LDFLAGS = ${LDFLAGS} -lncursesw
+
+# Gentoo
+#CATPOINT_LDFLAGS = ${LDFLAGS} -lncursesw -ltinfow
+
+SRC = ${NAME}.c
+MAN1 = ${NAME}.1
+BIN = ${NAME}
 OBJ = ${SRC:.c=.o}
-all: options catpoint
+all: catpoint
 options:
-        @echo catpoint build options:
+        @echo ${NAME} build options:
         @echo "CFLAGS   = ${CFLAGS}"
         @echo "LDFLAGS  = ${LDFLAGS}"
         @echo "CC       = ${CC}"
t@@ -18,42 +35,35 @@ config.h:
         cp config.def.h config.h
 .c.o:
-        @echo CC $<
-        @${CC} -c ${CFLAGS} $<
+        ${CC} -c ${CATPOINT_CFLAGS} ${CATPOINT_CPPFLAGS} $<
-${OBJ}: config.mk
+${OBJ}:
 catpoint: ${OBJ}
-        @echo CC -o $@
-        @${CC} -o $@ ${OBJ} ${LDFLAGS}
+        ${CC} -o $@ ${OBJ} ${CATPOINT_LDFLAGS}
 clean:
-        @echo cleaning
-        @rm -f catpoint ${OBJ} catpoint-${VERSION}.tar.gz
+        rm -f ${BIN} ${OBJ} ${NAME}-${VERSION}.tar.gz
-dist: clean
-        @echo creating dist tarball
-        @mkdir -p catpoint-${VERSION}
-        @cp -R LICENSE Makefile README.md config.mk ${SRC} catpoint-${VERSION}
-        @tar -cf catpoint-${VERSION}.tar catpoint-${VERSION}
-        @gzip catpoint-${VERSION}.tar
-        @rm -rf catpoint-${VERSION}
+dist:
+        mkdir -p ${NAME}-${VERSION}
+        cp -R LICENSE Makefile README.md TOOLS ${SRC} \
+                ${MAN1} showoff ${NAME}-${VERSION}
+        tar -cf - "${NAME}-${VERSION}" | \
+                gzip -c > ${NAME}-${VERSION}.tar.gz
+        rm -rf ${NAME}-${VERSION}
 install: all
-        @echo installing executable file to ${DESTDIR}${PREFIX}/bin
-        @mkdir -p ${DESTDIR}${PREFIX}/bin
-        @cp -f catpoint ${DESTDIR}${PREFIX}/bin
-        @chmod 755 ${DESTDIR}${PREFIX}/bin/catpoint
-        @#echo installing manual page to ${DESTDIR}${MANPREFIX}/man1
-        @#mkdir -p ${DESTDIR}${MANPREFIX}/man1
-        @#sed "s/VERSION/${VERSION}/g" < catpoint.1 > ${DESTDIR}${MANPREFIX}/man1/catpoint.1
-        @#chmod 644 ${DESTDIR}${MANPREFIX}/man1/catpoint.1
+        mkdir -p ${DESTDIR}${PREFIX}/bin
+        cp -f ${BIN} ${DESTDIR}${PREFIX}/bin
+        chmod 755 ${DESTDIR}${PREFIX}/bin/${BIN}
+        mkdir -p ${DESTDIR}${MANPREFIX}/man1
+        cp -f ${MAN1} ${DESTDIR}${MANPREFIX}/man1/${MAN1}
+        chmod 644 ${DESTDIR}${MANPREFIX}/man1/${MAN1}
 uninstall:
-        @echo removing executable file from ${DESTDIR}${PREFIX}/bin
-        @rm -f ${DESTDIR}${PREFIX}/bin/catpoint
-        #@echo removing manual page from ${DESTDIR}${MANPREFIX}/man1
-        #@rm -f ${DESTDIR}${MANPREFIX}/man1/catpoint.1
+        rm -f ${DESTDIR}${PREFIX}/bin/${BIN}
+        rm -f ${DESTDIR}${MANPREFIX}/man1/${MAN1}
 .PHONY: all options clean dist install uninstall

diff --git a/config.mk b/config.mk

t@@ -1,21 +0,0 @@
-# catpoint
-VERSION = 1.0
-
-# Customize below to fit your system
-
-# paths
-PREFIX = /usr/local
-MANPREFIX = ${PREFIX}/share/man
-
-# libs
-LIBS = -lncursesw
-# Gentoo
-#LIBS = -lncursesw -ltinfow
-
-# flags
-CFLAGS = -std=c99 -pedantic -Wall -Wno-deprecated-declarations -Os
-LDFLAGS = -s ${LIBS}
-
-# compiler and linker
-CC = cc
-
.


AD: