[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [17447] trunk/blender: update for compiling cross compiling win32 on linux, had a lot of trouble with makesdna, the only way I could build and link was as a

Campbell Barton ideasman42 at gmail.com
Fri Nov 14 00:12:38 CET 2008


Revision: 17447
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17447
Author:   campbellbarton
Date:     2008-11-14 00:12:38 +0100 (Fri, 14 Nov 2008)

Log Message:
-----------
update for compiling cross compiling win32 on linux, had a lot of trouble with makesdna, the only way I could build and link was as a 
win32 binary.
Still unable to link blender.exe
and run with wine.

Modified Paths:
--------------
    trunk/blender/config/linuxcross-config.py
    trunk/blender/source/blender/blenlib/SConscript
    trunk/blender/source/blender/blenlib/intern/threads.c
    trunk/blender/source/blender/makesdna/intern/SConscript
    trunk/blender/source/blender/src/SConscript
    trunk/blender/tools/crossmingw.py

Modified: trunk/blender/config/linuxcross-config.py
===================================================================
--- trunk/blender/config/linuxcross-config.py	2008-11-13 22:35:40 UTC (rev 17446)
+++ trunk/blender/config/linuxcross-config.py	2008-11-13 23:12:38 UTC (rev 17447)
@@ -1,4 +1,4 @@
-LCGDIR = '../lib/windows'
+LCGDIR = '#../lib/windows'
 LIBDIR = '${LCGDIR}'
 
 WITH_BF_VERSE = False
@@ -101,6 +101,9 @@
 BF_SOLID_INC = '${BF_SOLID}'
 BF_SOLID_LIB = 'extern_solid'
 
+BF_WINTAB = LIBDIR + '/wintab'
+BF_WINTAB_INC = '${BF_WINTAB}/INCLUDE'
+
 # enable freetype2 support for text objects
 BF_FREETYPE = LIBDIR + '/gcc/freetype'
 BF_FREETYPE_INC = '${BF_FREETYPE}/include ${BF_FREETYPE}/include/freetype2'

Modified: trunk/blender/source/blender/blenlib/SConscript
===================================================================
--- trunk/blender/source/blender/blenlib/SConscript	2008-11-13 22:35:40 UTC (rev 17446)
+++ trunk/blender/source/blender/blenlib/SConscript	2008-11-13 23:12:38 UTC (rev 17447)
@@ -23,7 +23,7 @@
     cflags='-pthread'
     incs += ' ../../../extern/binreloc/include'
 
-if env['OURPLATFORM'] in ('win32-vc', 'win32-mingw'):
+if env['OURPLATFORM'] in ('win32-vc', 'win32-mingw', 'linuxcross'):
     incs += ' ' + env['BF_PTHREADS_INC']
 
 env.BlenderLib ( 'bf_blenlib', sources, Split(incs), Split(defs), libtype=['core', 'intern', 'player'], priority = [85,150,195], compileflags =cflags )

Modified: trunk/blender/source/blender/blenlib/intern/threads.c
===================================================================
--- trunk/blender/source/blender/blenlib/intern/threads.c	2008-11-13 22:35:40 UTC (rev 17446)
+++ trunk/blender/source/blender/blenlib/intern/threads.c	2008-11-13 23:12:38 UTC (rev 17447)
@@ -42,7 +42,7 @@
 
 /* for checking system threads - BLI_system_thread_count */
 #ifdef WIN32
-#include "Windows.h"
+#include "windows.h"
 #elif defined(__APPLE__)
 #include <sys/types.h>
 #include <sys/sysctl.h>

Modified: trunk/blender/source/blender/makesdna/intern/SConscript
===================================================================
--- trunk/blender/source/blender/makesdna/intern/SConscript	2008-11-13 22:35:40 UTC (rev 17446)
+++ trunk/blender/source/blender/makesdna/intern/SConscript	2008-11-13 23:12:38 UTC (rev 17447)
@@ -18,10 +18,16 @@
 								 '../../makesdna'])
 
 if env['OURPLATFORM'] == 'linuxcross':
-	makesdna_tool.Replace(CC='gcc')
-	makesdna_tool.Replace(AR='ar')
-	makesdna_tool.Replace(LINK='gcc')
+	USE_WINE = True # when cross compiling on linux 64bit this is useful
+else:
+	USE_WINE = False
 
+if not USE_WINE:
+	if env['OURPLATFORM'] == 'linuxcross':
+		makesdna_tool.Replace(CC='gcc')
+		makesdna_tool.Replace(AR='ar')
+		makesdna_tool.Replace(LINK='gcc')
+
 if sys.platform != 'cygwin':
 	makesdna_tool.Append (CCFLAGS = cflags)
 makesdna_tool.Append (CPPDEFINES = defines)
@@ -43,7 +49,10 @@
 dna.Depends ('dna.c', makesdna)
 dna.Depends ('dna.c', header_files)
 if env['OURPLATFORM'] != 'linuxcross':
-	dna.Command ('dna.c', '', root_build_dir+os.sep+"makesdna $TARGET")
+	if USE_WINE:
+		dna.Command ('dna.c', '', 'wine ' + root_build_dir+os.sep+"makesdna $TARGET")
+	else:
+		dna.Command ('dna.c', '', root_build_dir+os.sep+"makesdna $TARGET")
 else:
 	dna.Command ('dna.c', '', root_build_dir+os.sep+"makesdna.exe $TARGET")
 obj = 'intern/dna.c'

Modified: trunk/blender/source/blender/src/SConscript
===================================================================
--- trunk/blender/source/blender/src/SConscript	2008-11-13 22:35:40 UTC (rev 17446)
+++ trunk/blender/source/blender/src/SConscript	2008-11-13 23:12:38 UTC (rev 17447)
@@ -75,7 +75,7 @@
 if env['WITH_BF_OGG']:
     defs.append('WITH_OGG')
 
-if env['OURPLATFORM'] in ('win32-vc', 'win32-mingw'):
+if env['OURPLATFORM'] in ('win32-vc', 'win32-mingw', 'linuxcross'):
     incs += ' ' + env['BF_PTHREADS_INC']
 
 if env['WITH_BF_VERSE']:

Modified: trunk/blender/tools/crossmingw.py
===================================================================
--- trunk/blender/tools/crossmingw.py	2008-11-13 22:35:40 UTC (rev 17446)
+++ trunk/blender/tools/crossmingw.py	2008-11-13 23:12:38 UTC (rev 17447)
@@ -109,7 +109,7 @@
 #JB  """ I'm blindly susbstuting lines from the mingw.py
 #JB      file becase these lines cause python errors here. """
 #JB shlib_action = SCons.Action.Action(shlib_generator,generator=1)
-shlib_action = SCons.Action.CommandGenerator(shlib_generator)
+shlib_action = SCons.Action.CommandGeneratorAction(shlib_generator)
 
 res_action = SCons.Action.Action('$RCCOM', '$RCCOMSTR')
 





More information about the Bf-blender-cvs mailing list