A Simple X Image Viewer
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

70 lines
1.6 KiB

  1. VERSION := git-20170517
  2. PREFIX := /usr/local
  3. MANPREFIX := $(PREFIX)/share/man
  4. CC ?= gcc
  5. CFLAGS += -std=c99 -Wall -pedantic
  6. CPPFLAGS += -I/usr/include/freetype2 -D_XOPEN_SOURCE=700
  7. LDFLAGS +=
  8. LIBS := -lImlib2 -lX11 -lXft
  9. # optional dependencies:
  10. # giflib: gif animations
  11. ifndef NO_GIFLIB
  12. CPPFLAGS += -DHAVE_GIFLIB
  13. LIBS += -lgif
  14. endif
  15. # libexif: jpeg auto-orientation, exif thumbnails
  16. ifndef NO_LIBEXIF
  17. CPPFLAGS += -DHAVE_LIBEXIF
  18. LIBS += -lexif
  19. endif
  20. .PHONY: clean install uninstall
  21. SRC := commands.c image.c main.c options.c thumbs.c util.c window.c
  22. # conditionally compile in autoreload-backend; usage: `make AUTORELOAD=nop`
  23. ifeq ($(AUTORELOAD),nop)
  24. SRC += autoreload_nop.c
  25. else
  26. SRC += autoreload_inotify.c
  27. endif
  28. DEP := $(SRC:.c=.d)
  29. OBJ := $(SRC:.c=.o)
  30. all: config.h sxiv
  31. $(OBJ): Makefile
  32. -include $(DEP)
  33. %.o: %.c
  34. $(CC) $(CFLAGS) $(CPPFLAGS) -DVERSION=\"$(VERSION)\" -MMD -MP -c -o $@ $<
  35. config.h:
  36. cp config.def.h $@
  37. sxiv: $(OBJ)
  38. $(CC) $(LDFLAGS) -o $@ $(OBJ) $(LIBS)
  39. clean:
  40. rm -f $(OBJ) $(DEP) sxiv
  41. install: all
  42. mkdir -p $(DESTDIR)$(PREFIX)/bin
  43. cp sxiv $(DESTDIR)$(PREFIX)/bin/
  44. chmod 755 $(DESTDIR)$(PREFIX)/bin/sxiv
  45. mkdir -p $(DESTDIR)$(MANPREFIX)/man1
  46. sed "s!PREFIX!$(PREFIX)!g; s!VERSION!$(VERSION)!g" sxiv.1 > $(DESTDIR)$(MANPREFIX)/man1/sxiv.1
  47. chmod 644 $(DESTDIR)$(MANPREFIX)/man1/sxiv.1
  48. mkdir -p $(DESTDIR)$(PREFIX)/share/sxiv/exec
  49. cp exec/* $(DESTDIR)$(PREFIX)/share/sxiv/exec/
  50. chmod 755 $(DESTDIR)$(PREFIX)/share/sxiv/exec/*
  51. uninstall:
  52. rm -f $(DESTDIR)$(PREFIX)/bin/sxiv
  53. rm -f $(DESTDIR)$(MANPREFIX)/man1/sxiv.1
  54. rm -rf $(DESTDIR)$(PREFIX)/share/sxiv