[Bf-committers] Re: Blender / FreeBSD w/ scons
Wed, 11 Aug 2004 18:07:26 -0700
Content-Type: text/plain; charset=US-ASCII
While I may use FreeBSD in my personal workstations (even my laptop),
FreeBSD isn't very prolific as a workstation OS. I think people are
affraid of it or something. It also makes a great OS for a diskless
renderfarm. (where I'm using FreeBSD+Blender+DrQueue)
Attached is the cvs diff from the current bf-blender. I've tested it on
FreeBSD 4.10-STABLE, 5.2-RELEASE and 5.2.1-RELEASE. For 5.2, the python
2.3 version I had on the system didn't work right (it compiled, but
scripts using "import math" failed). Upgrading to the latest python port
resolved the problem.
I noticed the "scons release" creates a tar.gz with the python scripts,
but not the plugins. I'm not sure if this is a scons global issue, or
just specific to FreeBSD. Since I was making the alteration primarily
for my own purposes, I didn't need the release building & haven't
investigated that further. Since everything else is pretty much the same
for FreeBSD as for Linux, I'm guessing it's a scons issue.
>>> Hans Lambermont <email@example.com> 08/11/04 11:06 AM >>>
Theodore Schundler wrote:
> Since it seems you're the one responsible for the FreeBSD binary, do
> you have a patched SConstruct?
No, I didn't look into SC yet ... (I should)
> I made some modifications for it to work with FreeBSD for me
> (specifically 5.2, but it should be identical for 4.x). I found it off
> that there isn't a FreeBSD entry for scons in the CVS version of
> SConstruct, since it is an officially listed platform for blender. So
> I figured I'd ask for the *official* FreeBSD tuned SConstruct. Or, if
> you're still using (g)make,
That's what I still use (I wrote the system at NaN).
> would you like my version (pretty much just based on the OpenBSD and
> Linux entries).
Sure. I'm pretty time-constrained, so I can use all the help there is.
Do you have cvs commit rights ? Or do you want me to commit it ?
Glad to hear something from the FreeBSD community, not many users I'm
ps. Let's cc firstname.lastname@example.org from your reply on.
http://lambermont.webhop.org/ () ASCII-ribbon campaign against vCards,
/\ HTML-mail and proprietary formats.
Content-Type: text/plain; name="patch.txt"
Content-Disposition: attachment; filename="patch.txt"
RCS file: /cvsroot/bf-blender/blender/SConstruct,v
retrieving revision 1.82
diff -r1.82 SConstruct
> elif sys.platform=='freebsd4' or sys.platform=='freebsd5':
> print "Building for FreeBSD"
> use_international = 'false'
> use_gameengine = 'false'
> use_openal = 'false'
> use_fmod = 'false'
> use_quicktime = 'false'
> use_sumo = 'false'
> use_ode = 'false'
> use_buildinfo = 'true'
> build_blender_dynamic = 'true'
> build_blender_static = 'false'
> build_blender_player = 'false'
> build_blender_plugin = 'false'
> release_flags = ['-O2']
> debug_flags = ['-O2', '-g']
> extra_flags = ['-pipe', '-fPIC', '-funsigned-char']
> cxxflags = 
> defines = 
> warn_flags = ['-Wall','-W']
> window_system = 'X11'
> platform_libs = ['m', 'stdc++', 'util']
> platform_libpath = 
> platform_linkflags = ['-pthread']
> extra_includes = 
> z_lib = ['z']
> z_libpath = ['/usr/lib']
> z_include = ['/usr/include']
> # png library information
> png_lib = ['png']
> png_libpath = ['/usr/local/lib']
> png_include = ['/usr/local/include']
> # jpeg library information
> jpeg_lib = ['jpeg']
> jpeg_libpath = ['/usr/local/lib']
> jpeg_include = ['/usr/local/include']
> # OpenGL library information
> opengl_lib = ['GL', 'GLU']
> opengl_static = ['/usr/lib/libGL.a', '/usr/lib/libGLU.a']
> opengl_libpath = ['/usr/lib', '/usr/X11R6/lib']
> opengl_include = ['/usr/X11R6/include/']
> # SDL library information
> sdl_env.ParseConfig ('sdl11-config --cflags --libs')
> sdl_cflags = sdl_env.Dictionary()['CCFLAGS']
> sdl_include = sdl_env.Dictionary()['CPPPATH']
> sdl_libpath = ['/usr/local/include/SDL11']
> sdl_lib = sdl_env.Dictionary()['LIBS']
> # SOLID library information
> solid_lib =  # TODO
> solid_libpath =  # TODO
> solid_include = ['#extern/solid']
> qhull_lib =  # TODO
> qhull_libpath =  # TODO
> qhull_include = ['#extern/qhull/include']
> # ODE library information
> ode_lib = ['ode']
> ode_libpath = ['#../lib/linux-glibc2.2.5-i386/ode/lib']
> ode_include = ['#../lib/linux-glibc2.2.5-i386/ode/include']
> # Python library information
> python_lib = ['python%d.%d' % sys.version_info[0:2]]
> python_libpath = [sysconfig.get_python_lib (0, 1) + '/config']
> python_include = [sysconfig.get_python_inc ()]
> python_linkflags = 
> # International support information
> ftgl_lib = ['ftgl']
> ftgl_libpath = ['#../lib/linux-glibc2.2.5-i386/ftgl/lib']
> ftgl_include = ['#../lib/linux-glibc2.2.5-i386/ftgl/include']
> freetype_env.ParseConfig('pkg-config --cflags --libs freetype2')
> freetype_lib = freetype_env.Dictionary()['LIBS']
> freetype_libpath = freetype_env.Dictionary()['LIBPATH']
> freetype_include = freetype_env.Dictionary()['CPPPATH']
> gettext_lib = 
> gettext_libpath = 
> gettext_include = 
> # OpenAL library information
> openal_lib = ['openal']
> openal_libpath = ['/usr/lib']
> openal_include = ['/usr/include']
< elif sys.platform in ['linux2', 'linux-i386']:
> elif sys.platform in ['linux2', 'linux-i386', 'freebsd4', 'freebsd5']:
> elif sys.platform == 'freebsd4':
> zipext += ".tar.gz"
> pf = "freebsd4"
> elif sys.platform == 'freebsd5':
> zipext += ".tar.gz"
> pf = "freebsd5"
< elif sys.platform == 'linux2' or sys.platform == 'linux-i386':
< elif sys.platform in ['win32', 'linux2', 'linux-i386']:
> elif sys.platform in ['win32', 'linux2', 'linux-i386', 'freebsd4', 'freebsd5']:
RCS file: /cvsroot/bf-blender/blender/extern/solid/SConscript,v
retrieving revision 1.6
diff -r1.6 SConscript
< elif sys.platform=='linux2' or sys.platform=='linux-i386':
> elif sys.platform=='linux2' or sys.platform=='linux-i386' or sys.platform=='freebsd4' or sys.platform=='freebsd5':