* Fixed (?) broken build on Windows due to last commit.

* Included Makefile fix from Getafix to only use libespeak for Linux builds, not Windows.
* By default, (GNU)Makefile will now build using dependencies distributed in the Oolite repository
* Added new GNUMakefile switch (use_distro_deps=yes/no) to use locally installed header files and libraries


git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@3237 127b21dd-08f5-0310-b4b7-95ae10353056
This commit is contained in:
Michael Werle 2010-04-28 17:02:16 +00:00
parent 970d597b71
commit 949f8d2e36
3 changed files with 31 additions and 16 deletions

View File

@ -36,13 +36,14 @@ else
ADDITIONAL_CFLAGS = -Wall -DLINUX -DNEED_STRLCPY `sdl-config --cflags` ADDITIONAL_CFLAGS = -Wall -DLINUX -DNEED_STRLCPY `sdl-config --cflags`
ADDITIONAL_OBJCFLAGS = -Wall -std=c99 -DLOADSAVEGUI -DLINUX -DXP_UNIX -Wno-import `sdl-config --cflags` ADDITIONAL_OBJCFLAGS = -Wall -std=c99 -DLOADSAVEGUI -DLINUX -DXP_UNIX -Wno-import `sdl-config --cflags`
oolite_LIB_DIRS += -L/usr/X11R6/lib/ oolite_LIB_DIRS += -L/usr/X11R6/lib/
endif
ifeq ($(getafix),yes) ifeq ($(use_distro_deps),yes)
ADDITIONAL_OBJC_LIBS += -lpng
else
ADDITIONAL_OBJC_LIBS += -lpng14 ADDITIONAL_OBJC_LIBS += -lpng14
ADDITIONAL_INCLUDE_DIRS += -Ideps/Linux-deps/include ADDITIONAL_INCLUDE_DIRS += -Ideps/Linux-deps/include
oolite_LIB_DIRS += -Ldeps/Linux-deps/$(HOST_ARCH)/import -Ldeps/Linux-deps/$(HOST_ARCH)/lib oolite_LIB_DIRS += -Ldeps/Linux-deps/$(HOST_ARCH)/import -Ldeps/Linux-deps/$(HOST_ARCH)/lib
else endif
ADDITIONAL_OBJC_LIBS += -lpng
endif endif
ifeq ($(libespeak),yes) ifeq ($(libespeak),yes)
ADDITIONAL_OBJC_LIBS += -lespeak ADDITIONAL_OBJC_LIBS += -lespeak

View File

@ -20,8 +20,12 @@ pkg-debsnapshot: DEB_REV := $(shell echo "~svn${SVNREVISION}${DEB_REV}")
LIBJS_SRC_DIR=deps/Cross-platform-deps/SpiderMonkey/js/src LIBJS_SRC_DIR=deps/Cross-platform-deps/SpiderMonkey/js/src
ifeq ($(GNUSTEP_HOST_OS),mingw32) ifeq ($(GNUSTEP_HOST_OS),mingw32)
LIBJS=deps/Windows-x86-deps/DLLs/js32.dll LIBJS=deps/Windows-x86-deps/DLLs/js32.dll
HAS_ESPEAK=libespeak=no # No eSpeak for Windows yet
else
HAS_ESPEAK=libespeak=yes # Build with eSpeak for non-Windows
endif endif
ifeq ($(GNUSTEP_HOST_OS),linux-gnu) ifeq ($(GNUSTEP_HOST_OS),linux-gnu)
# OBSOLETE - GNUstep environment should be setup in the environment/shell # OBSOLETE - GNUstep environment should be setup in the environment/shell
# you use to build oolite and not hardcoded here. # you use to build oolite and not hardcoded here.
@ -50,20 +54,27 @@ endif
# #
.PHONY: release .PHONY: release
release: $(DEPS) release: $(DEPS)
make -f GNUmakefile debug=no libespeak=yes make -f GNUmakefile debug=no $(HAS_ESPEAK)
.PHONY: distro-release
distro-release: $(DEPS)
make -f GNUmakefile use_distro_deps=yes debug=no $(HAS_ESPEAK)
.PHONY: release-deployment .PHONY: release-deployment
release-deployment: $(DEPS) release-deployment: $(DEPS)
make -f GNUmakefile getafix=yes DEPLOYMENT_RELEASE_CONFIGURATION=yes debug=no libespeak=yes make -f GNUmakefile DEPLOYMENT_RELEASE_CONFIGURATION=yes debug=no $(HAS_ESPEAK)
.PHONY: release-snapshot .PHONY: release-snapshot
release-snapshot: $(DEPS) release-snapshot: $(DEPS)
make -f GNUmakefile getafix=yes SNAPSHOT_BUILD=yes VERSION_STRING=$(VER) debug=no libespeak=yes make -f GNUmakefile SNAPSHOT_BUILD=yes VERSION_STRING=$(VER) debug=no $(HAS_ESPEAK)
.PHONY: debug .PHONY: debug
debug: $(DEPS) debug: $(DEPS)
make -f GNUmakefile debug=yes make -f GNUmakefile debug=yes $(HAS_ESPEAK)
.PHONY: distro-debug
distro-debug: $(DEPS)
make -f GNUmakefile use_distro_deps=yes debug=yes libespeak=yes
$(LIBJS): $(LIBJS):
ifeq ($(GNUSTEP_HOST_OS),mingw32) ifeq ($(GNUSTEP_HOST_OS),mingw32)
@echo "ERROR - this Makefile can't (yet) build the Javascript DLL" @echo "ERROR - this Makefile can't (yet) build the Javascript DLL"
@ -147,20 +158,23 @@ pkg-win-snapshot: release-snapshot ${NSISVERSIONS}
.PHONY: help .PHONY: help
help: help:
@echo "Use this Makefile to build Oolite:" @echo "Use this Makefile to build Oolite:"
@echo
@echo "NOTE: The following targets use the dependencies distributed with Oolite."
@echo
@echo " debug - builds a debug executable in oolite.app/oolite.dbg"
@echo " release - builds a release executable in oolite.app/oolite" @echo " release - builds a release executable in oolite.app/oolite"
@echo " release-deployment - builds a release executable in oolite.app/oolite" @echo " release-deployment - builds a release executable in oolite.app/oolite"
@echo " release-snapshot - builds a snapshot release in oolite.app/oolite" @echo " release-snapshot - builds a snapshot release in oolite.app/oolite"
@echo " debug - builds a debug executable in oolite.app/oolite.dbg"
@echo " all - builds the above two targets" @echo " all - builds the above two targets"
@echo " clean - removes all generated files" @echo " clean - removes all generated files"
@echo @echo
@echo " pkg-autopackage - builds a Linux autopackage"
@echo
@echo " pkg-deb - builds a release Debian package" @echo " pkg-deb - builds a release Debian package"
@echo " pkg-debtest - builds a test release Debian package" @echo " pkg-debtest - builds a test release Debian package"
@echo " pkg-debsnapshot - builds a snapshot release Debian package" @echo " pkg-debsnapshot - builds a snapshot release Debian package"
@echo " pkg-debclean - cleans up after a Debian package build" @echo " pkg-debclean - cleans up after a Debian package build"
@echo @echo
@echo " pkg-autopackage - builds a Linux autopackage"
@echo
@echo " pkg-win - builds a release version Windows installer package (test release)" @echo " pkg-win - builds a release version Windows installer package (test release)"
@echo " pkg-win-deployment - builds a release version Windows installer package (deployment release)" @echo " pkg-win-deployment - builds a release version Windows installer package (deployment release)"
@echo " pkg-win-snapshot - builds a snapshot version Windows installer package" @echo " pkg-win-snapshot - builds a snapshot version Windows installer package"

2
debian/rules vendored
View File

@ -38,7 +38,7 @@ build-stamp:
dh_testdir dh_testdir
$(MAKE) -C $(JS_SRC)/fdlibm -f Makefile.ref BUILD_OPT=1 $(MAKE) -C $(JS_SRC)/fdlibm -f Makefile.ref BUILD_OPT=1
$(MAKE) -C $(JS_SRC) -f Makefile.ref BUILD_OPT=1 $(MAKE) -C $(JS_SRC) -f Makefile.ref BUILD_OPT=1
$(GSMAKE) libespeak=yes $(GSMAKE) use_distro_deps=yes libespeak=yes
touch $@ touch $@
clean: clean-stamp unpatch clean: clean-stamp unpatch