=Scons=
[blender.git] / source / blender / src / SConscript
index 8c3de92545025341ee4029d94d1d4ed261c6749a..58aa3ddad88171619786bd198667186eeaa2cf5e 100644 (file)
@@ -4,6 +4,18 @@ Import ('env')
 # TODO: src_env.Append (CCFLAGS = user_options_dict['SDL_CFLAGS'])
 
 sources = env.Glob('*.c')
+numobj = len(sources)
+maxobj = 30
+
+numlibs = numobj / maxobj
+if (numobj % maxobj):
+       numlibs = numlibs + 1
+subsources = []
+
+if (env['OURPLATFORM'] == 'win32-mingw'):
+    for i in range(numlibs - 1):
+        subsources.append(sources[i*maxobj:(i+1)*maxobj])
+    subsources.append(sources[(numlibs-1)*maxobj:])
 
 incs = ' #/intern/guardedalloc #/intern/memutil'
 incs += ' ../blenlib ../makesdna ../blenkernel'
@@ -11,7 +23,7 @@ incs += ' ../include #/intern/bmfont ../imbuf ../render/extern/include'
 incs += ' #/intern/bsp/extern ../radiosity/extern/include'
 incs += ' #/intern/decimation/extern ../blenloader ../python'
 incs += ' ../../kernel/gen_system #/intern/SoundSystem ../readstreamglue'
-incs += ' ../img ../quicktime #/intern/elbeem/extern'
+incs += ' ../quicktime #/intern/elbeem/extern'
 incs += ' #/intern/ghost #/intern/opennl/extern'
 
 incs += ' ' + env['BF_PYTHON_INC']
@@ -20,6 +32,9 @@ incs += ' ' + env['BF_OPENGL_INC']
 
 defs = []
 
+if env['WITH_BF_YAFRAY'] == 0:
+    defs.append('DISABLE_YAFRAY')
+
 if env['WITH_BF_INTERNATIONAL'] == 1:
     incs += ' ../ftfont'
     defs.append('INTERNATIONAL')
@@ -32,11 +47,24 @@ if env['WITH_BF_QUICKTIME']==1:
     incs += ' ' + env['BF_QUICKTIME_INC']
     defs.append('WITH_QUICKTIME')
 
+if env['WITH_BF_ICONV'] == 1:
+    incs += ' ' + env['BF_ICONV_INC']
+    defs.append('WITH_ICONV')
+
 if env['WITH_BF_FFMPEG'] == 1:
     defs.append('WITH_FFMPEG')
+    incs += ' ' + env['BF_FFMPEG_INC']
+
+if env['WITH_BF_VERSE']:
+    defs.append('WITH_VERSE')
+    incs += ' ' + env['BF_VERSE_INCLUDE']
 
 # TODO buildinfo
 if env['BF_BUILDINFO'] == 1:
     defs.append('NAN_BUILDINFO')
 
-env.BlenderLib ( libname = 'src', sources = sources, includes = Split(incs), defines = defs, libtype=['core', 'intern'], priority = [5, 25] )
+if (env['OURPLATFORM'] == 'win32-mingw'):
+    for i in range(numlibs):
+        env.BlenderLib ( libname = 'src%d' % (i), sources = subsources[i], includes = Split(incs), defines = defs, libtype=['core', 'intern'], priority = [5, 25] )
+else:
+    env.BlenderLib ( libname = 'src', sources = sources, includes = Split(incs), defines = defs, libtype=['core', 'intern'], priority = [5, 25] )