diff --git a/Makefile b/Makefile index 959f678..207c7d1 100644 --- a/Makefile +++ b/Makefile @@ -4,7 +4,7 @@ include config.make VERTITLE := instead-$(VERSION) ARCHIVE := instead_$(VERSION).tar.gz# -SUBDIRS = src/zlib src/sdl-instead stead games themes icon desktop doc languages +SUBDIRS += src/sdl-instead stead games themes icon desktop doc languages all: @for dir in $(SUBDIRS); do \ diff --git a/Rules.make.standalone b/Rules.make.standalone index 624c083..f9c22fe 100644 --- a/Rules.make.standalone +++ b/Rules.make.standalone @@ -11,6 +11,9 @@ DOCPATH= MANPATH= SYSTEMSETUP=no +ZLIB_CFLAGS= +ZLIB_LFLAGS=-lz + LUA_CFLAGS=$(shell pkg-config --cflags lua5.1) LUA_LFLAGS=$(shell pkg-config --libs lua5.1) diff --git a/Rules.make.system b/Rules.make.system index 8deb914..4c8ce8c 100644 --- a/Rules.make.system +++ b/Rules.make.system @@ -12,6 +12,9 @@ LANGPATH=$(STEADPATH)/languages MANPATH=$(DESTDIR)$(PREFIX)/share/man/man6 SYSTEMSETUP=yes +ZLIB_CFLAGS= +ZLIB_LFLAGS=-lz + LUA_CFLAGS=$(shell pkg-config --cflags lua5.1) LUA_LFLAGS=$(shell pkg-config --libs lua5.1) diff --git a/Rules.mingw b/Rules.mingw index c318b11..c6ef6a8 100644 --- a/Rules.mingw +++ b/Rules.mingw @@ -12,6 +12,8 @@ DOCPATH=$(DESTDIR)$(PREFIX)doc LANGPATH=$(DESTDIR)$(PREFIX)languages MANPATH=$(DESTDIR)$(PREFIX)doc +ZLIB_CFLAGS=-I../zlib +ZLIB_LFLAGS=../zlib/libz.a LUA_CFLAGS=-I../windows/ LUA_LFLAGS=-llua5.1 -L../windows/ diff --git a/Rules.windows b/Rules.windows index 0b50c18..1823066 100644 --- a/Rules.windows +++ b/Rules.windows @@ -10,6 +10,9 @@ GAMESPATH=./games ICONPATH=./icon LANGPATH=./languages +ZLIB_CFLAGS=-I../zlib +ZLIB_LFLAGS=../zlib/libz.a + LUA_CFLAGS= LUA_LFLAGS=-llua5.1 diff --git a/configure.sh b/configure.sh index 321f6f1..e9a4892 100755 --- a/configure.sh +++ b/configure.sh @@ -7,6 +7,18 @@ if ! pkg-config --version >/dev/null 2>&1; then fi echo "ok" +echo -n "Checking pkg-config --cflags zlib..." +if ! pkg-config --cflags zlib >/dev/null 2>&1; then + echo "internal" + zlib_cflags= + zlib_libs= +else + echo "system" + zlib_cflags="pkg-config --cflags zlib" + zlib_libs="pkg-config --libs zlib" +fi + + echo -n "Checking pkg-config --cflags lua[5.1]..." if ! pkg-config --cflags lua5.1 >/dev/null 2>&1; then if ! pkg-config --cflags lua >/dev/null 2>&1; then @@ -23,6 +35,7 @@ else lua_libs="pkg-config --libs lua5.1" fi + echo -n "Checking sdl-config..." if ! sdl-config --version >/dev/null 2>&1; then echo "error: no sdl-config in \$PATH." @@ -84,6 +97,14 @@ if ! make clean >/dev/null 2>&1; then fi echo -n "Generating config.make..." echo "# autamatically generated by configure.sh" >config.make +if [[ -z "$zlib_cflags" ]]; then + echo "SUBDIRS=src/zlib" >> config.make + echo "ZLIB_CFLAGS=-I../zlib" >> config.make + echo "ZLIB_LFLAGS=../zlib/libz.a" >> config.make +else + echo "ZLIB_CFLAGS=\$(shell $zlib_cflags)" >> config.make + echo "ZLIB_LFLAGS=\$(shell $zlib_libs)" >> config.make +fi echo "LUA_CFLAGS=\$(shell $lua_cflags)" >> config.make echo "LUA_LFLAGS=\$(shell $lua_libs)" >> config.make echo "SDL_CFLAGS=\$(shell sdl-config --cflags)" >> config.make diff --git a/src/sdl-instead/Makefile b/src/sdl-instead/Makefile index acb3bf8..4107a14 100644 --- a/src/sdl-instead/Makefile +++ b/src/sdl-instead/Makefile @@ -1,10 +1,10 @@ include ../../Rules.make include ../../config.make -CFLAGS += $(SDL_CFLAGS) $(LUA_CFLAGS) -I../zlib -DLANG_PATH=\"${LANGPATH}/\" -DSTEAD_PATH=\"${STEADPATH}/\" -DGAMES_PATH=\"${GAMESPATH}/\" -DTHEMES_PATH=\"${THEMESPATH}/\" -DVERSION=\"$(VERSION)\" -DICON_PATH=\"${ICONPATH}/\" - -LDFLAGS += $(SDL_LFLAGS) $(LUA_LFLAGS) ../zlib/libz.a +CFLAGS += $(SDL_CFLAGS) $(LUA_CFLAGS) $(ZLIB_CFLAGS) -DLANG_PATH=\"${LANGPATH}/\" -DSTEAD_PATH=\"${STEADPATH}/\" -DGAMES_PATH=\"${GAMESPATH}/\" -DTHEMES_PATH=\"${THEMESPATH}/\" -DVERSION=\"$(VERSION)\" -DICON_PATH=\"${ICONPATH}/\" +LDFLAGS += $(SDL_LFLAGS) $(LUA_LFLAGS) $(ZLIB_LFLAGS) + SRC := graphics.c input.c game.c main.c instead.c sound.c SDL_rotozoom.c SDL_anigif.c SDL_gfxBlitFunc.c config.c themes.c menu.c util.c cache.c unzip.c ioapi.c unpack.c $(PLATFORM) OBJ := $(patsubst %.c, %.o, $(SRC))