Krolyxon
Commit 6e575b0

Branches

Refs →

nsxivMakefile

64 lines · 1.6 KB · Makefile

1VERSION = git-20110908
2
3CC = gcc
4CFLAGS = -Wall -pedantic -O2
5LDFLAGS =
6LIBS = -lX11 -lImlib2
7
8PREFIX = /usr/local
9MANPREFIX = $(PREFIX)/share/man
10
11SRC = commands.c image.c main.c options.c thumbs.c util.c window.c
12OBJ = $(SRC:.c=.o)
13
14all: options sxiv
15
16options:
17 @echo "sxiv build options:"
18 @echo "CC = $(CC)"
19 @echo "CFLAGS = $(CFLAGS)"
20 @echo "XFLAGS = $(XFLAGS)"
21 @echo "LDFLAGS = $(LDFLAGS)"
22 @echo "XLIBS = $(XLIBS)"
23 @echo "PREFIX = $(PREFIX)"
24
25.c.o:
26 @echo "CC $<"
27 @$(CC) $(CFLAGS) $(XFLAGS) -DVERSION=\"$(VERSION)\" -c -o $@ $<
28
29$(OBJ): Makefile config.h
30
31config.h:
32 @echo "creating $@ from config.def.h"
33 @cp config.def.h $@
34
35sxiv: $(OBJ)
36 @echo "CC -o $@"
37 @$(CC) $(LDFLAGS) -o $@ $(OBJ) $(LIBS) $(XLIBS)
38
39clean:
40 @echo "cleaning"
41 @rm -f $(OBJ) sxiv sxiv-$(VERSION).tar.gz
42
43dist: clean
44 @echo "creating dist tarball"
45 @mkdir -p sxiv-$(VERSION)
46 @cp LICENSE Makefile Makefile.netbsd README.md config.def.h \
47 sxiv.1 $(SRC) sxiv-$(VERSION)
48 @tar -cf sxiv-$(VERSION).tar sxiv-$(VERSION)
49 @gzip sxiv-$(VERSION).tar
50 @rm -rf sxiv-$(VERSION)
51
52install: all
53 @echo "installing executable file to $(DESTDIR)$(PREFIX)/bin"
54 @install -D -m 755 sxiv $(DESTDIR)$(PREFIX)/bin/sxiv
55 @echo "installing manual page to $(DESTDIR)$(MANPREFIX)/man1"
56 @mkdir -p $(DESTDIR)$(MANPREFIX)/man1
57 @sed "s/VERSION/$(VERSION)/g" sxiv.1 > $(DESTDIR)$(MANPREFIX)/man1/sxiv.1
58 @chmod 644 $(DESTDIR)$(MANPREFIX)/man1/sxiv.1
59
60uninstall:
61 @echo "removing executable file from $(DESTDIR)$(PREFIX)/bin"
62 @rm -f $(DESTDIR)$(PREFIX)/bin/sxiv
63 @echo "removing manual page from $(DESTDIR)$(MANPREFIX)/man1"
64 @rm -f $(DESTDIR)$(MANPREFIX)/man1/sxiv.1