5d666acb1c5e08f36cc7b6f84b1e039f2841718c
[vrfileman] / Makefile
1 # ---- options ----
2 PREFIX = /usr/local
3 opt = -O0
4 dbg = -g
5 # -----------------
6
7 src = $(wildcard src/*.cc)
8 obj = $(src:.cc=.o)
9 dep = $(obj:.o=.d)
10 bin = vrfileman
11
12 warn = -pedantic -Wall
13
14 CXXFLAGS = $(warn) $(opt) $(dbg) $(inc) `pkg-config --cflags sdl2`
15 LDFLAGS = $(libgl) -lgmath `pkg-config --libs sdl2`
16
17
18 ifeq ($(shell uname -s), Darwin)
19         libgl = -framework OpenGL -lGLEW
20 else
21         libgl = -lGL -lGLEW
22 endif
23
24
25 $(bin): $(obj)
26         $(CXX) -o $@ $(obj) $(LDFLAGS)
27
28 -include $(dep)
29
30 %.d: %.c
31         @$(CPP) $(CFLAGS) $< -MM -MT $(@:.d=.o) >$@
32
33 %.d: %.cc
34         @$(CPP) $(CXXFLAGS) $< -MM -MT $(@:.d=.o) >$@
35
36 .PHONY: clean
37 clean:
38         rm -f $(obj) $(bin)
39
40 .PHONY: cleandep
41 cleandep:
42         rm -f $(dep)
43
44 .PHONY: install
45 install: $(bin)
46         mkdir -p $(DESTDIR)$(PREFIX)/bin
47         cp $(bin) $(DESTDIR)$(PREFIX)/bin/$(bin)
48
49 .PHONY: uninstall
50 uninstall:
51         rm -f $(DESTDIR)$(PREFIX)/bin/$(bin)