JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
fix bug where first selection snaps to lines
[st.git] / Makefile
index 0f74456..6158ab2 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,45 +1,60 @@
 # st - simple terminal
 # See LICENSE file for copyright and license details.
 
-VERSION = 0.0
+include config.mk
 
-PREFIX = /usr/local
-MANDIR = $(PREFIX)/share/man
+SRC = st.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   = ${CFLAGS}"
+       @echo "LDFLAGS  = ${LDFLAGS}"
+       @echo "CC       = ${CC}"
+
+config.h:
+       cp config.def.h config.h
+
+.c.o:
+       @echo CC $<
+       @${CC} -c ${CFLAGS} $<
+
+${OBJ}: config.h config.mk
+
+st: ${OBJ}
+       @echo CC -o $@
+       @${CC} -o $@ ${OBJ} ${LDFLAGS}
 
 clean:
-       rm -f st std
-       rm -f st.o std.o
-       rm -f st-$(VERSION).tar.gz
+       @echo cleaning
+       @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)
-       rm -rf st-$(VERSION)
-
-install:
-       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
+       @echo creating dist tarball
+       @mkdir -p st-${VERSION}
+       @cp -R LICENSE Makefile README config.mk config.def.h st.info st.1 arg.h ${SRC} st-${VERSION}
+       @tar -cf st-${VERSION}.tar st-${VERSION}
+       @gzip st-${VERSION}.tar
+       @rm -rf st-${VERSION}
+
+install: all
+       @echo installing executable file to ${DESTDIR}${PREFIX}/bin
+       @mkdir -p ${DESTDIR}${PREFIX}/bin
+       @cp -f st ${DESTDIR}${PREFIX}/bin
+       @chmod 755 ${DESTDIR}${PREFIX}/bin/st
+       @echo installing manual page to ${DESTDIR}${MANPREFIX}/man1
+       @mkdir -p ${DESTDIR}${MANPREFIX}/man1
+       @sed "s/VERSION/${VERSION}/g" < st.1 > ${DESTDIR}${MANPREFIX}/man1/st.1
+       @chmod 644 ${DESTDIR}${MANPREFIX}/man1/st.1
+       @echo Please see the README file regarding the terminfo entry of st.
+       @tic -s st.info
 
 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
+       @echo removing executable file from ${DESTDIR}${PREFIX}/bin
+       @rm -f ${DESTDIR}${PREFIX}/bin/st
+       @echo removing manual page from ${DESTDIR}${MANPREFIX}/man1
+       @rm -f ${DESTDIR}${MANPREFIX}/man1/st.1
 
-.PHONY: all clean dist install uninstall
+.PHONY: all options clean dist install uninstall