From 5b90aafbd6815e29343f8e9aba9e3e20f85b3cc0 Mon Sep 17 00:00:00 2001 From: Chris Want Date: Sun, 21 Mar 2004 19:59:51 +0000 Subject: Added 2 options to the Makefiles (enable in environment, user-def.mk, or whatever): NAN_NO_KETSJI: when set to true, disables compilation of the game engine. NAN_JUST_BLENDERDYNAMIC: when set to true, only dynamic executable is build (i.e., no plugin, etc). Note that NAN_NO_KETSJI implies NAN_JUST_BLENDERDYNAMIC. --- source/Makefile | 24 +++++++++++++++++++++++- source/blender/src/space.c | 2 ++ source/gameengine/Makefile | 6 +++++- source/nan_compile.mk | 6 ++++++ source/nan_definitions.mk | 7 +++++++ 5 files changed, 43 insertions(+), 2 deletions(-) diff --git a/source/Makefile b/source/Makefile index 14684250c63..e163ceb023c 100644 --- a/source/Makefile +++ b/source/Makefile @@ -38,7 +38,11 @@ endif include nan_definitions.mk -DIRS = creator blender kernel gameengine +DIRS = creator blender kernel + +ifneq ($(NAN_NO_KETSJI),true) + DIRS += gameengine +endif ifeq ($(OS),windows) DIRS += icons @@ -98,6 +102,7 @@ PYPLAYERLIB ?= $(PYLIB) COMLIB += $(OCGDIR)/blender/blenlib/$(DEBUG_DIR)libblenlib.a COMLIB += $(OCGDIR)/blender/avi/$(DEBUG_DIR)libavi.a COMLIB += $(NAN_JPEG)/lib/libjpeg.a +ifneq ($(NAN_NO_KETSJI),true) COMLIB += $(OCGDIR)/gameengine/bloutines/$(DEBUG_DIR)libbloutines.a COMLIB += $(OCGDIR)/gameengine/blconverter/$(DEBUG_DIR)libblconverter.a COMLIB += $(OCGDIR)/gameengine/blphys/common/$(DEBUG_DIR)libcommon.a @@ -131,6 +136,7 @@ PYPLAYERLIB ?= $(PYLIB) COMLIB += $(OCGDIR)/gameengine/ketsji/KXNetwork/$(DEBUG_DIR)libKXNetwork.a COMLIB += $(OCGDIR)/gameengine/Network/$(DEBUG_DIR)libNetwork.a COMLIB += $(OCGDIR)/gameengine/Network/LoopBackNetwork/$(DEBUG_DIR)libLoopBackNetwork.a +endif COMLIB += $(NAN_GUARDEDALLOC)/lib/libguardedalloc.a COMLIB += $(NAN_BMFONT)/lib/$(DEBUG_DIR)libbmfont.a COMLIB += $(NAN_PNG)/lib/libpng.a @@ -207,6 +213,13 @@ endif PULIB += $(OCGDIR)/blender/readstreamglue/$(DEBUG_DIR)libreadstreamglue.a # KEY_dependkludge fix.. Remove me PULIB += $(OCGDIR)/blender/src/$(DEBUG_DIR)libsrcpublisher.a +ifeq ($(NAN_NO_KETSJI),true) + PULIB += $(NAN_MOTO)/lib/libmoto.a + PULIB += $(OCGDIR)/kernel/gen_system/$(DEBUG_DIR)libgen_system.a + PULIB += $(OCGDIR)/kernel/gen_messaging/$(DEBUG_DIR)libgen_messaging.a + COMLIB += $(NAN_SND_LIBS) +endif + SPLIB1 = $(OCGDIR)/gameengine/GamePlayer/ghost/$(DEBUG_DIR)libghost.a SPLIB1 += $(OCGDIR)/gameengine/GamePlayer/common/$(DEBUG_DIR)libcommon.a SPLIB1 += $(NAN_STRING)/lib/$(DEBUG_DIR)libstring.a @@ -447,6 +460,15 @@ ifeq ($(OS),windows) endif endif +ifeq ($(NAN_JUST_BLENDERDYNAMIC),true) + ifeq ($(OS),darwin) + BINTARGETS = blenderdynamic.app + else + BINTARGETS = blenderdynamic + endif +endif + + # prepare for NAN_BUILDINFO compile at the *sigh* link rules below ifdef NAN_BUILDINFO diff --git a/source/blender/src/space.c b/source/blender/src/space.c index 6de1d945485..6a1faf4cd35 100644 --- a/source/blender/src/space.c +++ b/source/blender/src/space.c @@ -369,6 +369,7 @@ static void restore_all_scene_cfra(LinkNode *storelist) { void start_game(void) { #if GAMEBLENDER == 1 +#ifndef NAN_NO_KETSJI Scene *sc, *startscene = G.scene; LinkNode *scene_cfra_store; @@ -426,6 +427,7 @@ void start_game(void) allqueue(REDRAWACTION, 0); allspace(REMAKEIPO, 0); allqueue(REDRAWIPO, 0); +#endif #else notice("Game engine is disabled in this release!"); #endif diff --git a/source/gameengine/Makefile b/source/gameengine/Makefile index efba2f83a3a..98df5d89a60 100644 --- a/source/gameengine/Makefile +++ b/source/gameengine/Makefile @@ -38,6 +38,10 @@ DIR = $(OCGDIR)/gameengine DIRS = BlenderRoutines DIRS += Converter DIRS += Expressions GameLogic Ketsji Rasterizer SceneGraph -DIRS += Network GamePlayer Physics +DIRS += Network Physics + +ifneq ($(NAN_JUST_BLENDERDYNAMIC),true) + DIRS += GamePlayer +endif include nan_subdirs.mk diff --git a/source/nan_compile.mk b/source/nan_compile.mk index 2a3946f1c4a..7b0770a15c8 100644 --- a/source/nan_compile.mk +++ b/source/nan_compile.mk @@ -50,6 +50,12 @@ REL_CCFLAGS += -DNDEBUG DBG_CFLAGS += -g DBG_CCFLAGS += -g +# Is the game engine getting you down? --------------------------------- + +ifeq ($(NAN_NO_KETSJI), true) + CPPFLAGS += -DNO_KETSJI +endif + # OS dependent parts --------------------------------------------------- ifeq ($(OS),beos) diff --git a/source/nan_definitions.mk b/source/nan_definitions.mk index a4a2f65afce..9d648c6d78a 100644 --- a/source/nan_definitions.mk +++ b/source/nan_definitions.mk @@ -467,6 +467,8 @@ all debug:: # enable freetype2 support for text objects #export WITH_FREETYPE2 ?= true endif + +endif endif endif endif @@ -474,4 +476,9 @@ endif endif endif endif + +# Don't want to build the gameengine? +ifeq ($(NAN_NO_KETSJI), true) + export NAN_JUST_BLENDERDYNAMIC=true + export NAN_NO_OPENAL=true endif -- cgit v1.2.3