Mercurial > hg > dmlib
comparison Makefile.gen @ 714:0ad76fa080ca
Improve build system by adding support for separate binary paths for
tools and tests, that default to $(DMLIB)tools/ and $(DMLIB)tests/
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Wed, 17 Apr 2013 19:29:16 +0300 |
parents | 84811c6dd32d |
children | 24096d1ef794 |
comparison
equal
deleted
inserted
replaced
713:80c3e69aa301 | 714:0ad76fa080ca |
---|---|
3 ### | 3 ### |
4 include config.mak | 4 include config.mak |
5 | 5 |
6 BINPATH ?= ./ | 6 BINPATH ?= ./ |
7 DMLIB ?= ./ | 7 DMLIB ?= ./ |
8 TOOL_BINPATH ?= $(DMLIB)tools/ | |
9 TESTS_BINPATH ?= $(DMLIB)tests/ | |
10 | |
11 | |
8 DM_CFLAGS += -I$(DMLIB) | 12 DM_CFLAGS += -I$(DMLIB) |
9 | |
10 ifeq ($(EXTRA_CFLAGS),) | 13 ifeq ($(EXTRA_CFLAGS),) |
11 EXTRA_CFLAGS=-O3 -march=core2 -DDM_DEVEL | 14 EXTRA_CFLAGS=-O3 -march=core2 -DDM_DEVEL |
12 endif | 15 endif |
13 | 16 |
14 | 17 |
247 | 250 |
248 ifeq ($(DM_BUILD_TESTS),yes) | 251 ifeq ($(DM_BUILD_TESTS),yes) |
249 TESTS_BINARIES += vecmattest fptest evaltest | 252 TESTS_BINARIES += vecmattest fptest evaltest |
250 endif | 253 endif |
251 | 254 |
252 FONTCONV_BIN=$(BINPATH)fontconv$(EXEEXT) | 255 FONTCONV_BIN=$(TOOL_BINPATH)fontconv$(EXEEXT) |
253 DATA2INC_BIN=$(BINPATH)data2inc$(EXEEXT) | 256 DATA2INC_BIN=$(TOOL_BINPATH)data2inc$(EXEEXT) |
254 | 257 |
255 | 258 |
256 ### | 259 ### |
257 ### Rest of the rules | 260 ### Rest of the rules |
258 ### | 261 ### |
268 dmfile.o dmbstr.o dmlib.o dmlerp.o dmstring.o \ | 271 dmfile.o dmbstr.o dmlib.o dmlerp.o dmstring.o \ |
269 dmargs.o dmvecmat.o dmperlin.o dmimage.o \ | 272 dmargs.o dmvecmat.o dmperlin.o dmimage.o \ |
270 dmwav.o dmengine.o dmq3d.o | 273 dmwav.o dmengine.o dmq3d.o |
271 | 274 |
272 | 275 |
273 TESTS_TARGETS = $(addprefix $(BINPATH),$(addsuffix $(EXEEXT),$(TESTS_BINARIES))) | 276 TESTS_TARGETS = $(addprefix $(TESTS_BINPATH),$(addsuffix $(EXEEXT),$(TESTS_BINARIES))) |
274 TOOL_TARGETS = $(addprefix $(BINPATH),$(addsuffix $(EXEEXT),$(TOOL_BINARIES))) | 277 TOOL_TARGETS = $(addprefix $(TOOL_BINPATH),$(addsuffix $(EXEEXT),$(TOOL_BINARIES))) |
275 TARGETS += $(DMLIB_A) $(addprefix $(BINPATH),$(addsuffix $(EXEEXT),$(BINARIES))) \ | 278 TARGETS += $(DMLIB_A) $(addprefix $(BINPATH),$(addsuffix $(EXEEXT),$(BINARIES))) \ |
276 $(TOOL_TARGETS) $(TESTS_TARGETS) | 279 $(TOOL_TARGETS) $(TESTS_TARGETS) |
277 | 280 |
278 all: $(TARGETS) | 281 all: $(TARGETS) |
279 | 282 |
400 | 403 |
401 | 404 |
402 ### | 405 ### |
403 ### Tests | 406 ### Tests |
404 ### | 407 ### |
405 $(BINPATH)blittest$(EXEEXT): $(OBJPATH)blittest.o $(DMLIB_A) | 408 $(TESTS_BINPATH)blittest$(EXEEXT): $(OBJPATH)blittest.o $(DMLIB_A) |
406 @echo " LINK $+" | 409 @echo " LINK $+" |
407 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(SDL_LDFLAGS) -lSDL_ttf | 410 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(SDL_LDFLAGS) -lSDL_ttf |
408 | 411 |
409 $(BINPATH)efu$(EXEEXT): $(OBJPATH)efu.o $(DMLIB_A) | 412 $(TESTS_BINPATH)efu$(EXEEXT): $(OBJPATH)efu.o $(DMLIB_A) |
410 @echo " LINK $+" | 413 @echo " LINK $+" |
411 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(SDL_LDFLAGS) -lSDL_ttf | 414 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(SDL_LDFLAGS) -lSDL_ttf |
412 | 415 |
413 $(BINPATH)vptest$(EXEEXT): $(OBJPATH)vptest.o $(DMLIB_A) | 416 $(TESTS_BINPATH)vptest$(EXEEXT): $(OBJPATH)vptest.o $(DMLIB_A) |
414 @echo " LINK $+" | 417 @echo " LINK $+" |
415 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(SDL_LDFLAGS) -lSDL_ttf | 418 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(SDL_LDFLAGS) -lSDL_ttf |
416 | 419 |
417 $(BINPATH)evaltest$(EXEEXT): $(OBJPATH)evaltest.o $(OBJPATH)dmeval.o $(DMLIB_A) | 420 $(TESTS_BINPATH)evaltest$(EXEEXT): $(OBJPATH)evaltest.o $(OBJPATH)dmeval.o $(DMLIB_A) |
418 @echo " LINK $+" | 421 @echo " LINK $+" |
419 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) -lm | 422 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) -lm |
420 | 423 |
421 $(BINPATH)%test$(EXEEXT): $(OBJPATH)%test.o $(DMLIB_A) | 424 $(TESTS_BINPATH)%test$(EXEEXT): $(OBJPATH)%test.o $(DMLIB_A) |
422 @echo " LINK $+" | 425 @echo " LINK $+" |
423 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) -lm | 426 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) -lm |
424 | 427 |
425 $(BINPATH)plrtest$(EXEEXT): $(OBJPATH)plrtest.o $(DMLIB_A) | 428 $(TESTS_BINPATH)plrtest$(EXEEXT): $(OBJPATH)plrtest.o $(DMLIB_A) |
426 @echo " LINK $+" | 429 @echo " LINK $+" |
427 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(SDL_LDFLAGS) | 430 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(SDL_LDFLAGS) |
428 | 431 |
429 | 432 |
430 ### | 433 ### |
436 | 439 |
437 $(DATA2INC_BIN): $(OBJPATH)data2inc.o $(DMLIB_A) | 440 $(DATA2INC_BIN): $(OBJPATH)data2inc.o $(DMLIB_A) |
438 @echo " LINK $+" | 441 @echo " LINK $+" |
439 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) | 442 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) |
440 | 443 |
441 $(BINPATH)packed$(EXEEXT): $(OBJPATH)packed.o $(DMLIB_A) | 444 $(TOOL_BINPATH)packed$(EXEEXT): $(OBJPATH)packed.o $(DMLIB_A) |
442 @echo " LINK $+" | 445 @echo " LINK $+" |
443 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) | 446 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) |
444 | 447 |
445 $(BINPATH)mod2wav$(EXEEXT): $(OBJPATH)mod2wav.o $(DMLIB_A) | 448 $(TOOL_BINPATH)mod2wav$(EXEEXT): $(OBJPATH)mod2wav.o $(DMLIB_A) |
446 @echo " LINK $+" | 449 @echo " LINK $+" |
447 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) -lm | 450 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) -lm |
448 | 451 |
449 $(BINPATH)xm2jss$(EXEEXT): $(OBJPATH)xm2jss.o $(DMLIB_A) | 452 $(TOOL_BINPATH)xm2jss$(EXEEXT): $(OBJPATH)xm2jss.o $(DMLIB_A) |
450 @echo " LINK $+" | 453 @echo " LINK $+" |
451 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) | 454 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) |
452 | 455 |
453 $(BINPATH)viewmod$(EXEEXT): $(OBJPATH)viewmod.o $(DMLIB_A) | 456 $(TOOL_BINPATH)viewmod$(EXEEXT): $(OBJPATH)viewmod.o $(DMLIB_A) |
454 @echo " LINK $+" | 457 @echo " LINK $+" |
455 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) | 458 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) |
456 | 459 |
457 $(BINPATH)ppl$(EXEEXT): $(DMLIB)setupfont.h $(OBJPATH)ppl.o $(DMLIB_A) | 460 $(TOOL_BINPATH)ppl$(EXEEXT): $(DMLIB)setupfont.h $(OBJPATH)ppl.o $(DMLIB_A) |
458 @echo " LINK $+" | 461 @echo " LINK $+" |
459 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(SDL_LDFLAGS) | 462 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(SDL_LDFLAGS) |
460 | 463 |
461 $(BINPATH)objlink$(EXEEXT): $(OBJPATH)objlink.o $(DMLIB_A) | 464 $(TOOL_BINPATH)objlink$(EXEEXT): $(OBJPATH)objlink.o $(DMLIB_A) |
462 @echo " LINK $+" | 465 @echo " LINK $+" |
463 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) | 466 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) |
464 | 467 |
465 $(BINPATH)gfxconv$(EXEEXT): $(OBJPATH)gfxconv.o $(DMLIB_A) | 468 $(TOOL_BINPATH)gfxconv$(EXEEXT): $(OBJPATH)gfxconv.o $(DMLIB_A) |
466 @echo " LINK $+" | 469 @echo " LINK $+" |
467 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(LIBPNG_LDFLAGS) $(ZLIB_LDFLAGS) | 470 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(LIBPNG_LDFLAGS) $(ZLIB_LDFLAGS) |
468 | 471 |
469 $(BINPATH)view64$(EXEEXT): $(OBJPATH)view64.o $(DMLIB_A) | 472 $(TOOL_BINPATH)view64$(EXEEXT): $(OBJPATH)view64.o $(DMLIB_A) |
470 @echo " LINK $+" | 473 @echo " LINK $+" |
471 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(LIBPNG_LDFLAGS) $(ZLIB_LDFLAGS) $(SDL_LDFLAGS) | 474 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(LIBPNG_LDFLAGS) $(ZLIB_LDFLAGS) $(SDL_LDFLAGS) |
472 | 475 |
473 $(BINPATH)gentab$(EXEEXT): $(OBJPATH)gentab.o $(DMLIB_A) | 476 $(TOOL_BINPATH)gentab$(EXEEXT): $(OBJPATH)gentab.o $(DMLIB_A) |
474 @echo " LINK $+" | 477 @echo " LINK $+" |
475 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) -lm | 478 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) -lm |
476 | 479 |
477 $(BINPATH)auval$(EXEEXT): $(OBJPATH)auval.o $(OBJPATH)dmeval.o $(DMLIB_A) | 480 $(TOOL_BINPATH)auval$(EXEEXT): $(OBJPATH)auval.o $(OBJPATH)dmeval.o $(DMLIB_A) |
478 @echo " LINK $+" | 481 @echo " LINK $+" |
479 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(SDL_LDFLAGS) -lSDL_ttf | 482 @$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(SDL_LDFLAGS) -lSDL_ttf |
480 | 483 |
481 | 484 |
482 ### | 485 ### |