changeset 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 2fac0a28ff51
children 5af2097ab284
files Makefile.gen config.mak.in
diffstat 2 files changed, 33 insertions(+), 16 deletions(-) [+]
line wrap: on
line diff
--- a/Makefile.gen	Fri Feb 27 18:12:38 2015 +0200
+++ b/Makefile.gen	Fri Feb 27 20:15:34 2015 +0200
@@ -77,8 +77,7 @@
 ###
 ifeq ($(DM_USE_PACKFS),yes)
 BUILD_RES=yes
-DM_CFLAGS += -DDM_USE_PACKFS $(ZLIB_CFLAGS)
-DM_LDFLAGS += $(ZLIB_LDFLAGS)
+DM_CFLAGS += -DDM_USE_PACKFS
 DMLIB_OBJS += dmpack.o
 ifeq ($(DM_BUILD_TOOLS),yes)
 TOOL_BINARIES += packed
@@ -251,11 +250,23 @@
 endif
 
 
-
+### libPNG handling
 ifeq ($(DM_USE_LIBPNG),yes)
-DM_CFLAGS += -DDM_USE_LIBPNG $(LIBPNG_CFLAGS) $(ZLIB_CFLAGS)
+DM_CFLAGS += -DDM_USE_LIBPNG $(LIBPNG_CFLAGS)
 endif
 
+
+### Check requirements for zlib
+ifeq ($(DM_USE_ZLIB),yes)
+DM_CFLAGS += -DDM_USE_ZLIB $(ZLIB_CFLAGS)
+DEMO_LDFLAGS += $(ZLIB_LDFLAGS)
+else
+DEMO_LDFLAGS +=
+endif
+DM_ZLIB_LDFLAGS = $(ZLIB_LDFLAGS)
+
+
+### What tests to build?
 ifeq ($(DM_BUILD_TESTS),yes)
 TESTS_BINARIES += vecmattest fptest evaltest
 endif
@@ -431,7 +442,7 @@
 
 $(TESTS_BINPATH)efu$(EXEEXT): $(OBJPATH)efu.o $(DMLIB_A)
 	@echo " LINK $+"
-	@$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(SDL_LDFLAGS) $(SDL_TTF_LDFLAGS) -lm
+	@$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(SDL_LDFLAGS) $(SDL_TTF_LDFLAGS) $(DM_ZLIB_LDFLAGS) -lm
 
 $(TESTS_BINPATH)vptest$(EXEEXT): $(OBJPATH)vptest.o $(DMLIB_A)
 	@echo " LINK $+"
@@ -447,7 +458,7 @@
 
 $(TESTS_BINPATH)plrtest$(EXEEXT): $(OBJPATH)plrtest.o $(DMLIB_A)
 	@echo " LINK $+"
-	@$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(SDL_LDFLAGS) -lm
+	@$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(SDL_LDFLAGS) $(DM_ZLIB_LDFLAGS) -lm
 
 
 ###
@@ -455,7 +466,7 @@
 ###
 $(TOOL_BINPATH)fontconv$(EXEEXT): $(OBJPATH)fontconv.o $(DMLIB_A)
 	@echo " LINK $+"
-	@$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(SDL_LDFLAGS) $(SDL_TTF_LDFLAGS) -lm
+	@$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(SDL_LDFLAGS) $(SDL_TTF_LDFLAGS) $(DM_ZLIB_LDFLAGS) -lm
 
 $(TOOL_BINPATH)data2inc$(EXEEXT): $(OBJPATH)data2inc.o $(DMLIB_A)
 	@echo " LINK $+"
@@ -463,23 +474,23 @@
 
 $(TOOL_BINPATH)packed$(EXEEXT): $(OBJPATH)packed.o $(DMLIB_A)
 	@echo " LINK $+"
-	@$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS)
+	@$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(DM_ZLIB_LDFLAGS)
 
 $(TOOL_BINPATH)mod2wav$(EXEEXT): $(OBJPATH)mod2wav.o $(DMLIB_A)
 	@echo " LINK $+"
-	@$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) -lm
+	@$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(DM_ZLIB_LDFLAGS) -lm
 
 $(TOOL_BINPATH)xm2jss$(EXEEXT): $(OBJPATH)xm2jss.o $(DMLIB_A)
 	@echo " LINK $+"
-	@$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS)
+	@$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(DM_ZLIB_LDFLAGS)
 
 $(TOOL_BINPATH)dumpmod$(EXEEXT): $(OBJPATH)dumpmod.o $(DMLIB_A)
 	@echo " LINK $+"
-	@$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS)
+	@$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(DM_ZLIB_LDFLAGS)
 
 $(TOOL_BINPATH)ppl$(EXEEXT): $(DMLIBSRC)setupfont.h $(OBJPATH)ppl.o $(DMLIB_A) 
 	@echo " LINK $+"
-	@$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(SDL_LDFLAGS) -lm
+	@$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(DM_ZLIB_LDFLAGS) $(SDL_LDFLAGS) -lm
 
 $(TOOL_BINPATH)objlink$(EXEEXT): $(OBJPATH)objlink.o $(DMLIB_A)
 	@echo " LINK $+"
@@ -487,11 +498,11 @@
 
 $(TOOL_BINPATH)gfxconv$(EXEEXT): $(OBJPATH)gfxconv.o $(OBJPATH)lib64gfx.o $(DMLIB_A)
 	@echo " LINK $+"
-	@$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(LIBPNG_LDFLAGS) $(ZLIB_LDFLAGS)
+	@$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(LIBPNG_LDFLAGS) $(DM_ZLIB_LDFLAGS)
 
 $(TOOL_BINPATH)view64$(EXEEXT): $(OBJPATH)view64.o $(OBJPATH)lib64gfx.o $(DMLIB_A)
 	@echo " LINK $+"
-	@$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(LIBPNG_LDFLAGS) $(ZLIB_LDFLAGS) $(SDL_LDFLAGS)
+	@$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(LIBPNG_LDFLAGS) $(DM_ZLIB_LDFLAGS) $(SDL_LDFLAGS)
 
 $(TOOL_BINPATH)gentab$(EXEEXT): $(OBJPATH)gentab.o $(DMLIB_A)
 	@echo " LINK $+"
@@ -508,7 +519,7 @@
 ifneq ($(DEMO_BIN),)
 $(BINPATH)$(DEMO_BIN)$(EXEEXT): $(addprefix $(OBJPATH),$(DEMO_OBJS)) $(DMLIB_A)
 	@echo " LINK $+"
-	@$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(SDL_LDFLAGS) -lm
+	@$(CC) -o $@ $(filter %.o %.a,$+) $(DM_LDFLAGS) $(SDL_LDFLAGS) $(DEMO_LDFLAGS) -lm
 endif
 
 
@@ -521,7 +532,7 @@
 	@echo "MOC_DIR = $(OBJPATH)" >> $@
 	@echo "QMAKE_CXXFLAGS += $(DM_CFLAGS) $(SDL_CFLAGS)" >> $@
 	@echo "QMAKE_LIBS += $(filter-out %dmsimple.o,$(filter %.o %.a,$+))" >> $@
-	@echo "QMAKE_LIBS += $(DM_LDFLAGS) $(SDL_LDFLAGS)" >> $@
+	@echo "QMAKE_LIBS += $(DM_LDFLAGS) $(SDL_LDFLAGS) $(DEMO_LDFLAGS)" >> $@
 	@echo "MAKEFILE = $(EDITOR_MAKEFILE)" >> $@
 	@echo "CONFIG += debug" >> $@
 	@echo "QT += core gui opengl" >> $@
--- a/config.mak.in	Fri Feb 27 18:12:38 2015 +0200
+++ b/config.mak.in	Fri Feb 27 20:15:34 2015 +0200
@@ -3,6 +3,12 @@
 DM_BUILD_TESTS=yes
 DM_BUILD_TOOLS=yes
 
+
+# Use zlib? If you say "no", zlib will be only used for
+# tools that need it, resource library decompression
+# will use internal dmzlib module.
+DM_USE_ZLIB=no
+
 # Use libpng? Required for PNG read/write support in some tools.
 # NOTICE!!!! _NOT_ required for simple PNG read support via dmimage,
 # that is implemented via modified stb_image.c's PNG loader.