summaryrefslogtreecommitdiff
path: root/dgl/Makefile
blob: 9a418d1246df93615b094c275c12b3bbbcb93d07 (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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
#!/usr/bin/make -f
# Makefile for DGL #
# ---------------- #
# Created by falkTX
#

include ../Makefile.mk

# ---------------------------------------------------------------------------------------------------------------------

BUILD_C_FLAGS   += $(DGL_FLAGS) -I. -Isrc
BUILD_CXX_FLAGS += $(DGL_FLAGS) -I. -Isrc
LINK_FLAGS      += $(DGL_LIBS)

# ifneq ($(MACOS_OLD),true)
# needed by sofd right now, fix later
# BUILD_CXX_FLAGS += -Wno-type-limits -fpermissive
# endif

# ---------------------------------------------------------------------------------------------------------------------

OBJS = \
	../build/dgl/Application.cpp.o \
	../build/dgl/Color.cpp.o \
	../build/dgl/Geometry.cpp.o \
	../build/dgl/Image.cpp.o \
	../build/dgl/ImageWidgets.cpp.o \
	../build/dgl/NanoVG.cpp.o \
	../build/dgl/Resources.cpp.o \
	../build/dgl/Widget.cpp.o

ifeq ($(MACOS),true)
OBJS += ../build/dgl/Window.mm.o
else
OBJS += ../build/dgl/Window.cpp.o
endif

TARGET = ../build/libdgl.a

# ---------------------------------------------------------------------------------------------------------------------

all: $(TARGET)

# ---------------------------------------------------------------------------------------------------------------------

../build/libdgl.a: $(OBJS)
	-@mkdir -p ../build
	@echo "Creating libdgl.a"
	@rm -f $@
	@$(AR) crs $@ $^

# ---------------------------------------------------------------------------------------------------------------------

../build/dgl/%.c.o: src/%.c
	-@mkdir -p ../build/dgl
	@echo "Compiling $<"
	@$(CC) $< $(BUILD_C_FLAGS) -c -o $@

../build/dgl/%.cpp.o: src/%.cpp
	-@mkdir -p ../build/dgl
	@echo "Compiling $<"
	@$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@

../build/dgl/Window.cpp.o: src/Window.cpp src/sofd/* src/pugl/*
	-@mkdir -p ../build/dgl
	@echo "Compiling $<"
	@$(CXX) $< $(BUILD_CXX_FLAGS) -c -o $@

../build/dgl/Window.mm.o: src/Window.cpp src/sofd/* src/pugl/*
	-@mkdir -p ../build/dgl
	@echo "Compiling $<"
	@$(CXX) $< $(BUILD_CXX_FLAGS) -ObjC++ -c -o $@

# ---------------------------------------------------------------------------------------------------------------------

clean:
	rm -rf ../build/dgl ../build/libdgl.*

debug:
	$(MAKE) DEBUG=true

# ---------------------------------------------------------------------------------------------------------------------

-include $(OBJS:%.o=%.d)

# ---------------------------------------------------------------------------------------------------------------------