improve Makefile - xscreenshot - screen capture tool | |
git clone git://git.codemadness.org/xscreenshot | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
commit a61ce36c878f7bd110fa7c0753efa4d12fbb6304 | |
parent 7b7a88a34cf8da48cd07a87357e65cfd54befcaa | |
Author: Hiltjo Posthuma <[email protected]> | |
Date: Wed, 4 Mar 2020 00:40:39 +0100 | |
improve Makefile | |
- rm config.mk | |
- just be verbose. | |
- fix 'dist' target. | |
- remove 'options' target. | |
- change man page location to OpenBSD it's location by default. | |
- respect system CFLAGS/LDFLAGS asmuch as possible by default. | |
Diffstat: | |
M Makefile | 75 +++++++++++++++++++----------… | |
D config.mk | 28 ---------------------------- | |
2 files changed, 47 insertions(+), 56 deletions(-) | |
--- | |
diff --git a/Makefile b/Makefile | |
@@ -1,42 +1,61 @@ | |
-include config.mk | |
+.POSIX: | |
NAME = xscreenshot | |
-SRC = xscreenshot.c | |
-OBJ = ${SRC:.c=.o} | |
+VERSION = 1.0 | |
-all: xscreenshot | |
+# paths | |
+PREFIX = /usr/local | |
+MANPREFIX = ${PREFIX}/man | |
-options: | |
- @echo ${NAME} build options: | |
- @echo "CFLAGS = ${CFLAGS}" | |
- @echo "LDFLAGS = ${LDFLAGS}" | |
- @echo "CC = ${CC}" | |
+INCS = -I/usr/X11R6/include | |
+LIBS = -L/usr/X11R6/lib -lX11 | |
-.c.o: | |
- ${CC} -c ${CFLAGS} $< | |
+# use system flags. | |
+XSCREENSHOT_CFLAGS = ${CFLAGS} ${INCS} | |
+XSCREENSHOT_LDFLAGS = ${LDFLAGS} ${LIBS} | |
+XSCREENSHOT_CPPFLAGS = -D_DEFAULT_SOURCE -D_BSD_SOURCE | |
+ | |
+BIN = ${NAME} | |
+SRC = ${BIN:=.c} | |
+MAN1 = ${BIN:=.1} | |
+OBJ = ${SRC:.c=.o} | |
+DOC = \ | |
+ LICENSE\ | |
+ README | |
-${OBJ}: config.mk | |
+all: ${BIN} | |
-xscreenshot: xscreenshot.o | |
- ${CC} -o $@ xscreenshot.o ${LDFLAGS} | |
+${OBJ}: | |
+ | |
+.o: | |
+ ${CC} ${XSCREENSHOT_LDFLAGS} -o $@ $< | |
+ | |
+.c.o: | |
+ ${CC} ${XSCREENSHOT_CFLAGS} ${XSCREENSHOT_CPPFLAGS} -o $@ -c $< | |
+ | |
+dist: | |
+ rm -rf "${NAME}-${VERSION}" | |
+ mkdir -p "${NAME}-${VERSION}" | |
+ cp -f ${MAN1} ${DOC} ${SRC} Makefile \ | |
+ "${NAME}-${VERSION}" | |
+ # make tarball | |
+ tar -cf - "${NAME}-${VERSION}" | \ | |
+ gzip -c > "${NAME}-${VERSION}.tar.gz" | |
+ rm -rf "${NAME}-${VERSION}" | |
clean: | |
- rm -f xscreenshot ${OBJ} | |
+ rm -f ${BIN} ${OBJ} | |
install: all | |
- @echo installing executable file to ${DESTDIR}${PREFIX}/bin | |
- @mkdir -p ${DESTDIR}${PREFIX}/bin | |
- @cp -f xscreenshot ${DESTDIR}${PREFIX}/bin | |
- @chmod 755 ${DESTDIR}${PREFIX}/bin/xscreenshot | |
- @echo installing manual pages to ${DESTDIR}${MANPREFIX}/man1 | |
- @mkdir -p ${DESTDIR}${MANPREFIX}/man1 | |
- @cp -f xscreenshot.1 ${DESTDIR}${MANPREFIX}/man1 | |
- @chmod 644 ${DESTDIR}${MANPREFIX}/man1/xscreenshot.1 | |
+ mkdir -p ${DESTDIR}${PREFIX}/bin | |
+ cp -f ${BIN} ${DESTDIR}${PREFIX}/bin | |
+ chmod 755 ${DESTDIR}${PREFIX}/bin/xscreenshot | |
+ mkdir -p ${DESTDIR}${MANPREFIX}/man1 | |
+ cp -f ${MAN1} ${DESTDIR}${MANPREFIX}/man1 | |
+ chmod 644 ${DESTDIR}${MANPREFIX}/man1/xscreenshot.1 | |
uninstall: | |
- @echo removing executable file from ${DESTDIR}${PREFIX}/bin | |
- @rm -f ${DESTDIR}${PREFIX}/bin/xscreenshot | |
- @echo removing manual pages from ${DESTDIR}${MANPREFIX}/man1 | |
- @rm -f ${DESTDIR}${MANPREFIX}/man1/xscreenshot.1 | |
+ rm -f ${DESTDIR}${PREFIX}/bin/xscreenshot | |
+ rm -f ${DESTDIR}${MANPREFIX}/man1/xscreenshot.1 | |
-.PHONY: all options clean dist install uninstall | |
+.PHONY: all clean dist install uninstall | |
diff --git a/config.mk b/config.mk | |
@@ -1,28 +0,0 @@ | |
-VERSION = 1.0 | |
- | |
-# customize below to fit your system | |
- | |
-# paths | |
-PREFIX = /usr/local | |
-MANPREFIX = ${PREFIX}/share/man | |
- | |
-X11INC = /usr/X11R6/include | |
-X11LIB = /usr/X11R6/lib | |
- | |
-# includes and libs | |
-INCS = -I${X11INC} | |
-LIBS = -L${X11LIB} -lX11 | |
- | |
-# flags | |
-CPPFLAGS = -DVERSION=\"${VERSION}\" | |
- | |
-# debug | |
-CFLAGS = -O0 -g -std=c99 -Wall -pedantic -D_DEFAULT_SOURCE -D_BSD_SOURCE ${INC… | |
-LDFLAGS = ${LIBS} | |
- | |
-# optimized | |
-#CFLAGS = -O2 -std=c99 -DVERSION=\"${VERSION}\" -D_DEFAULT_SOURCE -D_BSD_SOURC… | |
-#LDFLAGS = -s ${LIBS} | |
- | |
-# compiler and linker | |
-CC = cc |