diff options
Diffstat (limited to 'tools/scons/bs/bs_libs.py')
-rw-r--r-- | tools/scons/bs/bs_libs.py | 155 |
1 files changed, 155 insertions, 0 deletions
diff --git a/tools/scons/bs/bs_libs.py b/tools/scons/bs/bs_libs.py new file mode 100644 index 00000000000..c874b7c5c5c --- /dev/null +++ b/tools/scons/bs/bs_libs.py @@ -0,0 +1,155 @@ +# Blender library functions + +import sys +import os +import string +import SCons + +import bs_globals + +def common_libs(env): + """ + Append to env all libraries that are common to Blender and Blenderplayer + """ + env.Append (LIBS=[ + 'blender_blenloader', + 'blender_readblenfile', + 'blender_img', + 'blender_blenkernel', + 'blender_blenpluginapi', + 'blender_imbuf', + 'blender_avi', + 'blender_blenlib', + 'blender_makesdna', + 'blender_kernel', + 'blender_GHOST', + 'blender_STR', + 'blender_guardedalloc', + 'blender_CTR', + 'blender_MEM', + 'blender_MT', + 'blender_BMF', + 'soundsystem']) + if bs_globals.user_options_dict['USE_QUICKTIME'] == 1: + env.Append (LIBS=['blender_quicktime']) + +def international_libs(env): + """ + Append international font support libraries + """ + if bs_globals.user_options_dict['USE_INTERNATIONAL'] == 1: + env.Append (LIBS=bs_globals.user_options_dict['FREETYPE_LIBRARY']) + env.Append (LIBPATH=bs_globals.user_options_dict['FREETYPE_LIBPATH']) + env.Append (LIBS=['blender_FTF']) + env.Append (LIBS=bs_globals.user_options_dict['FTGL_LIBRARY']) + env.Append (LIBPATH=bs_globals.user_options_dict['FTGL_LIBPATH']) + env.Append (LIBS=bs_globals.user_options_dict['FREETYPE_LIBRARY']) + +def blender_libs(env): + """ + Blender only libs (not in player) + """ + env.Append( LIBS=['blender_creator', + 'blender_blendersrc', + 'blender_render', + 'blender_yafray', + 'blender_renderconverter', + 'blender_radiosity', + 'blender_LOD', + 'blender_BSP', + 'blender_blenkernel', + 'blender_IK', + 'blender_ONL']) + +def ketsji_libs(env): + """ + Game Engine libs + """ + if bs_globals.user_options_dict['BUILD_GAMEENGINE'] == 1: + env.Append (LIBS=['KX_blenderhook', + 'KX_converter', + 'PHY_Dummy', + 'PHY_Physics', + 'KX_ketsji', + 'SCA_GameLogic', + 'RAS_rasterizer', + 'RAS_OpenGLRasterizer', + 'blender_expressions', + 'SG_SceneGraph', + 'blender_MT', + 'KX_blenderhook', + 'KX_network', + 'blender_kernel', + 'NG_network', + 'NG_loopbacknetwork']) + if bs_globals.user_options_dict['USE_PHYSICS'] == 'solid': + env.Append (LIBS=['PHY_Sumo', 'PHY_Physics', 'blender_MT', 'extern_solid', 'extern_qhull']) + else: + env.Append (LIBS=['PHY_Ode', + 'PHY_Physics']) + env.Append (LIBS=bs_globals.user_options_dict['ODE_LIBRARY']) + env.Append (LIBPATH=bs_globals.user_options_dict['ODE_LIBPATH']) + +def player_libs(env): + """ + Player libraries + """ + env.Append (LIBS=['GPG_ghost', + 'GPC_common']) + +def player_libs2(env): + """ + Link order shenannigans: these libs are added after common_libs + """ + env.Append (LIBS=['blender_blenkernel_blc', + 'soundsystem']) + +def winblenderres(env): + """ + build the windows icon resource file + """ + if sys.platform == 'win32': + env.RES(['source/icons/winblender.rc']) + +def system_libs(env): + """ + System libraries: Python, SDL, PNG, JPEG, Gettext, OpenAL, Carbon + """ + env.Append (LIBS=['blender_python']) + env.Append (LIBS=bs_globals.user_options_dict['PYTHON_LIBRARY']) + env.Append (LIBPATH=bs_globals.user_options_dict['PYTHON_LIBPATH']) + env.Append (LINKFLAGS=bs_globals.user_options_dict['PYTHON_LINKFLAGS']) + env.Append (LIBS=bs_globals.user_options_dict['SDL_LIBRARY']) + env.Append (LIBPATH=bs_globals.user_options_dict['SDL_LIBPATH']) + env.Append (LIBS=bs_globals.user_options_dict['PNG_LIBRARY']) + env.Append (LIBPATH=bs_globals.user_options_dict['PNG_LIBPATH']) + env.Append (LIBS=bs_globals.user_options_dict['JPEG_LIBRARY']) + env.Append (LIBPATH=bs_globals.user_options_dict['JPEG_LIBPATH']) + env.Append (LIBS=bs_globals.user_options_dict['GETTEXT_LIBRARY']) + env.Append (LIBPATH=bs_globals.user_options_dict['GETTEXT_LIBPATH']) + env.Append (LIBS=bs_globals.user_options_dict['Z_LIBRARY']) + env.Append (LIBPATH=bs_globals.user_options_dict['Z_LIBPATH']) + if bs_globals.user_options_dict['USE_OPENAL'] == 1: + env.Append (LIBS=bs_globals.user_options_dict['OPENAL_LIBRARY']) + env.Append (LIBPATH=bs_globals.user_options_dict['OPENAL_LIBPATH']) + env.Append (LIBS=bs_globals.user_options_dict['PLATFORM_LIBS']) + env.Append (LIBPATH=bs_globals.user_options_dict['PLATFORM_LIBPATH']) + if sys.platform == 'darwin': + env.Append (LINKFLAGS='-framework') + env.Append (LINKFLAGS='Carbon') + env.Append (LINKFLAGS='-framework') + env.Append (LINKFLAGS='AGL') + env.Append (LINKFLAGS='-framework') + env.Append (LINKFLAGS='AudioUnit') + env.Append (LINKFLAGS='-framework') + env.Append (LINKFLAGS='AudioToolbox') + env.Append (LINKFLAGS='-framework') + env.Append (LINKFLAGS='CoreAudio') + if bs_globals.user_options_dict['USE_QUICKTIME'] == 1: + env.Append (LINKFLAGS='-framework') + env.Append (LINKFLAGS='QuickTime') + else: + env.Append (LINKFLAGS=bs_globals.user_options_dict['PLATFORM_LINKFLAGS']) + env.BuildDir (bs_globals.root_build_dir, '.', duplicate=0) + + |