summaryrefslogtreecommitdiff
path: root/misc/fontsample/Makefile
blob: 063d7262d989395d6f9a0982aedd240baa2693df (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
sources = fontsample.mm

CC = clang
CXX = clang
LD = clang

XFLAGS    := -Wall -g -fno-common
CFLAGS    += -std=c11
CXXFLAGS  += -std=c++11 -stdlib=libc++ -fno-rtti -fno-exceptions
LDFLAGS   += -lc++

#flags release and debug targets (e.g. make DEBUG=1)
ifeq ($(strip $(DEBUG)),1)
	XFLAGS += -O0
# else
# 	XFLAGS += -Os -DNDEBUG
endif

libs := -lobjc
frameworks := -framework Foundation \
              -framework CoreText \
              -framework CoreServices \
              -framework CoreGraphics \
              -framework ImageIO

c_flags   = $(CFLAGS) $(XFLAGS) -MMD -fobjc-arc
cxx_flags = $(CXXFLAGS) $(XFLAGS) -MMD -fobjc-arc
ld_flags  = $(LDFLAGS) $(libs) $(frameworks)

objects := $(sources:%.c=%.o)
objects := $(objects:%.cc=%.o)
objects := $(objects:%.mm=%.o)

fontsample: $(objects)
	$(LD) $(ld_flags) -o $@ $^

%.o: %.mm
	$(CXX) $(cxx_flags) -c $<

clean:
	rm -f *.o

all: fontsample
.PHONY: all clean