chiark / gitweb /
Make sure path.h and the manpages get distributed.
[checkpath] / Makefile.main
1 # Kludgy makefile
2
3 # --- Fiddle with these if you like ---
4
5 srcdir = @srcdir@
6 prefix = /usr/local
7 exec_prefix = $(prefix)
8 bindir = $(exec_prefix)/bin
9 mandir = $(prefix)/man
10
11 VPATH = @srcdir@
12
13 CC = gcc
14 LD = gcc
15 PACKAGE = chkpath
16 VERSION = 1.0.0
17 CFLAGS = -O2 -g -DVERSION="\"$(VERSION)\"" -pedantic -Wall
18 LIBS = -lmLib
19 INSTALL = install
20 INSTALL_BINARY = $(INSTALL) -c -s
21 INSTALL_MAN = $(INSTALL) -c -m 644
22
23 # --- Don't fiddle any more ---
24
25 PROGRAMS = chkpath tmpdir
26 MANPAGES = chkpath.1 tmpdir.1
27 SOURCES = chkpath.c path.c tmpdir.c
28 DIST = Makefile Makefile.main $(SOURCES) $(MANPAGES)
29
30 all: Makefile $(PROGRAMS)
31
32 Makefile: $(srcdir)/Makefile.main
33         sed -e 's/@''srcdir@/$(srcdir)/' \
34                 $(srcdir)/Makefile.main >Makefile
35
36 CHKPATH_OBJ = chkpath.o path.o
37 chkpath:  $(CHKPATH_OBJ)
38         $(LD) $(CHKPATH_OBJ) $(LIBS) -o chkpath
39
40 TMPDIR_OBJ = tmpdir.o path.o
41 tmpdir: $(TMPDIR_OBJ)
42         $(LD) $(TMPDIR_OBJ) $(LIBS) -o tmpdir
43
44 install: $(PROGRAMS)
45         @for i in $(PROGRAMS); do \
46           echo " $(INSTALL_BINARY) $$i $(bindir)/$$i"; \
47           $(INSTALL_BINARY) $$i $(bindir)/$$i; \
48         done
49         @for i in $(MANPAGES); do \
50           mansec=`echo $$i | sed -e 's/^.*\.//'`; \
51           echo " $(INSTALL_MAN) $(srcdir)/$$i $(mandir)/man$$mansec/$$i"; \
52           $(INSTALL_MAN) $(srcdir)/$$i $(mandir)/man$$mansec/$$i; \
53         done
54
55 uninstall:
56         for i in $(PROGRAMS); do rm -f $(bindir)/$$i; done
57         for i in $(MANPAGES); do \
58           mansec=`echo $$i | sed -e 's/^.*\.//'`; \
59           rm -f $(mandir)/man$$mansec/$$i; \
60         done
61
62 arch:
63         mkdir $(ARCH) || true
64         cd $(ARCH); make -f ../Makefile.main Makefile srcdir=.. MAKEFLAGS=
65
66 clean:
67         rm -f *.o *~ chkpath tmpdir
68
69 distdir = $(PACKAGE)-$(VERSION)
70 distdir:
71         mkdir $(distdir)
72         for i in $(DIST); do \
73           if [ -f $$i ]; then \
74             ln $$i $(distdir)/$$i; \
75           else \
76             ln $(srcdir)/$$i $(distdir)/$$i; \
77           fi; \
78         done
79
80 dist: distdir
81         GZIP=-9 tar chozf $(PACKAGE)-$(VERSION).tar.gz $(distdir)
82         rm -rf $(distdir)