erebus

annotate Makefile @ 44:a2afaf8af09b

helpful comment
author John Tsiombikas <nuclear@member.fsf.org>
date Fri, 18 Sep 2015 06:47:41 +0300
parents 2c768a49e86e
children
rev   line source
nuclear@4 1 csrc = $(wildcard src/*.c)
nuclear@4 2 ccsrc = $(wildcard src/*.cc)
nuclear@4 3 obj = $(csrc:.c=.o) $(ccsrc:.cc=.o)
nuclear@4 4 bin = erebus
nuclear@4 5
nuclear@34 6 export opt = -O3 -ffast-math
nuclear@34 7 export dbg = -g
nuclear@34 8 export warn = -Wall
nuclear@33 9
nuclear@33 10 CFLAGS = -pedantic $(warn) $(opt) $(dbg) -Iliberebus/src
nuclear@4 11 CXXFLAGS = -std=c++11 $(CFLAGS)
nuclear@33 12 LDFLAGS = -Lliberebus $(rpath) $(libgl_$(sys)) -lm -lerebus -lvmath -limago -ldrawtext
nuclear@4 13
nuclear@4 14 libgl_unix = -lGL -lGLU -lglut -lGLEW
nuclear@4 15 libgl_mac = -framework OpenGL -framework GLUT -lGLEW
nuclear@4 16 libgl_win = -lopengl32 -lglu32 -lglut32 -lglew32
nuclear@4 17
nuclear@7 18 $(bin): $(obj) liberebus
nuclear@4 19 $(CXX) -o $@ $(obj) $(LDFLAGS)
nuclear@4 20
nuclear@7 21 .PHONY: liberebus
nuclear@7 22 liberebus:
nuclear@7 23 $(MAKE) -C liberebus
nuclear@7 24
nuclear@34 25 .PHONY: liberebus-clean
nuclear@34 26 liberebus-clean:
nuclear@34 27 $(MAKE) -C liberebus clean
nuclear@34 28
nuclear@4 29 .PHONY: clean
nuclear@4 30 clean:
nuclear@4 31 rm -f $(obj) $(bin)
nuclear@4 32
nuclear@34 33 .PHONY: cleanall
nuclear@34 34 cleanall: clean liberebus-clean
nuclear@34 35
nuclear@4 36 uname = $(shell uname -s)
nuclear@4 37 ifeq ($(uname), Darwin)
nuclear@4 38 sys = mac
nuclear@33 39 warn += -Wno-deprecated-declarations
nuclear@4 40 else ifeq ($(findstring MINGW, $(uname)), MINGW)
nuclear@4 41 sys = win
nuclear@4 42 else
nuclear@4 43 sys = unix
nuclear@33 44 rpath = -Wl,-rpath=liberebus
nuclear@4 45 endif