]> git.armaanb.net Git - st.git/blobdiff - Makefile
Switch to zenburn theme
[st.git] / Makefile
index 0f74456b0fbfe57b2e2704fcc463023d51329855..b6e7e335ce8b7200804a198283e0d1dfc1560da6 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,45 +1,55 @@
 # st - simple terminal
 # See LICENSE file for copyright and license details.
+.POSIX:
 
-VERSION = 0.0
+include config.mk
 
-PREFIX = /usr/local
-MANDIR = $(PREFIX)/share/man
+SRC = st.c x.c hb.c
+OBJ = $(SRC:.c=.o)
 
-CFLAGS = -DVERSION=\"0.0\" -D_GNU_SOURCE
+all: options st
 
-all: st std
+options:
+       @echo st build options:
+       @echo "CFLAGS  = $(STCFLAGS)"
+       @echo "LDFLAGS = $(STLDFLAGS)"
+       @echo "CC      = $(CC)"
+
+.c.o:
+       $(CC) $(STCFLAGS) -c $<
+
+st.o: st.h win.h
+x.o: arg.h st.h win.h hb.h
+hb.o: st.h
+
+$(OBJ): config.mk
+
+st: $(OBJ)
+       $(CC) -o $@ $(OBJ) $(STLDFLAGS)
 
 clean:
-       rm -f st std
-       rm -f st.o std.o
-       rm -f st-$(VERSION).tar.gz
+       rm -f st $(OBJ) st-$(VERSION).tar.gz
 
 dist: clean
-       mkdir st-$(VERSION)
-       cp -f LICENSE README st-$(VERSION)
-       cp -f Makefile config.mk st-$(VERSION)
-       cp -f st.1 std.1 st-$(VERSION)
-       cp -f st.c std.c st-$(VERSION)
-       tar -czf st-$(VERSION).tar st-$(VERSION)
+       mkdir -p st-$(VERSION)
+       cp -R FAQ LEGACY TODO LICENSE Makefile README config.mk\
+               st.info st.1 arg.h st.h win.h $(SRC)\
+               st-$(VERSION)
+       tar -cf - st-$(VERSION) | gzip > st-$(VERSION).tar.gz
        rm -rf st-$(VERSION)
 
-install:
+install: st
        mkdir -p $(DESTDIR)$(PREFIX)/bin
        cp -f st $(DESTDIR)$(PREFIX)/bin
-       cp -f std $(DESTDIR)$(PREFIX)/bin
        chmod 755 $(DESTDIR)$(PREFIX)/bin/st
-       chmod 755 $(DESTDIR)$(PREFIX)/bin/std
-       mkdir -p $(DESTDIR)$(MANDIR)/man1
-       sed 's/VERSION/$(VERSION)/g' < st.1 > $(DESTDIR)$(MANDIR)/man1/st.1
-       chmod 644 $(DESTDIR)$(MANDIR)/man1/st.1
-       sed 's/VERSION/$(VERSION)/g' < std.1 > $(DESTDIR)$(MANDIR)/man1/std.1
-       chmod 644 $(DESTDIR)$(MANDIR)/man1/std.1
+       mkdir -p $(DESTDIR)$(MANPREFIX)/man1
+       sed "s/VERSION/$(VERSION)/g" < st.1 > $(DESTDIR)$(MANPREFIX)/man1/st.1
+       chmod 644 $(DESTDIR)$(MANPREFIX)/man1/st.1
+       tic -sx st.info
+       @echo Please see the README file regarding the terminfo entry of st.
 
 uninstall:
        rm -f $(DESTDIR)$(PREFIX)/bin/st
-       rm -f $(DESTDIR)$(PREFIX)/bin/std
-       rm -f $(DESTDIR)$(MANDIR)/man1/st.1
-       rm -f $(DESTDIR)$(MANDIR)/man1/std.1
+       rm -f $(DESTDIR)$(MANPREFIX)/man1/st.1
 
-.PHONY: all clean dist install uninstall
+.PHONY: all options clean dist install uninstall