diff options
author | Matthias-Christian Ott <ott@enolink.de> | 2008-07-21 17:06:59 +0200 |
---|---|---|
committer | Matthias-Christian Ott <ott@enolink.de> | 2008-07-21 17:06:59 +0200 |
commit | e0d0a2b96e84bba95f6f3e274131e3bbfb3a4f56 (patch) | |
tree | 094f50c48cb0f2cc0a97e6912e90cfb3a907f201 /Makefile | |
parent | 082d8bb82bc478bdd0b1470232ba52976a0c035d (diff) | |
download | st-patched-e0d0a2b96e84bba95f6f3e274131e3bbfb3a4f56.tar.bz2 st-patched-e0d0a2b96e84bba95f6f3e274131e3bbfb3a4f56.tar.xz st-patched-e0d0a2b96e84bba95f6f3e274131e3bbfb3a4f56.zip |
simplify Makefile
Due to consideration of POSIX compliance issues config.mk had
to be removed. Configuration variables can be overridden by
environment variables or specified via command line.
Additionally all pretty-printed messages were removed and
built-in rules are used. This also simplifies and purges
the Makefile.
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 83 |
1 files changed, 32 insertions, 51 deletions
@@ -1,64 +1,45 @@ | |||
1 | # st - simple terminal | 1 | # st - simple terminal |
2 | # See LICENSE file for copyright and license details. | 2 | # See LICENSE file for copyright and license details. |
3 | 3 | ||
4 | include config.mk | 4 | VERSION = 0.0 |
5 | 5 | ||
6 | SRC = st.c std.c pty.c | 6 | PREFIX = /usr/local |
7 | OBJ = ${SRC:.c=.o} | 7 | MANDIR = $(PREFIX)/share/man |
8 | 8 | ||
9 | all: options st std | 9 | CFLAGS = -DVERSION=\"0.0\" -D_GNU_SOURCE |
10 | 10 | ||
11 | options: | 11 | all: st std |
12 | @echo st build options: | ||
13 | @echo "CFLAGS = ${CFLAGS}" | ||
14 | @echo "LDFLAGS = ${LDFLAGS}" | ||
15 | @echo "X11LDFLAGS = ${X11LDFLAGS}" | ||
16 | @echo "CC = ${CC}" | ||
17 | |||
18 | .c.o: | ||
19 | @echo CC $< | ||
20 | @${CC} -c ${CFLAGS} $< | ||
21 | |||
22 | ${OBJ}: config.mk | ||
23 | |||
24 | st: st.o | ||
25 | @echo CC -o $@ | ||
26 | @${CC} -o $@ $^ ${LDFLAGS} ${X11LDFLAGS} | ||
27 | |||
28 | std: std.o pty.o | ||
29 | @echo CC -o $@ | ||
30 | @${CC} -o $@ $^ ${LDFLAGS} | ||
31 | 12 | ||
32 | clean: | 13 | clean: |
33 | @echo cleaning | 14 | rm -f st std |
34 | @rm -f st std ${OBJ} st-${VERSION}.tar.gz | 15 | rm -f st.o std.o |
16 | rm -f st-$(VERSION).tar.gz | ||
35 | 17 | ||
36 | dist: clean | 18 | dist: clean |
37 | @echo creating dist tarball | 19 | mkdir st-$(VERSION) |
38 | @mkdir -p st-${VERSION} | 20 | cp -f LICENSE README st-$(VERSION) |
39 | @cp -R LICENSE Makefile README config.mk \ | 21 | cp -f Makefile config.mk st-$(VERSION) |
40 | st.1 ${SRC} st-${VERSION} | 22 | cp -f st.1 std.1 st-$(VERSION) |
41 | @tar -cf st-${VERSION}.tar st-${VERSION} | 23 | cp -f st.c std.c st-$(VERSION) |
42 | @gzip st-${VERSION}.tar | 24 | tar -czf st-$(VERSION).tar st-$(VERSION) |
43 | @rm -rf st-${VERSION} | 25 | rm -rf st-$(VERSION) |
44 | 26 | ||
45 | install: all | 27 | install: |
46 | @echo installing executable file to ${DESTDIR}${PREFIX}/bin | 28 | mkdir -p $(DESTDIR)$(PREFIX)/bin |
47 | @mkdir -p ${DESTDIR}${PREFIX}/bin | 29 | cp -f st $(DESTDIR)$(PREFIX)/bin |
48 | @cp -f st ${DESTDIR}${PREFIX}/bin | 30 | cp -f std $(DESTDIR)$(PREFIX)/bin |
49 | @cp -f std ${DESTDIR}${PREFIX}/bin | 31 | chmod 755 $(DESTDIR)$(PREFIX)/bin/st |
50 | @chmod 755 ${DESTDIR}${PREFIX}/bin/st | 32 | chmod 755 $(DESTDIR)$(PREFIX)/bin/std |
51 | @echo installing manual page to ${DESTDIR}${MANPREFIX}/man1 | 33 | mkdir -p $(DESTDIR)$(MANDIR)/man1 |
52 | @mkdir -p ${DESTDIR}${MANPREFIX}/man1 | 34 | sed 's/VERSION/$(VERSION)/g' < st.1 > $(DESTDIR)$(MANDIR)/man1/st.1 |
53 | @sed "s/VERSION/${VERSION}/g" < st.1 > ${DESTDIR}${MANPREFIX}/man1/st.1 | 35 | chmod 644 $(DESTDIR)$(MANDIR)/man1/st.1 |
54 | @chmod 644 ${DESTDIR}${MANPREFIX}/man1/st.1 | 36 | sed 's/VERSION/$(VERSION)/g' < std.1 > $(DESTDIR)$(MANDIR)/man1/std.1 |
55 | @sed "s/VERSION/${VERSION}/g" < std.1 > ${DESTDIR}${MANPREFIX}/man1/std.1 | 37 | chmod 644 $(DESTDIR)$(MANDIR)/man1/std.1 |
56 | @chmod 644 ${DESTDIR}${MANPREFIX}/man1/std.1 | ||
57 | 38 | ||
58 | uninstall: | 39 | uninstall: |
59 | @echo removing executable file from ${DESTDIR}${PREFIX}/bin | 40 | rm -f $(DESTDIR)$(PREFIX)/bin/st |
60 | @rm -f ${DESTDIR}${PREFIX}/bin/st | 41 | rm -f $(DESTDIR)$(PREFIX)/bin/std |
61 | @echo removing manual page from ${DESTDIR}${MANPREFIX}/man1 | 42 | rm -f $(DESTDIR)$(MANDIR)/man1/st.1 |
62 | @rm -f ${DESTDIR}${MANPREFIX}/man1/st.1 | 43 | rm -f $(DESTDIR)$(MANDIR)/man1/std.1 |
63 | 44 | ||
64 | .PHONY: all options clean dist install uninstall | 45 | .PHONY: all clean dist install uninstall |