Makefile 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. # st - simple terminal
  2. # See LICENSE file for copyright and license details.
  3. .POSIX:
  4. include config.mk
  5. SRC = st.c x.c boxdraw.c hb.c
  6. OBJ = $(SRC:.c=.o)
  7. all: st
  8. config.h:
  9. cp config.def.h config.h
  10. .c.o:
  11. $(CC) $(STCFLAGS) -c $<
  12. st.o: config.h st.h win.h
  13. x.o: arg.h config.h st.h win.h hb.h
  14. boxdraw.o: config.h st.h boxdraw_data.h
  15. hb.o: st.h
  16. $(OBJ): config.h config.mk
  17. st: $(OBJ)
  18. $(CC) -o $@ $(OBJ) $(STLDFLAGS)
  19. clean:
  20. rm -f st $(OBJ) st-$(VERSION).tar.gz config.h
  21. dist: clean
  22. mkdir -p st-$(VERSION)
  23. cp -R FAQ LEGACY TODO LICENSE Makefile README config.mk\
  24. config.def.h st.info st.1 arg.h st.h win.h $(SRC)\
  25. st-$(VERSION)
  26. tar -cf - st-$(VERSION) | gzip > st-$(VERSION).tar.gz
  27. rm -rf st-$(VERSION)
  28. install: st
  29. mkdir -p $(DESTDIR)$(PREFIX)/bin
  30. cp -f st $(DESTDIR)$(PREFIX)/bin
  31. chmod 755 $(DESTDIR)$(PREFIX)/bin/st
  32. mkdir -p $(DESTDIR)$(MANPREFIX)/man1
  33. sed "s/VERSION/$(VERSION)/g" < st.1 > $(DESTDIR)$(MANPREFIX)/man1/st.1
  34. chmod 644 $(DESTDIR)$(MANPREFIX)/man1/st.1
  35. tic -sx st.info
  36. @echo Please see the README file regarding the terminfo entry of st.
  37. mkdir -p $(DESTDIR)$(ICONPREFIX)
  38. [ -f $(ICONNAME) ] && cp -f $(ICONNAME) $(DESTDIR)$(ICONPREFIX) || :
  39. mkdir -p $(DESTDIR)$(PREFIX)/share/applications
  40. cp -f st.desktop $(DESTDIR)$(PREFIX)/share/applications
  41. uninstall:
  42. rm -f $(DESTDIR)$(PREFIX)/bin/st
  43. rm -f $(DESTDIR)$(MANPREFIX)/man1/st.1
  44. rm -f $(DESTDIR)$(ICONPREFIX)/$(ICONNAME)
  45. rm -f $(DESTDIR)$(PREFIX)/share/applications/st.desktop
  46. .PHONY: all clean dist install uninstall