Introduction
Introduction Statistics Contact Development Disclaimer Help
improve Makefile - bmf - bmf (Bayesian Mail Filter) 0.9.4 fork + patches
git clone git://git.codemadness.org/bmf
Log
Files
Refs
README
LICENSE
---
commit f368a24da9457e4d269ca281bbc07f0eef08751e
parent 486c23d144116c1794e3800c0c0e051b2f3469e3
Author: Hiltjo Posthuma <[email protected]>
Date: Sat, 29 Sep 2018 13:15:26 +0200
improve Makefile
Diffstat:
M Makefile | 105 +++++++++++++++++++++++------…
1 file changed, 77 insertions(+), 28 deletions(-)
---
diff --git a/Makefile b/Makefile
@@ -1,39 +1,88 @@
-BINDIR=/usr/local/bin
-MANDIR=/usr/local/share/man
+PREFIX = /usr/local
+MANPREFIX = ${PREFIX}/man
+NAME = bmf
+VERSION = 0.9.4
+BIN = bmf
+MAN1 = bmf.1
-VERSION=0.9.4
+SRC = \
+ bmf.c \
+ dbg.c \
+ dbh.c \
+ dbtext.c \
+ filt.c \
+ lex.c \
+ str.c \
+ vec.c
-all: bmf
+SCRIPTS =
-bmf: bmf.o dbg.o dbh.o dbtext.o filt.o lex.o str.o vec.o
- $(CC) -o $@ bmf.o filt.o dbtext.o dbh.o lex.o vec.o str.o dbg.o $(LDFL…
+HDR = \
+ config.h \
+ dbg.h \
+ dbh.h \
+ dbtext.h \
+ filt.h \
+ lex.h \
+ str.h \
+ vec.h
-bmf.o: bmf.c
- $(CC) $(CFLAGS) -DPACKAGE=\"bmf\" -DVERSION=\"$(VERSION)\" -c $<
+DOC = \
+ AUTHORS \
+ ChangeLog \
+ LICENSE \
+ README \
+ TODO
-install: checkroot bmf bmf.1
- mkdir -p $(DESTDIR)$(BINDIR)
- mkdir -p $(DESTDIR)$(MANDIR)/man1
- cp bmf $(DESTDIR)$(BINDIR)
- cp bmf.1 $(DESTDIR)$(MANDIR)/man1
+all: ${BIN}
-uninstall: checkroot
- rm -f $(DESTDIR)$(BINDIR)/bmf
- rm -f $(DESTDIR)$(MANDIR)/man1/bmf.1
+OBJ = ${SRC:.c=.o}
-clean:
- rm -f core *.o bmf
+bmf: ${OBJ}
+ $(CC) -o $@ ${OBJ} $(LDFLAGS) $(SYSLIBS)
+
+bmf.o: bmf.c
+ $(CC) $(CFLAGS) -DVERSION=\"$(VERSION)\" -c $<
+
+dist:
+ rm -rf "${NAME}-${VERSION}"
+ mkdir -p "${NAME}-${VERSION}"
+ cp -f ${MAN1} ${DOC} ${HDR} \
+ ${SRC} ${SCRIPTS} \
+ Makefile \
+ bmf.spec.in \
+ "${NAME}-${VERSION}"
+ # make tarball
+ tar -cf - "${NAME}-${VERSION}" | \
+ gzip -c > "${NAME}-${VERSION}.tar.gz"
+ rm -rf "${NAME}-${VERSION}"
-distclean: clean
- rm -f Makefile
+clean:
+ rm -f ${BIN} ${OBJ}
-dist: tarball
+install: all
+ # installing executable files and scripts.
+ mkdir -p "${DESTDIR}${PREFIX}/bin"
+ cp -f ${BIN} ${SCRIPTS} "${DESTDIR}${PREFIX}/bin"
+ for f in ${BIN} ${SCRIPTS}; do chmod 755 "${DESTDIR}${PREFIX}/bin/$$f"…
+ # installing example files.
+ mkdir -p "${DESTDIR}${PREFIX}/share/${NAME}"
+ cp -f \
+ README\
+ "${DESTDIR}${PREFIX}/share/${NAME}"
+ # installing manual pages for tools.
+ mkdir -p "${DESTDIR}${MANPREFIX}/man1"
+ cp -f ${MAN1} "${DESTDIR}${MANPREFIX}/man1"
+ for m in ${MAN1}; do chmod 644 "${DESTDIR}${MANPREFIX}/man1/$$m"; done
-tarball: distclean
- (cd ..; \
- cp -ar bmf bmf-$(VERSION); \
- tar czvf bmf-$(VERSION).tar.gz `find bmf-$(VERSION) -type f | egrep -…
- rm -rf bmf-$(VERSION); \
- cd $(PWD))
+uninstall:
+ # removing executable files and scripts.
+ for f in ${BIN} ${SCRIPTS}; do rm -f "${DESTDIR}${PREFIX}/bin/$$f"; do…
+ # removing example files.
+ rm -f \
+ "${DESTDIR}${PREFIX}/share/${NAME}/README"
+ -rmdir "${DESTDIR}${PREFIX}/share/${NAME}"
+ # removing manual pages.
+ for m in ${MAN1}; do rm -f "${DESTDIR}${MANPREFIX}/man1/$$m"; done
-checkroot:
+.PHONY: all clean dist install uninstall
You are viewing proxied material from codemadness.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.