--- default.bam.orig 2010-03-24 22:16:59.000000000 +0100 +++ default.bam 2010-03-24 22:17:32.000000000 +0100 @@ -7,6 +7,8 @@ config:Add(OptFindCompiler()) config:Add(OptTestCompileC("stackprotector", "int main(){return 0;}", "-fstack-protector -fstack-protector-all")) config:Add(OptFindLibrary("zlib", "zlib.h", false)) +config:Add(OptFindLibrary("pnglite", "pnglite.h", false)) +config:Add(OptFindLibrary("wavpack", "wavpack/wavpack.h", false)) config:Add(SDL.OptFind("sdl", true)) config:Finalize("config.bam") @@ -150,9 +152,6 @@ settings.cc.includes:Add("src/engine/external/zlib") end - -- build the small libraries - wavpack = Compile(settings, Collect("src/engine/external/wavpack/*.c")) - pnglite = Compile(settings, Collect("src/engine/external/pnglite/*.c")) -- build game components engine_settings = settings:Copy() @@ -160,6 +159,31 @@ client_settings = engine_settings:Copy() launcher_settings = engine_settings:Copy() + -- compile pnglite if needed + if config.pnglite.value == 1 then + client_settings.link.libs:Add("pnglite") + if config.pnglite.include_path then + client_settings.cc.includes:Add(config.pnglite.include_path) + end + pnglite = {} + else + pnglite = Compile(settings, Collect("src/engine/external/pnglite/*.c")) + client_settings.cc.includes:Add("src/engine/external/pnglite") + end + + -- compile wavpack if needed + if config.wavpack.value == 1 then + client_settings.link.libs:Add("wavpack") + if config.wavpack.include_path then + client_settings.cc.includes:Add(config.wavpack.include_path) + end + wavpack = {} + else + wavpack = Compile(settings, Collect("src/engine/external/wavpack/*.c")) + client_settings.cc.includes:Add("src/engine/external") + end + + if family == "unix" then if platform == "macosx" then client_settings.link.frameworks:Add("OpenGL")