[Bf-committers] idea on makefiles

Frederick Lee bf-committers@blender.org
Tue, 3 Dec 2002 20:11:09 -0800


On Tue, Dec 03, 2002 at 05:36:28AM -0600, Kent Mein wrote:
> I think the current autoconf stuff
> --enable-gameplayer and --with-gameblender are a bit goofy
> what do you guys think of taking these out and then
> making it so the source makefile creates build commands for all 3.
> (i.e. blender, blenderplayer, and the plugin)
> but it only builds blender by default and then you need to explicitly
> build the other two?
> 
> Kent
> -- 
> mein@cs.umn.edu
> http://www.cs.umn.edu/~mein

There are files in source/blender/src that link to objects under
source/gameengine/*, in particular the Sound Editor (which uses the game
engine's sound system).  In source/blender/src/editsound.c, there are
large chunks of code guarded by #if GAMEBLENDER == 1.  If there isn't a
way to conditionally compile those chunks, large pieces of gameengine
may need to go into standalone (game-less) blender, or otherwise have a
set of dummy types and functions to keep the linker happy.

One plausible solution is to make the game engine a so/dll that is
optionally loaded at run-time, so that the sound editor functions don't
trigger link-time errors.  The problems I see with this is (a)
establishing a platform-agnostic method of run-time loading libraries
and (b) I don't know if any of us can pull this off right now.

I can understand factoring out the standalone player, but the game
engine stuff is a rather sticky problem at the moment.  The *really*
simple thing is to just slap in the game engine as an integral part of
the whole blender app, but I'm in the camp that wants the game engine
stuff as a separate reusable module.

-Fred <phaethon>