import sys # Import the C flags set in the SConstruct file Import ('cflags') Import ('cxxflags') Import ('defines') Import ('platform_libs') Import ('platform_libpath') Import ('platform_linkflags') if sys.platform=='win32': platform_linkflags = ['/SUBSYSTEM:CONSOLE', '/MACHINE:I386', '/ENTRY:mainCRTStartup', '/NODEFAULTLIB:"msvcprt.lib"', '/NODEFAULTLIB:"glut32.lib"', '/NODEFAULTLIB:"libcd.lib"', #'/NODEFAULTLIB:"libc.lib"', '/NODEFAULTLIB:"libcpd.lib"', '/NODEFAULTLIB:"libcp.lib"', '/NODEFAULTLIB:"libcmtd.lib"' ] # TODO: make sure the makesdna program does not get installed on the system. source_files = ['makesdna.c'] makesdna_tool = Environment (CCFLAGS='-DBASE_HEADER="\\"source/blender/makesdna/\\"" ') makesdna_tool.Append (CPPPATH = ['#/intern/guardedalloc', '..']) makesdna_tool.Append (CCFLAGS = cflags) makesdna_tool.Append (CXXFLAGS = cxxflags) makesdna_tool.Append (CPPDEFINES = defines) makesdna_tool.Append (LIBS = platform_libs) makesdna_tool.Append (LIBPATH = platform_libpath) makesdna_tool.Append (LINKFLAGS = platform_linkflags) makesdna_tool.Append (LIBPATH = '#/lib') makesdna_tool.Append (LIBS = 'blender_guardedalloc') makesdna_tool.Program (target = 'makesdna', source = source_files) dna = Environment () dna_dict = dna.Dictionary() makesdna_name = 'makesdna' + dna_dict['PROGSUFFIX'] dna.Depends ('dna.c', makesdna_name) if sys.platform=='win32': dna.Command ('dna.c', '', "source\\blender\\makesdna\\intern\\makesdna $TARGET") else: dna.Command ('dna.c', '', "source/blender/makesdna/intern/makesdna $TARGET") obj = Object ('dna.c') Return ('obj')