world_generator/SCsub

50 lines
1.2 KiB
Plaintext

import os
Import('env')
module_env = env.Clone()
if os.path.isdir('../entity_spell_system'):
module_env.Append(CPPDEFINES=['ESS_PRESENT'])
if os.path.isdir('../voxelman'):
module_env.Append(CPPDEFINES=['VOXELMAN_PRESENT'])
if os.path.isdir('../fastnoise'):
module_env.Append(CPPDEFINES=['FASTNOISE_PRESENT'])
if os.path.isdir('../props'):
module_env.Append(CPPDEFINES=['PROPS_PRESENT'])
if os.path.isdir('../terraman'):
module_env.Append(CPPDEFINES=['TERRAMAN_PRESENT'])
sources = [
"register_types.cpp",
"main/dungeon_room.cpp",
"main/dungeon_corridor.cpp",
"main/dungeon.cpp",
"main/biome.cpp",
"main/planet.cpp",
"data/world_generator_prop_data.cpp",
"world_generator.cpp",
]
if ARGUMENTS.get('custom_modules_shared', 'no') == 'yes':
# Shared lib compilation
module_env.Append(CCFLAGS=['-fPIC'])
module_env['LIBS'] = []
shared_lib = module_env.SharedLibrary(target='#bin/world_generator', source=sources)
shared_lib_shim = shared_lib[0].name.rsplit('.', 1)[0]
env.Append(LIBS=[shared_lib_shim])
env.Append(LIBPATH=['#bin'])
else:
# Static compilation
module_env.add_source_files(env.modules_sources, sources)