Mercurial > hg > dmlib
annotate Makefile.gen @ 986:a25b6da1c4a8
Begin process of making zlib optional for some things.
These changes are for build process only, and lack any other implementation.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Fri, 27 Feb 2015 20:15:34 +0200 |
parents | fecf3967abee |
children | 027083293a8e |
rev | line source |
---|---|
0 | 1 ### |
2 ### Get settings from config.mak | |
3 ### | |
880 | 4 ifneq ($(DMCONFIG),) |
5 include $(DMCONFIG) | |
6 else | |
0 | 7 include config.mak |
880 | 8 endif |
0 | 9 |
880 | 10 MKDIR ?= mkdir |
11 MKDIR_P ?= $(MKDIR) -p | |
587
296133d29611
Fix and improve build process.
Matti Hamalainen <ccr@tnsp.org>
parents:
584
diff
changeset
|
12 BINPATH ?= ./ |
296133d29611
Fix and improve build process.
Matti Hamalainen <ccr@tnsp.org>
parents:
584
diff
changeset
|
13 DMLIB ?= ./ |
714
0ad76fa080ca
Improve build system by adding support for separate binary paths for
Matti Hamalainen <ccr@tnsp.org>
parents:
690
diff
changeset
|
14 TOOL_BINPATH ?= $(DMLIB)tools/ |
0ad76fa080ca
Improve build system by adding support for separate binary paths for
Matti Hamalainen <ccr@tnsp.org>
parents:
690
diff
changeset
|
15 TESTS_BINPATH ?= $(DMLIB)tests/ |
0ad76fa080ca
Improve build system by adding support for separate binary paths for
Matti Hamalainen <ccr@tnsp.org>
parents:
690
diff
changeset
|
16 |
812
1e5cf1144f36
Move library source under src/ subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
749
diff
changeset
|
17 DMLIBSRC = $(DMLIB)src/ |
714
0ad76fa080ca
Improve build system by adding support for separate binary paths for
Matti Hamalainen <ccr@tnsp.org>
parents:
690
diff
changeset
|
18 |
812
1e5cf1144f36
Move library source under src/ subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
749
diff
changeset
|
19 DM_CFLAGS += -I$(DMLIBSRC) |
880 | 20 |
0 | 21 ifeq ($(EXTRA_CFLAGS),) |
624
5df8ef3f88bb
Oops, add -O3 back to default CFLAGS again.
Matti Hamalainen <ccr@tnsp.org>
parents:
607
diff
changeset
|
22 EXTRA_CFLAGS=-O3 -march=core2 -DDM_DEVEL |
0 | 23 endif |
24 | |
880 | 25 |
26 ### | |
27 ### Build demo target? | |
28 ### | |
29 ifneq ($(DEMO_BIN),) | |
30 BINARIES += $(DEMO_BIN) | |
31 endif | |
841 | 32 |
344 | 33 |
34 ### | |
35 ### Editor | |
36 ### | |
573
14640d0688d3
Make timeline stuff optional.
Matti Hamalainen <ccr@tnsp.org>
parents:
572
diff
changeset
|
37 ifeq ($(DM_USE_TIMELINE),yes) |
14640d0688d3
Make timeline stuff optional.
Matti Hamalainen <ccr@tnsp.org>
parents:
572
diff
changeset
|
38 DM_CFLAGS+=-DDM_USE_TIMELINE |
14640d0688d3
Make timeline stuff optional.
Matti Hamalainen <ccr@tnsp.org>
parents:
572
diff
changeset
|
39 DMLIB_OBJS += dmtimeline.o dmtimelinew.o |
14640d0688d3
Make timeline stuff optional.
Matti Hamalainen <ccr@tnsp.org>
parents:
572
diff
changeset
|
40 |
344 | 41 ifeq ($(DM_BUILD_EDITOR),yes) |
42 ifneq ($(DEMO_BIN),) | |
43 BINARIES += ed_$(DEMO_BIN) | |
563
1483cd1cf0e6
Fix build by moving moc_* from TARGETS to TMPFILES.
Matti Hamalainen <ccr@tnsp.org>
parents:
562
diff
changeset
|
44 TARGETS += $(EDITOR_MAKEFILE) $(EDITOR_PRO) |
1483cd1cf0e6
Fix build by moving moc_* from TARGETS to TMPFILES.
Matti Hamalainen <ccr@tnsp.org>
parents:
562
diff
changeset
|
45 TMPFILES += $(OBJPATH)moc_* |
344 | 46 endif |
47 endif | |
573
14640d0688d3
Make timeline stuff optional.
Matti Hamalainen <ccr@tnsp.org>
parents:
572
diff
changeset
|
48 endif |
344 | 49 |
370
7e640b1f990b
Fix build process for out of tree builds.
Matti Hamalainen <ccr@tnsp.org>
parents:
357
diff
changeset
|
50 EDITOR_PRO = editor.pro |
7e640b1f990b
Fix build process for out of tree builds.
Matti Hamalainen <ccr@tnsp.org>
parents:
357
diff
changeset
|
51 EDITOR_MAKEFILE = Makefile.editor |
653
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
52 EDITOR_SOURCES = editor/edmain.cpp editor/edgui.cpp editor/edview.cpp \ |
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
53 editor/edtlobj.cpp editor/edtimeline.cpp editor/edwaveform.cpp \ |
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
54 editor/edres.cpp |
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
55 EDITOR_HEADERS = editor/edmain.h editor/edtlobj.h editor/edview.h \ |
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
56 editor/edtimeline.h editor/edwaveform.h editor/edres.h |
344 | 57 |
58 | |
0 | 59 ### |
60 ### Form additional compilation defines based on settings | |
61 ### | |
62 | |
63 # Enable SIMD routines, if requested | |
64 ifeq ($(DM_USE_SIMD),yes) | |
284
d47e8cafaa63
Add -msse2 if DM_USE_SIMD is enabled.
Matti Hamalainen <ccr@tnsp.org>
parents:
242
diff
changeset
|
65 DM_CFLAGS+=-DDM_USE_SIMD -msse2 |
0 | 66 endif |
67 | |
105
d5d27f262227
Beging merging of dmsimple2-fork into the main "engine".
Matti Hamalainen <ccr@tnsp.org>
parents:
95
diff
changeset
|
68 # Enable Tremor Ogg Vorbis decoder |
d5d27f262227
Beging merging of dmsimple2-fork into the main "engine".
Matti Hamalainen <ccr@tnsp.org>
parents:
95
diff
changeset
|
69 ifeq ($(DM_USE_TREMOR),yes) |
d5d27f262227
Beging merging of dmsimple2-fork into the main "engine".
Matti Hamalainen <ccr@tnsp.org>
parents:
95
diff
changeset
|
70 DM_CFLAGS+=-DDM_USE_TREMOR $(TREMOR_CFLAGS) |
d5d27f262227
Beging merging of dmsimple2-fork into the main "engine".
Matti Hamalainen <ccr@tnsp.org>
parents:
95
diff
changeset
|
71 DM_LDFLAGS+=$(TREMOR_LDFLAGS) |
d5d27f262227
Beging merging of dmsimple2-fork into the main "engine".
Matti Hamalainen <ccr@tnsp.org>
parents:
95
diff
changeset
|
72 endif |
d5d27f262227
Beging merging of dmsimple2-fork into the main "engine".
Matti Hamalainen <ccr@tnsp.org>
parents:
95
diff
changeset
|
73 |
0 | 74 |
75 ### | |
76 ### Filesystem | |
77 ### | |
124
d5cfd29c87c4
Rename some conditional compilation directives.
Matti Hamalainen <ccr@tnsp.org>
parents:
105
diff
changeset
|
78 ifeq ($(DM_USE_PACKFS),yes) |
166
112eb95f2fba
Improve build system granularity.
Matti Hamalainen <ccr@tnsp.org>
parents:
164
diff
changeset
|
79 BUILD_RES=yes |
986
a25b6da1c4a8
Begin process of making zlib optional for some things.
Matti Hamalainen <ccr@tnsp.org>
parents:
978
diff
changeset
|
80 DM_CFLAGS += -DDM_USE_PACKFS |
952
ffdae9cd81de
Remove the dmpackutil module, move the code to packed utility
Matti Hamalainen <ccr@tnsp.org>
parents:
949
diff
changeset
|
81 DMLIB_OBJS += dmpack.o |
2
9a8355b47e1c
Various improvements in the build system to add granularity
Matti Hamalainen <ccr@tnsp.org>
parents:
1
diff
changeset
|
82 ifeq ($(DM_BUILD_TOOLS),yes) |
502
e1526854e735
Add install target for Unix Makefile that installs tool binaries only, to
Matti Hamalainen <ccr@tnsp.org>
parents:
496
diff
changeset
|
83 TOOL_BINARIES += packed |
0 | 84 endif |
2
9a8355b47e1c
Various improvements in the build system to add granularity
Matti Hamalainen <ccr@tnsp.org>
parents:
1
diff
changeset
|
85 endif |
0 | 86 |
124
d5cfd29c87c4
Rename some conditional compilation directives.
Matti Hamalainen <ccr@tnsp.org>
parents:
105
diff
changeset
|
87 ifeq ($(DM_USE_STDIO),yes) |
166
112eb95f2fba
Improve build system granularity.
Matti Hamalainen <ccr@tnsp.org>
parents:
164
diff
changeset
|
88 BUILD_RES=yes |
124
d5cfd29c87c4
Rename some conditional compilation directives.
Matti Hamalainen <ccr@tnsp.org>
parents:
105
diff
changeset
|
89 DM_CFLAGS += -DDM_USE_STDIO |
0 | 90 endif |
91 | |
166
112eb95f2fba
Improve build system granularity.
Matti Hamalainen <ccr@tnsp.org>
parents:
164
diff
changeset
|
92 ifeq ($(DM_USE_MEMIO),yes) |
112eb95f2fba
Improve build system granularity.
Matti Hamalainen <ccr@tnsp.org>
parents:
164
diff
changeset
|
93 BUILD_RES=yes |
112eb95f2fba
Improve build system granularity.
Matti Hamalainen <ccr@tnsp.org>
parents:
164
diff
changeset
|
94 DM_CFLAGS += -DDM_USE_MEMIO |
112eb95f2fba
Improve build system granularity.
Matti Hamalainen <ccr@tnsp.org>
parents:
164
diff
changeset
|
95 endif |
112eb95f2fba
Improve build system granularity.
Matti Hamalainen <ccr@tnsp.org>
parents:
164
diff
changeset
|
96 |
112eb95f2fba
Improve build system granularity.
Matti Hamalainen <ccr@tnsp.org>
parents:
164
diff
changeset
|
97 ifeq ($(BUILD_RES),yes) |
112eb95f2fba
Improve build system granularity.
Matti Hamalainen <ccr@tnsp.org>
parents:
164
diff
changeset
|
98 DMLIB_OBJS += dmres.o dmresw.o |
112eb95f2fba
Improve build system granularity.
Matti Hamalainen <ccr@tnsp.org>
parents:
164
diff
changeset
|
99 endif |
0 | 100 |
101 ### | |
102 ### Graphics support | |
103 ### | |
104 | |
105 ifeq ($(DM_GFX_MISC),yes) | |
106 DM_CFLAGS += -DDM_GFX_MISC | |
107 DMLIB_OBJS += dmgfx.o | |
108 endif | |
109 | |
110 ifeq ($(DM_GFX_LINES),yes) | |
111 DM_CFLAGS += -DDM_GFX_LINES | |
112 DMLIB_OBJS += dmline.o | |
113 endif | |
114 | |
115 ifeq ($(DM_GFX_BLITS),yes) | |
116 DM_CFLAGS += -DDM_GFX_BLITS | |
117 DMLIB_OBJS += dmblit.o | |
118 endif | |
119 | |
60
f28cd66356f6
Initial work for bitmapped fonts and text drawing. Also moved TTF header
Matti Hamalainen <ccr@tnsp.org>
parents:
59
diff
changeset
|
120 ifeq ($(DM_GFX_BM_TEXT),yes) |
f28cd66356f6
Initial work for bitmapped fonts and text drawing. Also moved TTF header
Matti Hamalainen <ccr@tnsp.org>
parents:
59
diff
changeset
|
121 DM_CFLAGS += -DDM_GFX_BM_TEXT |
64
ad1ef3f0d474
More work on the text subsystem.
Matti Hamalainen <ccr@tnsp.org>
parents:
60
diff
changeset
|
122 DMLIB_OBJS += dmtext_bm.o |
160 | 123 ifeq ($(DM_BUILD_TOOLS),yes) |
166
112eb95f2fba
Improve build system granularity.
Matti Hamalainen <ccr@tnsp.org>
parents:
164
diff
changeset
|
124 ifeq ($(DM_USE_STDIO),yes) |
502
e1526854e735
Add install target for Unix Makefile that installs tool binaries only, to
Matti Hamalainen <ccr@tnsp.org>
parents:
496
diff
changeset
|
125 TOOL_BINARIES += fontconv |
160 | 126 endif |
60
f28cd66356f6
Initial work for bitmapped fonts and text drawing. Also moved TTF header
Matti Hamalainen <ccr@tnsp.org>
parents:
59
diff
changeset
|
127 endif |
166
112eb95f2fba
Improve build system granularity.
Matti Hamalainen <ccr@tnsp.org>
parents:
164
diff
changeset
|
128 endif |
60
f28cd66356f6
Initial work for bitmapped fonts and text drawing. Also moved TTF header
Matti Hamalainen <ccr@tnsp.org>
parents:
59
diff
changeset
|
129 |
0 | 130 ifeq ($(DM_GFX_TTF_TEXT),yes) |
131 DM_CFLAGS += -DDM_GFX_TTF_TEXT | |
64
ad1ef3f0d474
More work on the text subsystem.
Matti Hamalainen <ccr@tnsp.org>
parents:
60
diff
changeset
|
132 DMLIB_OBJS += dmtext_ttf.o |
0 | 133 |
690
84811c6dd32d
Added Auval with removed Lua dependancy, using dmeval only.
Matti Hamalainen <ccr@tnsp.org>
parents:
668
diff
changeset
|
134 ifeq ($(DM_BUILD_TOOLS),yes) |
84811c6dd32d
Added Auval with removed Lua dependancy, using dmeval only.
Matti Hamalainen <ccr@tnsp.org>
parents:
668
diff
changeset
|
135 ifeq ($(DM_GFX_BLITS),yes) |
84811c6dd32d
Added Auval with removed Lua dependancy, using dmeval only.
Matti Hamalainen <ccr@tnsp.org>
parents:
668
diff
changeset
|
136 TOOL_BINARIES += auval |
84811c6dd32d
Added Auval with removed Lua dependancy, using dmeval only.
Matti Hamalainen <ccr@tnsp.org>
parents:
668
diff
changeset
|
137 endif |
84811c6dd32d
Added Auval with removed Lua dependancy, using dmeval only.
Matti Hamalainen <ccr@tnsp.org>
parents:
668
diff
changeset
|
138 endif |
84811c6dd32d
Added Auval with removed Lua dependancy, using dmeval only.
Matti Hamalainen <ccr@tnsp.org>
parents:
668
diff
changeset
|
139 |
2
9a8355b47e1c
Various improvements in the build system to add granularity
Matti Hamalainen <ccr@tnsp.org>
parents:
1
diff
changeset
|
140 ifeq ($(DM_BUILD_TESTS),yes) |
0 | 141 ifeq ($(DM_GFX_BLITS),yes) |
166
112eb95f2fba
Improve build system granularity.
Matti Hamalainen <ccr@tnsp.org>
parents:
164
diff
changeset
|
142 ifeq ($(DM_USE_STDIO),yes) |
959 | 143 TESTS_BINARIES += blittest efu |
0 | 144 endif |
145 endif | |
2
9a8355b47e1c
Various improvements in the build system to add granularity
Matti Hamalainen <ccr@tnsp.org>
parents:
1
diff
changeset
|
146 endif |
166
112eb95f2fba
Improve build system granularity.
Matti Hamalainen <ccr@tnsp.org>
parents:
164
diff
changeset
|
147 endif |
0 | 148 |
149 ifeq ($(DM_GFX_8BIT),yes) | |
150 DM_CFLAGS += -DDM_GFX_8BIT | |
151 endif | |
152 | |
153 ifeq ($(DM_GFX_15BIT),yes) | |
154 DM_CFLAGS += -DDM_GFX_15BIT | |
155 endif | |
156 | |
157 ifeq ($(DM_GFX_16BIT),yes) | |
158 DM_CFLAGS += -DDM_GFX_15BIT | |
159 endif | |
160 | |
161 ifeq ($(DM_GFX_32BIT),yes) | |
162 DM_CFLAGS += -DDM_GFX_15BIT | |
163 endif | |
164 | |
165 | |
166 ### | |
167 ### miniJSS | |
168 ### | |
658
c430112449a7
Move miniJSS into a subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
655
diff
changeset
|
169 MINIJSS=$(DMLIB)/minijss/ |
c430112449a7
Move miniJSS into a subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
655
diff
changeset
|
170 |
c430112449a7
Move miniJSS into a subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
655
diff
changeset
|
171 |
0 | 172 ifeq ($(JSS),yes) |
658
c430112449a7
Move miniJSS into a subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
655
diff
changeset
|
173 DM_CFLAGS+=-DDM_USE_JSS -I$(MINIJSS) |
0 | 174 |
175 ifeq ($(JSS_LIGHT),yes) | |
176 DM_CFLAGS+=-DJSS_LIGHT -Os | |
177 else | |
178 ifeq ($(JSS_USE_ASSERTS),yes) | |
179 DM_CFLAGS+=-DJSS_USE_ASSERTS | |
180 endif | |
181 ifeq ($(JSS_DEBUG),yes) | |
182 DM_CFLAGS+=-DJSS_DEBUG | |
183 endif | |
184 endif | |
185 | |
49
033c660c25f5
Restructure module playing, removing 8bit sample mixing (output can still be
Matti Hamalainen <ccr@tnsp.org>
parents:
34
diff
changeset
|
186 ifeq ($(JSS_MIX_FP),yes) |
033c660c25f5
Restructure module playing, removing 8bit sample mixing (output can still be
Matti Hamalainen <ccr@tnsp.org>
parents:
34
diff
changeset
|
187 DM_CFLAGS+=-DJSS_MIX_FP |
033c660c25f5
Restructure module playing, removing 8bit sample mixing (output can still be
Matti Hamalainen <ccr@tnsp.org>
parents:
34
diff
changeset
|
188 endif |
033c660c25f5
Restructure module playing, removing 8bit sample mixing (output can still be
Matti Hamalainen <ccr@tnsp.org>
parents:
34
diff
changeset
|
189 |
0 | 190 ifeq ($(JSS_SUP_THREADS),yes) |
191 DM_CFLAGS+=-DJSS_SUP_THREADS | |
192 endif | |
193 | |
194 | |
195 SUP_MODLOAD=no | |
196 ifeq ($(JSS_SUP_XM),yes) | |
197 SUP_MODLOAD=yes | |
198 DMLIB_OBJS+= jloadxm.o | |
199 DM_CFLAGS+=-DJSS_SUP_XM | |
200 endif | |
201 | |
202 ifeq ($(JSS_SUP_JSSMOD),yes) | |
203 SUP_MODLOAD=yes | |
204 DMLIB_OBJS+= jloadjss.o | |
205 DM_CFLAGS+=-DJSS_SUP_JSSMOD $(JSSMOD_FLAGS) | |
206 endif | |
207 | |
208 ifeq ($(DM_USE_C),yes) | |
844
5ea0bf4379b1
Oops, -DDM_USE_C was not in the build process ...
Matti Hamalainen <ccr@tnsp.org>
parents:
842
diff
changeset
|
209 DM_CFLAGS+=-DDM_USE_C |
658
c430112449a7
Move miniJSS into a subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
655
diff
changeset
|
210 TARGETS += $(MINIJSS)jmix_c.c |
0 | 211 DMLIB_OBJS+=jmix_c.o |
212 endif | |
213 | |
214 #ifeq ($(DM_USE_SIMD),yes) | |
215 #DMLIB_OBJS+=jmix_simd.o | |
216 #endif | |
217 | |
572 | 218 ifeq ($(DM_BUILD_TOOLS),yes) |
219 ifeq ($(DM_USE_STDIO),yes) | |
220 ifeq ($(JSS_SUP_JSSMOD),yes) | |
221 ifeq ($(JSS_SUP_XM),yes) | |
222 TOOL_BINARIES+= xm2jss | |
223 endif | |
224 endif | |
225 endif | |
226 endif | |
227 DMLIB_OBJS += jss.o jssmix.o jssmod.o jssplr.o | |
228 endif | |
229 | |
0 | 230 |
231 ### Dependancies | |
2
9a8355b47e1c
Various improvements in the build system to add granularity
Matti Hamalainen <ccr@tnsp.org>
parents:
1
diff
changeset
|
232 ifeq ($(DM_BUILD_TOOLS),yes) |
912
70cbbd5b7aea
Moved lib64gfx files under tools, as it's not generic DMLIB module really.
Matti Hamalainen <ccr@tnsp.org>
parents:
898
diff
changeset
|
233 DMLIB_OBJS += libgfx.o |
124
d5cfd29c87c4
Rename some conditional compilation directives.
Matti Hamalainen <ccr@tnsp.org>
parents:
105
diff
changeset
|
234 ifeq ($(DM_USE_STDIO),yes) |
502
e1526854e735
Add install target for Unix Makefile that installs tool binaries only, to
Matti Hamalainen <ccr@tnsp.org>
parents:
496
diff
changeset
|
235 TOOL_BINARIES+= objlink data2inc gfxconv gentab |
0 | 236 ifeq ($(SUP_MODLOAD),yes) |
942
38cad00b41dd
Rename viewmod utility to dumpmod.
Matti Hamalainen <ccr@tnsp.org>
parents:
912
diff
changeset
|
237 TOOL_BINARIES+= dumpmod mod2wav |
667 | 238 TESTS_BINARIES+= plrtest |
407
59244a7ae37f
Move c64 utilities to the engine lib, as we benefit from a common framework.
Matti Hamalainen <ccr@tnsp.org>
parents:
403
diff
changeset
|
239 ifeq ($(DM_GFX_BLITS),yes) |
502
e1526854e735
Add install target for Unix Makefile that installs tool binaries only, to
Matti Hamalainen <ccr@tnsp.org>
parents:
496
diff
changeset
|
240 TOOL_BINARIES+= view64 |
166
112eb95f2fba
Improve build system granularity.
Matti Hamalainen <ccr@tnsp.org>
parents:
164
diff
changeset
|
241 ifeq ($(DM_GFX_BM_TEXT),yes) |
112eb95f2fba
Improve build system granularity.
Matti Hamalainen <ccr@tnsp.org>
parents:
164
diff
changeset
|
242 ifeq ($(DM_GFX_MISC),yes) |
502
e1526854e735
Add install target for Unix Makefile that installs tool binaries only, to
Matti Hamalainen <ccr@tnsp.org>
parents:
496
diff
changeset
|
243 TOOL_BINARIES+= ppl |
166
112eb95f2fba
Improve build system granularity.
Matti Hamalainen <ccr@tnsp.org>
parents:
164
diff
changeset
|
244 endif |
112eb95f2fba
Improve build system granularity.
Matti Hamalainen <ccr@tnsp.org>
parents:
164
diff
changeset
|
245 endif |
112eb95f2fba
Improve build system granularity.
Matti Hamalainen <ccr@tnsp.org>
parents:
164
diff
changeset
|
246 endif |
0 | 247 endif |
248 | |
2
9a8355b47e1c
Various improvements in the build system to add granularity
Matti Hamalainen <ccr@tnsp.org>
parents:
1
diff
changeset
|
249 endif |
9a8355b47e1c
Various improvements in the build system to add granularity
Matti Hamalainen <ccr@tnsp.org>
parents:
1
diff
changeset
|
250 endif |
9a8355b47e1c
Various improvements in the build system to add granularity
Matti Hamalainen <ccr@tnsp.org>
parents:
1
diff
changeset
|
251 |
0 | 252 |
986
a25b6da1c4a8
Begin process of making zlib optional for some things.
Matti Hamalainen <ccr@tnsp.org>
parents:
978
diff
changeset
|
253 ### libPNG handling |
421 | 254 ifeq ($(DM_USE_LIBPNG),yes) |
986
a25b6da1c4a8
Begin process of making zlib optional for some things.
Matti Hamalainen <ccr@tnsp.org>
parents:
978
diff
changeset
|
255 DM_CFLAGS += -DDM_USE_LIBPNG $(LIBPNG_CFLAGS) |
421 | 256 endif |
257 | |
986
a25b6da1c4a8
Begin process of making zlib optional for some things.
Matti Hamalainen <ccr@tnsp.org>
parents:
978
diff
changeset
|
258 |
a25b6da1c4a8
Begin process of making zlib optional for some things.
Matti Hamalainen <ccr@tnsp.org>
parents:
978
diff
changeset
|
259 ### Check requirements for zlib |
a25b6da1c4a8
Begin process of making zlib optional for some things.
Matti Hamalainen <ccr@tnsp.org>
parents:
978
diff
changeset
|
260 ifeq ($(DM_USE_ZLIB),yes) |
a25b6da1c4a8
Begin process of making zlib optional for some things.
Matti Hamalainen <ccr@tnsp.org>
parents:
978
diff
changeset
|
261 DM_CFLAGS += -DDM_USE_ZLIB $(ZLIB_CFLAGS) |
a25b6da1c4a8
Begin process of making zlib optional for some things.
Matti Hamalainen <ccr@tnsp.org>
parents:
978
diff
changeset
|
262 DEMO_LDFLAGS += $(ZLIB_LDFLAGS) |
a25b6da1c4a8
Begin process of making zlib optional for some things.
Matti Hamalainen <ccr@tnsp.org>
parents:
978
diff
changeset
|
263 else |
a25b6da1c4a8
Begin process of making zlib optional for some things.
Matti Hamalainen <ccr@tnsp.org>
parents:
978
diff
changeset
|
264 DEMO_LDFLAGS += |
a25b6da1c4a8
Begin process of making zlib optional for some things.
Matti Hamalainen <ccr@tnsp.org>
parents:
978
diff
changeset
|
265 endif |
a25b6da1c4a8
Begin process of making zlib optional for some things.
Matti Hamalainen <ccr@tnsp.org>
parents:
978
diff
changeset
|
266 DM_ZLIB_LDFLAGS = $(ZLIB_LDFLAGS) |
a25b6da1c4a8
Begin process of making zlib optional for some things.
Matti Hamalainen <ccr@tnsp.org>
parents:
978
diff
changeset
|
267 |
a25b6da1c4a8
Begin process of making zlib optional for some things.
Matti Hamalainen <ccr@tnsp.org>
parents:
978
diff
changeset
|
268 |
a25b6da1c4a8
Begin process of making zlib optional for some things.
Matti Hamalainen <ccr@tnsp.org>
parents:
978
diff
changeset
|
269 ### What tests to build? |
653
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
270 ifeq ($(DM_BUILD_TESTS),yes) |
668 | 271 TESTS_BINARIES += vecmattest fptest evaltest |
653
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
272 endif |
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
273 |
716
24096d1ef794
Make pre-built header versions of assets not depend on fontconv and
Matti Hamalainen <ccr@tnsp.org>
parents:
714
diff
changeset
|
274 FONTCONV_BIN=fontconv |
24096d1ef794
Make pre-built header versions of assets not depend on fontconv and
Matti Hamalainen <ccr@tnsp.org>
parents:
714
diff
changeset
|
275 DATA2INC_BIN=data2inc |
653
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
276 |
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
277 |
0 | 278 ### |
279 ### Rest of the rules | |
280 ### | |
334 | 281 CFLAGS += -g -W -Wall -DHAVE_STRING_H $(EXTRA_CFLAGS) |
0 | 282 CXXFLAGS=$(CFLAGS) |
283 | |
284 DM_CFLAGS += $(SDL_CFLAGS) | |
285
245b15cd1919
Don't link libSDL uselessly to utilities that do not actually use it.
Matti Hamalainen <ccr@tnsp.org>
parents:
284
diff
changeset
|
285 DM_LDFLAGS += $(LDFLAGS) |
0 | 286 |
287 | |
288 DMLIB_A=$(OBJPATH)dmlib.a | |
653
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
289 DMLIB_OBJS += \ |
978
fecf3967abee
Move lerp functions from dmlerp.c to dmcurves.c, too.
Matti Hamalainen <ccr@tnsp.org>
parents:
976
diff
changeset
|
290 dmfile.o dmbstr.o dmlib.o dmcurves.o dmstring.o \ |
59
c560703e85ed
Add resource writing functions (only work for stdio backend)
Matti Hamalainen <ccr@tnsp.org>
parents:
51
diff
changeset
|
291 dmargs.o dmvecmat.o dmperlin.o dmimage.o \ |
978
fecf3967abee
Move lerp functions from dmlerp.c to dmcurves.c, too.
Matti Hamalainen <ccr@tnsp.org>
parents:
976
diff
changeset
|
292 dmwav.o dmengine.o dmfft.o dmzlib.o |
0 | 293 |
294 | |
714
0ad76fa080ca
Improve build system by adding support for separate binary paths for
Matti Hamalainen <ccr@tnsp.org>
parents:
690
diff
changeset
|
295 TESTS_TARGETS = $(addprefix $(TESTS_BINPATH),$(addsuffix $(EXEEXT),$(TESTS_BINARIES))) |
0ad76fa080ca
Improve build system by adding support for separate binary paths for
Matti Hamalainen <ccr@tnsp.org>
parents:
690
diff
changeset
|
296 TOOL_TARGETS = $(addprefix $(TOOL_BINPATH),$(addsuffix $(EXEEXT),$(TOOL_BINARIES))) |
653
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
297 TARGETS += $(DMLIB_A) $(addprefix $(BINPATH),$(addsuffix $(EXEEXT),$(BINARIES))) \ |
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
298 $(TOOL_TARGETS) $(TESTS_TARGETS) |
0 | 299 |
880 | 300 NONBUILD += $(OBJPATH) $(BINPATH) |
841 | 301 |
302 | |
303 all: $(NONBUILD) $(TARGETS) | |
304 | |
0 | 305 |
306 ### | |
307 ### Generic rules | |
308 ### | |
841 | 309 $(OBJPATH): |
310 $(MKDIR_P) $@ | |
311 | |
312 $(BINPATH): | |
313 $(MKDIR_P) $@ | |
314 | |
315 | |
812
1e5cf1144f36
Move library source under src/ subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
749
diff
changeset
|
316 $(OBJPATH)%.d: $(DMLIBSRC)%.c |
322
148e981739f4
Add the (unfinished) timeline code to the build.
Matti Hamalainen <ccr@tnsp.org>
parents:
308
diff
changeset
|
317 @echo > $@ |
665
f9a3b0e8f0fc
Clean up build system a bit.
Matti Hamalainen <ccr@tnsp.org>
parents:
660
diff
changeset
|
318 @grep '#\s*include\s*\"' $< | sed 's/#\s*include\s\s*"\(.*\)"/\1/' | \ |
f9a3b0e8f0fc
Clean up build system a bit.
Matti Hamalainen <ccr@tnsp.org>
parents:
660
diff
changeset
|
319 while read i; do if test -e "$$i"; then echo "$$i" >> $@; fi; done |
322
148e981739f4
Add the (unfinished) timeline code to the build.
Matti Hamalainen <ccr@tnsp.org>
parents:
308
diff
changeset
|
320 |
0 | 321 |
658
c430112449a7
Move miniJSS into a subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
655
diff
changeset
|
322 $(OBJPATH)%.o: $(MINIJSS)%.c $(MINIJSS)%.h |
c430112449a7
Move miniJSS into a subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
655
diff
changeset
|
323 @echo " CC $<" |
c430112449a7
Move miniJSS into a subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
655
diff
changeset
|
324 @$(CC) $(CFLAGS) -c -o $@ $< $(DM_CFLAGS) |
c430112449a7
Move miniJSS into a subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
655
diff
changeset
|
325 |
c430112449a7
Move miniJSS into a subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
655
diff
changeset
|
326 $(OBJPATH)%.o: $(MINIJSS)%.c |
c430112449a7
Move miniJSS into a subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
655
diff
changeset
|
327 @echo " CC $<" |
c430112449a7
Move miniJSS into a subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
655
diff
changeset
|
328 @$(CC) $(CFLAGS) -c -o $@ $< $(DM_CFLAGS) |
c430112449a7
Move miniJSS into a subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
655
diff
changeset
|
329 |
c430112449a7
Move miniJSS into a subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
655
diff
changeset
|
330 |
653
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
331 $(OBJPATH)%.o: $(DMLIB)tests/%.c $(DMLIB)tests/%.h |
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
332 @echo " CC $<" |
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
333 @$(CC) $(CFLAGS) -c -o $@ $< $(DM_CFLAGS) |
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
334 |
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
335 $(OBJPATH)%.o: $(DMLIB)tests/%.c |
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
336 @echo " CC $<" |
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
337 @$(CC) $(CFLAGS) -c -o $@ $< $(DM_CFLAGS) |
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
338 |
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
339 |
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
340 $(OBJPATH)%.o: $(DMLIB)tools/%.c $(DMLIB)tools/%.h |
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
341 @echo " CC $<" |
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
342 @$(CC) $(CFLAGS) -c -o $@ $< $(DM_CFLAGS) |
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
343 |
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
344 $(OBJPATH)%.o: $(DMLIB)tools/%.c |
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
345 @echo " CC $<" |
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
346 @$(CC) $(CFLAGS) -c -o $@ $< $(DM_CFLAGS) |
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
347 |
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
348 |
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
349 |
812
1e5cf1144f36
Move library source under src/ subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
749
diff
changeset
|
350 $(OBJPATH)%.o: $(DMLIBSRC)%.c $(DMLIBSRC)%.h |
0 | 351 @echo " CC $<" |
352 @$(CC) $(CFLAGS) -c -o $@ $< $(DM_CFLAGS) | |
353 | |
812
1e5cf1144f36
Move library source under src/ subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
749
diff
changeset
|
354 $(OBJPATH)%.o: $(DMLIBSRC)%.c |
0 | 355 @echo " CC $<" |
356 @$(CC) $(CFLAGS) -c -o $@ $< $(DM_CFLAGS) | |
357 | |
812
1e5cf1144f36
Move library source under src/ subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
749
diff
changeset
|
358 |
3 | 359 $(OBJPATH)%.o: %.c %.h |
360 @echo " CC $<" | |
361 @$(CC) $(CFLAGS) -c -o $@ $< $(DM_CFLAGS) | |
362 | |
363 $(OBJPATH)%.o: %.c | |
364 @echo " CC $<" | |
365 @$(CC) $(CFLAGS) -c -o $@ $< $(DM_CFLAGS) | |
366 | |
0 | 367 |
368 ### | |
369 ### dmlib rules | |
370 ### | |
371 | |
658
c430112449a7
Move miniJSS into a subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
655
diff
changeset
|
372 $(MINIJSS)jmix_c.c: $(MINIJSS)jmix_c_in.c $(MINIJSS)jmixtmpl_c.h $(MINIJSS)jmix_post_c.h |
51
36e2f910219c
A non-working implementation of floating point audio mixing.
Matti Hamalainen <ccr@tnsp.org>
parents:
49
diff
changeset
|
373 (echo "#include \"jssmix.h\"" && cpp $< $(DM_CFLAGS)) | sed "s/^# .*//g" > $@ |
34
7908061da010
Fix building of JSS mixer parts.
Matti Hamalainen <ccr@tnsp.org>
parents:
32
diff
changeset
|
374 |
812
1e5cf1144f36
Move library source under src/ subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
749
diff
changeset
|
375 $(OBJPATH)dmimage.o: $(DMLIBSRC)dmimage.c $(DMLIBSRC)stb_image.c $(DMLIBSRC)dmimage.h |
0 | 376 @echo " CC $+" |
377 @$(CC) $(CFLAGS) -c -o $@ $< $(DM_CFLAGS) | |
378 | |
597
8a9361179a1a
More work on the video setup screen.
Matti Hamalainen <ccr@tnsp.org>
parents:
587
diff
changeset
|
379 |
658
c430112449a7
Move miniJSS into a subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
655
diff
changeset
|
380 $(OBJPATH)jssmod.o: $(MINIJSS)jssmod.c $(MINIJSS)jssmod.h $(MINIJSS)jss.h |
192 | 381 @echo " CC $+" |
382 @$(CC) $(CFLAGS) -c -o $@ $< $(DM_CFLAGS) | |
383 | |
658
c430112449a7
Move miniJSS into a subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
655
diff
changeset
|
384 $(OBJPATH)jssplr.o: $(MINIJSS)jssplr.c $(MINIJSS)jssplr.h $(MINIJSS)jss.h $(MINIJSS)jssmod.h $(MINIJSS)jssmix.h |
192 | 385 @echo " CC $+" |
386 @$(CC) $(CFLAGS) -c -o $@ $< $(DM_CFLAGS) | |
387 | |
658
c430112449a7
Move miniJSS into a subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
655
diff
changeset
|
388 $(OBJPATH)jssmix.o: $(MINIJSS)jssmix.c $(MINIJSS)jssmix.h $(MINIJSS)jss.h |
192 | 389 @echo " CC $+" |
390 @$(CC) $(CFLAGS) -c -o $@ $< $(DM_CFLAGS) | |
391 | |
812
1e5cf1144f36
Move library source under src/ subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
749
diff
changeset
|
392 $(OBJPATH)dmblit.o: $(DMLIBSRC)dmblit.c $(DMLIBSRC)dmscaledblit.h $(DMLIBSRC)dmunscaledblit.h $(DMLIBSRC)dmblitfunc.h $(DMLIBSRC)dmlib.h |
0 | 393 @echo " CC $+" |
394 @$(CC) $(CFLAGS) -c -o $@ $< $(DM_CFLAGS) | |
395 | |
812
1e5cf1144f36
Move library source under src/ subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
749
diff
changeset
|
396 $(OBJPATH)dmline.o: $(DMLIBSRC)dmline.c $(DMLIBSRC)dmdrawline.h $(DMLIBSRC)dmlinefunc.h $(DMLIBSRC)dmlineclip.h $(DMLIBSRC)dmlib.h |
0 | 397 @echo " CC $+" |
398 @$(CC) $(CFLAGS) -c -o $@ $< $(DM_CFLAGS) | |
399 | |
812
1e5cf1144f36
Move library source under src/ subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
749
diff
changeset
|
400 $(OBJPATH)dmargs.o: $(DMLIBSRC)dmargs.c $(DMLIBSRC)dmargs.h $(DMLIBSRC)dmargs_int.c $(DMLIBSRC)dmlib.h |
0 | 401 @echo " CC $+" |
402 @$(CC) $(CFLAGS) -c -o $@ $< $(DM_CFLAGS) | |
403 | |
812
1e5cf1144f36
Move library source under src/ subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
749
diff
changeset
|
404 $(OBJPATH)libgfx.o: $(DMLIBSRC)libgfx.c $(DMLIBSRC)libgfx.h |
435 | 405 @echo " CC $+" |
406 @$(CC) $(CFLAGS) -c -o $@ $< $(DM_CFLAGS) $(LIBPNG_CFLAGS) | |
407 | |
0 | 408 |
716
24096d1ef794
Make pre-built header versions of assets not depend on fontconv and
Matti Hamalainen <ccr@tnsp.org>
parents:
714
diff
changeset
|
409 $(DMLIB)assets/SetupFont.dmf: $(DMLIB)assets/SetupFont.fnt |
606
a0082ce261c8
Add setup menu bar image conversion to build process, move some things around.
Matti Hamalainen <ccr@tnsp.org>
parents:
598
diff
changeset
|
410 $(FONTCONV_BIN) -o $@ $< |
a0082ce261c8
Add setup menu bar image conversion to build process, move some things around.
Matti Hamalainen <ccr@tnsp.org>
parents:
598
diff
changeset
|
411 |
812
1e5cf1144f36
Move library source under src/ subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
749
diff
changeset
|
412 $(DMLIBSRC)setupfont.h: $(DMLIB)assets/SetupFont.dmf |
660
fc5e3e6d9097
Make converted asset headers have no comment.
Matti Hamalainen <ccr@tnsp.org>
parents:
659
diff
changeset
|
413 $(DATA2INC_BIN) -q -C -n engineSetupFont -t Uint8 $< $@ |
606
a0082ce261c8
Add setup menu bar image conversion to build process, move some things around.
Matti Hamalainen <ccr@tnsp.org>
parents:
598
diff
changeset
|
414 |
812
1e5cf1144f36
Move library source under src/ subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
749
diff
changeset
|
415 $(DMLIBSRC)setupimage.h: $(DMLIB)assets/SetupImage.png |
660
fc5e3e6d9097
Make converted asset headers have no comment.
Matti Hamalainen <ccr@tnsp.org>
parents:
659
diff
changeset
|
416 $(DATA2INC_BIN) -q -C -n engineSetupImage -t Uint8 $< $@ |
606
a0082ce261c8
Add setup menu bar image conversion to build process, move some things around.
Matti Hamalainen <ccr@tnsp.org>
parents:
598
diff
changeset
|
417 |
812
1e5cf1144f36
Move library source under src/ subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
749
diff
changeset
|
418 $(DMLIBSRC)setupmenubar.h: $(DMLIB)assets/SetupMenuBar.png |
660
fc5e3e6d9097
Make converted asset headers have no comment.
Matti Hamalainen <ccr@tnsp.org>
parents:
659
diff
changeset
|
419 $(DATA2INC_BIN) -q -C -n engineSetupMenuBar -t Uint8 $< $@ |
606
a0082ce261c8
Add setup menu bar image conversion to build process, move some things around.
Matti Hamalainen <ccr@tnsp.org>
parents:
598
diff
changeset
|
420 |
659
bfad79dc1740
Fix build process depencies for asset conversions.
Matti Hamalainen <ccr@tnsp.org>
parents:
658
diff
changeset
|
421 |
812
1e5cf1144f36
Move library source under src/ subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
749
diff
changeset
|
422 $(OBJPATH)dmsimple.o: $(DMLIBSRC)dmsimple.c $(DMLIBSRC)dmengine.h \ |
1e5cf1144f36
Move library source under src/ subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
749
diff
changeset
|
423 $(DMLIBSRC)setupmenubar.h $(DMLIBSRC)setupfont.h \ |
1e5cf1144f36
Move library source under src/ subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
749
diff
changeset
|
424 $(DMLIBSRC)setupimage.h $(DMLIBSRC)dmsimple.c |
606
a0082ce261c8
Add setup menu bar image conversion to build process, move some things around.
Matti Hamalainen <ccr@tnsp.org>
parents:
598
diff
changeset
|
425 @echo " CC $+" |
a0082ce261c8
Add setup menu bar image conversion to build process, move some things around.
Matti Hamalainen <ccr@tnsp.org>
parents:
598
diff
changeset
|
426 @$(CC) $(CFLAGS) -c -o $@ $< $(DM_CFLAGS) |
a0082ce261c8
Add setup menu bar image conversion to build process, move some things around.
Matti Hamalainen <ccr@tnsp.org>
parents:
598
diff
changeset
|
427 |
a0082ce261c8
Add setup menu bar image conversion to build process, move some things around.
Matti Hamalainen <ccr@tnsp.org>
parents:
598
diff
changeset
|
428 |
2
9a8355b47e1c
Various improvements in the build system to add granularity
Matti Hamalainen <ccr@tnsp.org>
parents:
1
diff
changeset
|
429 $(DMLIB_A): $(addprefix $(OBJPATH),$(DMLIB_OBJS)) $(DMLIB)Makefile.gen config.mak |
0 | 430 @echo " AR $@ $(addprefix $(OBJPATH),$(DMLIB_OBJS))" |
522
2a70f5902b70
Objects being added twice to the lib archive fixed.
Matti Hamalainen <ccr@tnsp.org>
parents:
502
diff
changeset
|
431 @$(AR) cru $@ $(addprefix $(OBJPATH),$(DMLIB_OBJS)) |
0 | 432 @$(RANLIB) $@ |
433 | |
28
920fb22cffcf
Fix build process for jmix_c.c dependancy.
Matti Hamalainen <ccr@tnsp.org>
parents:
7
diff
changeset
|
434 |
0 | 435 |
436 ### | |
665
f9a3b0e8f0fc
Clean up build system a bit.
Matti Hamalainen <ccr@tnsp.org>
parents:
660
diff
changeset
|
437 ### Tests |
0 | 438 ### |
714
0ad76fa080ca
Improve build system by adding support for separate binary paths for
Matti Hamalainen <ccr@tnsp.org>
parents:
690
diff
changeset
|
439 $(TESTS_BINPATH)blittest$(EXEEXT): $(OBJPATH)blittest.o $(DMLIB_A) |
0 | 440 @echo " LINK $+" |
891
fface5a23b2a
Link to -lm and fix to match changes in dmperlin.
Matti Hamalainen <ccr@tnsp.org>
parents:
887
diff
changeset
|
441 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(SDL_LDFLAGS) $(SDL_TTF_LDFLAGS) -lm |
0 | 442 |
714
0ad76fa080ca
Improve build system by adding support for separate binary paths for
Matti Hamalainen <ccr@tnsp.org>
parents:
690
diff
changeset
|
443 $(TESTS_BINPATH)efu$(EXEEXT): $(OBJPATH)efu.o $(DMLIB_A) |
0 | 444 @echo " LINK $+" |
986
a25b6da1c4a8
Begin process of making zlib optional for some things.
Matti Hamalainen <ccr@tnsp.org>
parents:
978
diff
changeset
|
445 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(SDL_LDFLAGS) $(SDL_TTF_LDFLAGS) $(DM_ZLIB_LDFLAGS) -lm |
0 | 446 |
714
0ad76fa080ca
Improve build system by adding support for separate binary paths for
Matti Hamalainen <ccr@tnsp.org>
parents:
690
diff
changeset
|
447 $(TESTS_BINPATH)vptest$(EXEEXT): $(OBJPATH)vptest.o $(DMLIB_A) |
0 | 448 @echo " LINK $+" |
891
fface5a23b2a
Link to -lm and fix to match changes in dmperlin.
Matti Hamalainen <ccr@tnsp.org>
parents:
887
diff
changeset
|
449 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(SDL_LDFLAGS) $(SDL_TTF_LDFLAGS) -lm |
0 | 450 |
724
12ddeef948fc
Move dm_print_optree() to dmevalw.c
Matti Hamalainen <ccr@tnsp.org>
parents:
716
diff
changeset
|
451 $(TESTS_BINPATH)evaltest$(EXEEXT): $(OBJPATH)evaltest.o $(OBJPATH)dmeval.o $(OBJPATH)dmevalw.o $(DMLIB_A) |
668 | 452 @echo " LINK $+" |
453 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) -lm | |
454 | |
714
0ad76fa080ca
Improve build system by adding support for separate binary paths for
Matti Hamalainen <ccr@tnsp.org>
parents:
690
diff
changeset
|
455 $(TESTS_BINPATH)%test$(EXEEXT): $(OBJPATH)%test.o $(DMLIB_A) |
0 | 456 @echo " LINK $+" |
285
245b15cd1919
Don't link libSDL uselessly to utilities that do not actually use it.
Matti Hamalainen <ccr@tnsp.org>
parents:
284
diff
changeset
|
457 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) -lm |
0 | 458 |
714
0ad76fa080ca
Improve build system by adding support for separate binary paths for
Matti Hamalainen <ccr@tnsp.org>
parents:
690
diff
changeset
|
459 $(TESTS_BINPATH)plrtest$(EXEEXT): $(OBJPATH)plrtest.o $(DMLIB_A) |
653
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
460 @echo " LINK $+" |
986
a25b6da1c4a8
Begin process of making zlib optional for some things.
Matti Hamalainen <ccr@tnsp.org>
parents:
978
diff
changeset
|
461 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(SDL_LDFLAGS) $(DM_ZLIB_LDFLAGS) -lm |
653
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
462 |
469119cab5b2
More cleanup work. Build is broken for now.
Matti Hamalainen <ccr@tnsp.org>
parents:
624
diff
changeset
|
463 |
665
f9a3b0e8f0fc
Clean up build system a bit.
Matti Hamalainen <ccr@tnsp.org>
parents:
660
diff
changeset
|
464 ### |
f9a3b0e8f0fc
Clean up build system a bit.
Matti Hamalainen <ccr@tnsp.org>
parents:
660
diff
changeset
|
465 ### Tools |
f9a3b0e8f0fc
Clean up build system a bit.
Matti Hamalainen <ccr@tnsp.org>
parents:
660
diff
changeset
|
466 ### |
716
24096d1ef794
Make pre-built header versions of assets not depend on fontconv and
Matti Hamalainen <ccr@tnsp.org>
parents:
714
diff
changeset
|
467 $(TOOL_BINPATH)fontconv$(EXEEXT): $(OBJPATH)fontconv.o $(DMLIB_A) |
665
f9a3b0e8f0fc
Clean up build system a bit.
Matti Hamalainen <ccr@tnsp.org>
parents:
660
diff
changeset
|
468 @echo " LINK $+" |
986
a25b6da1c4a8
Begin process of making zlib optional for some things.
Matti Hamalainen <ccr@tnsp.org>
parents:
978
diff
changeset
|
469 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(SDL_LDFLAGS) $(SDL_TTF_LDFLAGS) $(DM_ZLIB_LDFLAGS) -lm |
665
f9a3b0e8f0fc
Clean up build system a bit.
Matti Hamalainen <ccr@tnsp.org>
parents:
660
diff
changeset
|
470 |
716
24096d1ef794
Make pre-built header versions of assets not depend on fontconv and
Matti Hamalainen <ccr@tnsp.org>
parents:
714
diff
changeset
|
471 $(TOOL_BINPATH)data2inc$(EXEEXT): $(OBJPATH)data2inc.o $(DMLIB_A) |
665
f9a3b0e8f0fc
Clean up build system a bit.
Matti Hamalainen <ccr@tnsp.org>
parents:
660
diff
changeset
|
472 @echo " LINK $+" |
f9a3b0e8f0fc
Clean up build system a bit.
Matti Hamalainen <ccr@tnsp.org>
parents:
660
diff
changeset
|
473 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) |
f9a3b0e8f0fc
Clean up build system a bit.
Matti Hamalainen <ccr@tnsp.org>
parents:
660
diff
changeset
|
474 |
714
0ad76fa080ca
Improve build system by adding support for separate binary paths for
Matti Hamalainen <ccr@tnsp.org>
parents:
690
diff
changeset
|
475 $(TOOL_BINPATH)packed$(EXEEXT): $(OBJPATH)packed.o $(DMLIB_A) |
0 | 476 @echo " LINK $+" |
986
a25b6da1c4a8
Begin process of making zlib optional for some things.
Matti Hamalainen <ccr@tnsp.org>
parents:
978
diff
changeset
|
477 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(DM_ZLIB_LDFLAGS) |
0 | 478 |
714
0ad76fa080ca
Improve build system by adding support for separate binary paths for
Matti Hamalainen <ccr@tnsp.org>
parents:
690
diff
changeset
|
479 $(TOOL_BINPATH)mod2wav$(EXEEXT): $(OBJPATH)mod2wav.o $(DMLIB_A) |
0 | 480 @echo " LINK $+" |
986
a25b6da1c4a8
Begin process of making zlib optional for some things.
Matti Hamalainen <ccr@tnsp.org>
parents:
978
diff
changeset
|
481 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(DM_ZLIB_LDFLAGS) -lm |
0 | 482 |
714
0ad76fa080ca
Improve build system by adding support for separate binary paths for
Matti Hamalainen <ccr@tnsp.org>
parents:
690
diff
changeset
|
483 $(TOOL_BINPATH)xm2jss$(EXEEXT): $(OBJPATH)xm2jss.o $(DMLIB_A) |
0 | 484 @echo " LINK $+" |
986
a25b6da1c4a8
Begin process of making zlib optional for some things.
Matti Hamalainen <ccr@tnsp.org>
parents:
978
diff
changeset
|
485 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(DM_ZLIB_LDFLAGS) |
0 | 486 |
942
38cad00b41dd
Rename viewmod utility to dumpmod.
Matti Hamalainen <ccr@tnsp.org>
parents:
912
diff
changeset
|
487 $(TOOL_BINPATH)dumpmod$(EXEEXT): $(OBJPATH)dumpmod.o $(DMLIB_A) |
0 | 488 @echo " LINK $+" |
986
a25b6da1c4a8
Begin process of making zlib optional for some things.
Matti Hamalainen <ccr@tnsp.org>
parents:
978
diff
changeset
|
489 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(DM_ZLIB_LDFLAGS) |
0 | 490 |
812
1e5cf1144f36
Move library source under src/ subdirectory.
Matti Hamalainen <ccr@tnsp.org>
parents:
749
diff
changeset
|
491 $(TOOL_BINPATH)ppl$(EXEEXT): $(DMLIBSRC)setupfont.h $(OBJPATH)ppl.o $(DMLIB_A) |
0 | 492 @echo " LINK $+" |
986
a25b6da1c4a8
Begin process of making zlib optional for some things.
Matti Hamalainen <ccr@tnsp.org>
parents:
978
diff
changeset
|
493 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(DM_ZLIB_LDFLAGS) $(SDL_LDFLAGS) -lm |
0 | 494 |
714
0ad76fa080ca
Improve build system by adding support for separate binary paths for
Matti Hamalainen <ccr@tnsp.org>
parents:
690
diff
changeset
|
495 $(TOOL_BINPATH)objlink$(EXEEXT): $(OBJPATH)objlink.o $(DMLIB_A) |
407
59244a7ae37f
Move c64 utilities to the engine lib, as we benefit from a common framework.
Matti Hamalainen <ccr@tnsp.org>
parents:
403
diff
changeset
|
496 @echo " LINK $+" |
59244a7ae37f
Move c64 utilities to the engine lib, as we benefit from a common framework.
Matti Hamalainen <ccr@tnsp.org>
parents:
403
diff
changeset
|
497 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) |
59244a7ae37f
Move c64 utilities to the engine lib, as we benefit from a common framework.
Matti Hamalainen <ccr@tnsp.org>
parents:
403
diff
changeset
|
498 |
912
70cbbd5b7aea
Moved lib64gfx files under tools, as it's not generic DMLIB module really.
Matti Hamalainen <ccr@tnsp.org>
parents:
898
diff
changeset
|
499 $(TOOL_BINPATH)gfxconv$(EXEEXT): $(OBJPATH)gfxconv.o $(OBJPATH)lib64gfx.o $(DMLIB_A) |
407
59244a7ae37f
Move c64 utilities to the engine lib, as we benefit from a common framework.
Matti Hamalainen <ccr@tnsp.org>
parents:
403
diff
changeset
|
500 @echo " LINK $+" |
986
a25b6da1c4a8
Begin process of making zlib optional for some things.
Matti Hamalainen <ccr@tnsp.org>
parents:
978
diff
changeset
|
501 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(LIBPNG_LDFLAGS) $(DM_ZLIB_LDFLAGS) |
407
59244a7ae37f
Move c64 utilities to the engine lib, as we benefit from a common framework.
Matti Hamalainen <ccr@tnsp.org>
parents:
403
diff
changeset
|
502 |
912
70cbbd5b7aea
Moved lib64gfx files under tools, as it's not generic DMLIB module really.
Matti Hamalainen <ccr@tnsp.org>
parents:
898
diff
changeset
|
503 $(TOOL_BINPATH)view64$(EXEEXT): $(OBJPATH)view64.o $(OBJPATH)lib64gfx.o $(DMLIB_A) |
407
59244a7ae37f
Move c64 utilities to the engine lib, as we benefit from a common framework.
Matti Hamalainen <ccr@tnsp.org>
parents:
403
diff
changeset
|
504 @echo " LINK $+" |
986
a25b6da1c4a8
Begin process of making zlib optional for some things.
Matti Hamalainen <ccr@tnsp.org>
parents:
978
diff
changeset
|
505 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(LIBPNG_LDFLAGS) $(DM_ZLIB_LDFLAGS) $(SDL_LDFLAGS) |
407
59244a7ae37f
Move c64 utilities to the engine lib, as we benefit from a common framework.
Matti Hamalainen <ccr@tnsp.org>
parents:
403
diff
changeset
|
506 |
714
0ad76fa080ca
Improve build system by adding support for separate binary paths for
Matti Hamalainen <ccr@tnsp.org>
parents:
690
diff
changeset
|
507 $(TOOL_BINPATH)gentab$(EXEEXT): $(OBJPATH)gentab.o $(DMLIB_A) |
496
966617f0f6cd
Add a simple utility for generating different sinus, etc. value tables in c64 assembler format.
Matti Hamalainen <ccr@tnsp.org>
parents:
495
diff
changeset
|
508 @echo " LINK $+" |
966617f0f6cd
Add a simple utility for generating different sinus, etc. value tables in c64 assembler format.
Matti Hamalainen <ccr@tnsp.org>
parents:
495
diff
changeset
|
509 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) -lm |
966617f0f6cd
Add a simple utility for generating different sinus, etc. value tables in c64 assembler format.
Matti Hamalainen <ccr@tnsp.org>
parents:
495
diff
changeset
|
510 |
724
12ddeef948fc
Move dm_print_optree() to dmevalw.c
Matti Hamalainen <ccr@tnsp.org>
parents:
716
diff
changeset
|
511 $(TOOL_BINPATH)auval$(EXEEXT): $(OBJPATH)auval.o $(OBJPATH)dmeval.o $(OBJPATH)dmevalw.o $(DMLIB_A) |
690
84811c6dd32d
Added Auval with removed Lua dependancy, using dmeval only.
Matti Hamalainen <ccr@tnsp.org>
parents:
668
diff
changeset
|
512 @echo " LINK $+" |
880 | 513 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(SDL_LDFLAGS) $(SDL_TTF_LDFLAGS) -lm |
690
84811c6dd32d
Added Auval with removed Lua dependancy, using dmeval only.
Matti Hamalainen <ccr@tnsp.org>
parents:
668
diff
changeset
|
514 |
407
59244a7ae37f
Move c64 utilities to the engine lib, as we benefit from a common framework.
Matti Hamalainen <ccr@tnsp.org>
parents:
403
diff
changeset
|
515 |
344 | 516 ### |
665
f9a3b0e8f0fc
Clean up build system a bit.
Matti Hamalainen <ccr@tnsp.org>
parents:
660
diff
changeset
|
517 ### Demo binary |
f9a3b0e8f0fc
Clean up build system a bit.
Matti Hamalainen <ccr@tnsp.org>
parents:
660
diff
changeset
|
518 ### |
887
65a5251898a0
Fix build system for empty DEMO_BIN target.
Matti Hamalainen <ccr@tnsp.org>
parents:
880
diff
changeset
|
519 ifneq ($(DEMO_BIN),) |
665
f9a3b0e8f0fc
Clean up build system a bit.
Matti Hamalainen <ccr@tnsp.org>
parents:
660
diff
changeset
|
520 $(BINPATH)$(DEMO_BIN)$(EXEEXT): $(addprefix $(OBJPATH),$(DEMO_OBJS)) $(DMLIB_A) |
f9a3b0e8f0fc
Clean up build system a bit.
Matti Hamalainen <ccr@tnsp.org>
parents:
660
diff
changeset
|
521 @echo " LINK $+" |
986
a25b6da1c4a8
Begin process of making zlib optional for some things.
Matti Hamalainen <ccr@tnsp.org>
parents:
978
diff
changeset
|
522 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(SDL_LDFLAGS) $(DEMO_LDFLAGS) -lm |
887
65a5251898a0
Fix build system for empty DEMO_BIN target.
Matti Hamalainen <ccr@tnsp.org>
parents:
880
diff
changeset
|
523 endif |
665
f9a3b0e8f0fc
Clean up build system a bit.
Matti Hamalainen <ccr@tnsp.org>
parents:
660
diff
changeset
|
524 |
f9a3b0e8f0fc
Clean up build system a bit.
Matti Hamalainen <ccr@tnsp.org>
parents:
660
diff
changeset
|
525 |
f9a3b0e8f0fc
Clean up build system a bit.
Matti Hamalainen <ccr@tnsp.org>
parents:
660
diff
changeset
|
526 ### |
344 | 527 ### Editor targets |
528 ### | |
380
ccb6e5108953
Add EDITOR_HEADERS to the dependency.
Matti Hamalainen <ccr@tnsp.org>
parents:
379
diff
changeset
|
529 $(EDITOR_PRO): $(DMLIB)Makefile.gen config.mak $(addprefix $(DMLIB),$(EDITOR_SOURCES) $(EDITOR_HEADERS)) $(addprefix $(OBJPATH),$(DEMO_OBJS)) $(DMLIB_A) |
357
1b8362a26692
Work towards Qt based editor.
Matti Hamalainen <ccr@tnsp.org>
parents:
355
diff
changeset
|
530 @echo " CREATE $@" |
377 | 531 @echo "OBJECTS_DIR = $(OBJPATH)" > $@ |
532 @echo "MOC_DIR = $(OBJPATH)" >> $@ | |
533 @echo "QMAKE_CXXFLAGS += $(DM_CFLAGS) $(SDL_CFLAGS)" >> $@ | |
376
40e33ad0d153
Work towards a working editor .. some day.
Matti Hamalainen <ccr@tnsp.org>
parents:
374
diff
changeset
|
534 @echo "QMAKE_LIBS += $(filter-out %dmsimple.o,$(filter %.o %.a,$+))" >> $@ |
986
a25b6da1c4a8
Begin process of making zlib optional for some things.
Matti Hamalainen <ccr@tnsp.org>
parents:
978
diff
changeset
|
535 @echo "QMAKE_LIBS += $(DM_LDFLAGS) $(SDL_LDFLAGS) $(DEMO_LDFLAGS)" >> $@ |
357
1b8362a26692
Work towards Qt based editor.
Matti Hamalainen <ccr@tnsp.org>
parents:
355
diff
changeset
|
536 @echo "MAKEFILE = $(EDITOR_MAKEFILE)" >> $@ |
1b8362a26692
Work towards Qt based editor.
Matti Hamalainen <ccr@tnsp.org>
parents:
355
diff
changeset
|
537 @echo "CONFIG += debug" >> $@ |
1b8362a26692
Work towards Qt based editor.
Matti Hamalainen <ccr@tnsp.org>
parents:
355
diff
changeset
|
538 @echo "QT += core gui opengl" >> $@ |
377 | 539 @echo "TARGET = $(BINPATH)ed_$(DEMO_BIN)$(EXEEXT)" >> $@ |
357
1b8362a26692
Work towards Qt based editor.
Matti Hamalainen <ccr@tnsp.org>
parents:
355
diff
changeset
|
540 @echo "TEMPLATE = app" >> $@ |
370
7e640b1f990b
Fix build process for out of tree builds.
Matti Hamalainen <ccr@tnsp.org>
parents:
357
diff
changeset
|
541 @echo "SOURCES = $(addprefix $(DMLIB),$(EDITOR_SOURCES))" >> $@ |
7e640b1f990b
Fix build process for out of tree builds.
Matti Hamalainen <ccr@tnsp.org>
parents:
357
diff
changeset
|
542 @echo "HEADERS = $(addprefix $(DMLIB),$(EDITOR_HEADERS))" >> $@ |
357
1b8362a26692
Work towards Qt based editor.
Matti Hamalainen <ccr@tnsp.org>
parents:
355
diff
changeset
|
543 |
1b8362a26692
Work towards Qt based editor.
Matti Hamalainen <ccr@tnsp.org>
parents:
355
diff
changeset
|
544 |
1b8362a26692
Work towards Qt based editor.
Matti Hamalainen <ccr@tnsp.org>
parents:
355
diff
changeset
|
545 $(EDITOR_MAKEFILE): $(EDITOR_PRO) |
355
dbc62ba3f132
Work towards Qt-based editor instead.
Matti Hamalainen <ccr@tnsp.org>
parents:
353
diff
changeset
|
546 @echo " QMAKE $+" |
357
1b8362a26692
Work towards Qt based editor.
Matti Hamalainen <ccr@tnsp.org>
parents:
355
diff
changeset
|
547 @qmake -Wall $< |
1b8362a26692
Work towards Qt based editor.
Matti Hamalainen <ccr@tnsp.org>
parents:
355
diff
changeset
|
548 |
1b8362a26692
Work towards Qt based editor.
Matti Hamalainen <ccr@tnsp.org>
parents:
355
diff
changeset
|
549 $(BINPATH)ed_$(DEMO_BIN)$(EXEEXT): $(EDITOR_MAKEFILE) |
392
fc9b476c46de
Pass parameters to sub-processes of make.
Matti Hamalainen <ccr@tnsp.org>
parents:
388
diff
changeset
|
550 @$(MAKE) -f $< |
344 | 551 |
0 | 552 |
553 ### | |
554 ### Special targets | |
555 ### | |
556 clean: | |
563
1483cd1cf0e6
Fix build by moving moc_* from TARGETS to TMPFILES.
Matti Hamalainen <ccr@tnsp.org>
parents:
562
diff
changeset
|
557 $(RM) $(TARGETS) $(TMPFILES) $(OBJPATH)*.o |
0 | 558 |