diff -C2 -r fluxus/libfluxus/src/TexturePainter.cpp fluxus.mac.patch/libfluxus/src/TexturePainter.cpp *** fluxus/libfluxus/src/TexturePainter.cpp 2007-10-28 14:06:55.000000000 +0100 --- fluxus.mac.patch/libfluxus/src/TexturePainter.cpp 2007-11-02 11:25:47.000000000 +0100 *************** *** 92,96 **** { unsigned int id; ! glGenTextures(1,&id); params.ID=id; // ahem //\todo this means mipmap levels won't be cached --- 92,96 ---- { unsigned int id; ! glGenTextures(1,reinterpret_cast(&id)); params.ID=id; // ahem //\todo this means mipmap levels won't be cached *************** *** 123,127 **** unsigned int primary = params.ID; unsigned int id; ! glGenTextures(1,&id); params.ID=id; // ahem m_TextureMap[params.ID]=desc; --- 123,127 ---- unsigned int primary = params.ID; unsigned int id; ! glGenTextures(1,reinterpret_cast(&id)); params.ID=id; // ahem m_TextureMap[params.ID]=desc; diff -C2 -r fluxus/modules/fluxus-audio/SConscript fluxus.mac.patch/modules/fluxus-audio/SConscript *** fluxus/modules/fluxus-audio/SConscript 2007-01-10 20:19:00.000000000 +0100 --- fluxus.mac.patch/modules/fluxus-audio/SConscript 2007-11-02 11:25:47.000000000 +0100 *************** *** 1,5 **** ############################################################### # SConscript for fluxus-audio - # # This is the main PLT module for the fluxus audio functions --- 1,4 ---- *************** *** 13,18 **** Source = Split("src/FluxusAudio.cpp \ src/AudioCollector.cpp \ ! src/JackClient.cpp "+ ! MZDYN) env.SharedLibrary(source = Source, --- 12,17 ---- Source = Split("src/FluxusAudio.cpp \ src/AudioCollector.cpp \ ! src/JackClient.cpp") + \ ! [MZDYN] env.SharedLibrary(source = Source, diff -C2 -r fluxus/modules/fluxus-engine/SConscript fluxus.mac.patch/modules/fluxus-engine/SConscript *** fluxus/modules/fluxus-engine/SConscript 2007-06-12 01:47:16.000000000 +0200 --- fluxus.mac.patch/modules/fluxus-engine/SConscript 2007-11-02 11:25:47.000000000 +0100 *************** *** 9,13 **** Target = "fluxus-engine.so" Install = BinaryModulesLocation ! Libs = Split("GL GLU glut GLEW fluxus png ode tiff jpeg") Source = Split("src/Engine.cpp \ --- 9,17 ---- Target = "fluxus-engine.so" Install = BinaryModulesLocation ! Libs = Split("GLEW fluxus png ode tiff jpeg") ! if env['PLATFORM'] == 'posix': ! Libs += Split("GL GLU glut") ! ! env.Append(LIBPATH = "../../libfluxus") Source = Split("src/Engine.cpp \ *************** *** 24,29 **** src/PhysicsFunctions.cpp \ src/TurtleBuilder.cpp \ ! src/PFuncContainer.cpp " + ! MZDYN) env.SharedLibrary(source = Source, --- 28,33 ---- src/PhysicsFunctions.cpp \ src/TurtleBuilder.cpp \ ! src/PFuncContainer.cpp") + \ ! [MZDYN] env.SharedLibrary(source = Source, diff -C2 -r fluxus/modules/fluxus-osc/SConscript fluxus.mac.patch/modules/fluxus-osc/SConscript *** fluxus/modules/fluxus-osc/SConscript 2007-01-10 20:19:00.000000000 +0100 --- fluxus.mac.patch/modules/fluxus-osc/SConscript 2007-11-02 11:25:47.000000000 +0100 *************** *** 12,17 **** Source = Split("src/FluxusOSC.cpp \ src/OSCServer.cpp \ ! src/OSCCore.cpp "+ ! MZDYN) env.SharedLibrary(source = Source, --- 12,17 ---- Source = Split("src/FluxusOSC.cpp \ src/OSCServer.cpp \ ! src/OSCCore.cpp") + \ ! [MZDYN] env.SharedLibrary(source = Source, Only in fluxus.mac.patch: .sconf_temp diff -C2 -r fluxus/SConstruct fluxus.mac.patch/SConstruct *** fluxus/SConstruct 2007-10-24 21:51:40.000000000 +0200 --- fluxus.mac.patch/SConstruct 2007-11-02 11:43:14.000000000 +0100 *************** *** 6,69 **** # the fluxus PLT modules ! MajorVersion = "0" ! MinorVersion = "14" ! FluxusVersion = MajorVersion+"."+MinorVersion ! Target = "fluxus-0.14" ! ! # changed prefix and pltprefix so they can be invoked at runtime ! # like scons Prefix=/usr PLTPrefix=/usr instead of default /usr/local ! ! Prefix = ARGUMENTS.get('Prefix','/usr/local') ! PLTPrefix = ARGUMENTS.get('PLTPrefix','/usr/local') ! PLTInclude = PLTPrefix + "/include/plt" ! PLTLib = PLTPrefix + "/lib/plt" ! ! CollectsLocation = PLTPrefix + "/lib/plt/collects/" ! CollectsInstall = CollectsLocation + "fluxus-"+FluxusVersion ! ! LibPaths = ["/usr/lib", ! PLTLib, ! "../../libfluxus"] ! ! IncludePaths = ["/usr/local/include", ! "/usr/include", ! "/usr/include/freetype2", # arg - freetype needs to be ! "/usr/local/include/freetype2", # on the include path :( ! PLTInclude, ! "../../libfluxus/src"] ! ! ################################################################################ ! # Make the "one" environment for building and installing ! ! env = Environment(CCFLAGS = '-ggdb -pipe -Wall -O3 -ffast-math -Wno-unused -fPIC', ! LIBPATH = LibPaths, ! CPPPATH = IncludePaths, ! VERSION_NUM = FluxusVersion) ! ! env.Append(CCFLAGS=' -DFLUXUS_MAJOR_VERSION='+MajorVersion) ! env.Append(CCFLAGS=' -DFLUXUS_MINOR_VERSION='+MinorVersion) ! env.Append(CCFLAGS=" -DCOLLECTS_LOCATION="+"\"\\\""+CollectsLocation+"\"\\\"") # multitexturing causes crashes on some cards, default it to off, and # enable users to enable manually while I figure out what it is... ! if ARGUMENTS.get("MULTITEXTURE","0")=="1": ! env.Append(CCFLAGS=' -DENABLE_MULTITEXTURE') ! if ARGUMENTS.get("GLSL","1")=="1": ! env.Append(CCFLAGS=' -DGLSL') ! if ARGUMENTS.get("STEREODEFAULT","0")=="1": ! env.Append(CCFLAGS=' -DSTEREODEFAULT') ! if ARGUMENTS.get("ACCUM_BUFFER","0")=="1": ! env.Append(CCFLAGS=' -DACCUM_BUFFER') # need to do this to get scons to link plt's mzdyn.o ! env["STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME"]=1 ! MZDYN = PLTPrefix+"/lib/plt/mzdyn.o" ! ! if ARGUMENTS.get("3M","1")=="1": ! env.Append(CCFLAGS=' -DMZ_PRECISE_GC') ! MZDYN = PLTPrefix+"/lib/plt/mzdyn3m.o" ################################################################################ --- 6,72 ---- # the fluxus PLT modules ! MajorVersion = '0' ! MinorVersion = '14' ! FluxusVersion = MajorVersion + '.' + MinorVersion ! Target = 'fluxus-' + FluxusVersion ! ! env = Environment(VERSION_NUM = FluxusVersion) ! OS = env['PLATFORM'] ! ! Prefix = ARGUMENTS.get('Prefix', '/usr/local') ! ! if OS == 'posix': ! PLTPrefix = ARGUMENTS.get('PLTPrefix', '/usr/local') ! PLTInclude = ARGUMENTS.get('PLTInclude', PLTPrefix + '/include/plt') ! PLTLib = ARGUMENTS.get('PLTLib', PLTPrefix + '/lib/plt') ! CollectsLocation = PLTLib + '/collects/' ! PKG_CONFIG = ARGUMENTS.get('PKGConfig', 'pkg-config') ! elif OS == 'darwin': ! PLTPrefix = ARGUMENTS.get('PLTPrefix', '/Applications/PLT Scheme v371') ! PLTInclude = ARGUMENTS.get('PLTInclude', PLTPrefix + '/include/') ! PLTLib = ARGUMENTS.get('PLTLib', PLTPrefix + '/lib/') ! CollectsLocation = PLTPrefix + '/collects/' ! PKG_CONFIG = ARGUMENTS.get('PKGConfig', '/opt/local/bin/pkg-config') ! ! CollectsInstall = CollectsLocation + 'fluxus-' + FluxusVersion ! BinaryInstallLocation = Prefix + '/bin/' ! ! ################################################################################ ! # Change the environment for building and installing ! ! env.MergeFlags(['-ggdb -pipe -Wall -O3 -ffast-math -Wno-unused -fPIC', ! '!%s --cflags --libs libpng' % PKG_CONFIG, ! '!%s --cflags --libs freetype2' % PKG_CONFIG, ! '!%s --cflags --libs fftw3' % PKG_CONFIG, ! '!%s --cflags --libs sndfile' % PKG_CONFIG]) ! env.Append(CCFLAGS = ['-DFLUXUS_MAJOR_VERSION=' + MajorVersion, ! '-DFLUXUS_MINOR_VERSION=' + MinorVersion, ! '-DCOLLECTS_LOCATION=' + '\\"' + CollectsLocation + '\\"', ! '-DMZ_PRECISE_GC']) ! env.Append(CPPPATH = [PLTInclude, ! '../../libfluxus/src']) ! env.Append(LIBPATH = PLTLib) ! ! if OS == 'darwin': ! env.Append(FRAMEWORKS = ['GLUT', 'OpenGL', 'CoreAudio', 'PLT_MzScheme'], ! FRAMEWORKPATH = [PLTLib]) # multitexturing causes crashes on some cards, default it to off, and # enable users to enable manually while I figure out what it is... ! if ARGUMENTS.get('MULTITEXTURE', '0') == '1': ! env.Append(CCFLAGS = '-DENABLE_MULTITEXTURE') ! if ARGUMENTS.get('GLSL', '1') == '1': ! env.Append(CCFLAGS = '-DGLSL') ! if ARGUMENTS.get('STEREODEFAULT', '0') == '1': ! env.Append(CCFLAGS = '-DSTEREODEFAULT') ! if ARGUMENTS.get('ACCUM_BUFFER', '0') == '1': ! env.Append(CCFLAGS = '-DACCUM_BUFFER') # need to do this to get scons to link plt's mzdyn.o ! env['STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME'] = 1 ! MZDYN = PLTLib + 'mzdyn3m.o' ################################################################################ *************** *** 73,114 **** # to be passed to the CheckLibWithHeader(...) at configure time. # We may add extra libraries later on per platform basis ! LibList = [["m", "math.h"], ! ["pthread", "pthread.h"], ! ["dl", "stdio.h"], ! ["mzscheme3m", "scheme.h"], ! ["jpeg", ["stdio.h", "stdlib.h", "jpeglib.h"]], ! ["tiff", "tiff.h"], ! ["freetype", "ft2build.h"], ! ["z", "zlib.h"], ! ["png", "png.h"], ! ["ode", "ode/ode.h"], ! ["jack", "jack/jack.h"], ! ["sndfile", "sndfile.h"], ! ["fftw3", "fftw3.h"], ! ["lo", "lo/lo.h"]] ! if env['PLATFORM'] == 'darwin': ! env.Replace(LINK = "macos/libtool --mode=link g++") ! env.Prepend(LINKFLAGS = ["-static"]) ! else: ! env.Prepend(LINKFLAGS = ["-rdynamic"]) ! LibList += [["X11", "X11/Xlib.h"], ! ["GL", "GL/gl.h"], ! ["GLU", "GL/glu.h"], ! ["glut", "GL/glut.h"], ! ["GLEW", "GL/glew.h"]] ! env.Append(LIBPATH = ["/usr/X11R6/lib"]) # add the X11 libs on - needed if we are not building on xorg ! if ARGUMENTS.get("X11",0): ! LibList=[["Xi", "X11/Xlib.h"], ! ["Xmu", "X11/Xlib.h"], ! ["Xext", "X11/Xlib.h"], ! ["Xt", "X11/Xlib.h"], ! ["SM", "X11/Xlib.h"], ! ["ICE", "X11/Xlib.h"]] + LibList; ################################################################################ ! # Make sure we have these libraries availible if not GetOption('clean'): --- 76,117 ---- # to be passed to the CheckLibWithHeader(...) at configure time. # We may add extra libraries later on per platform basis ! LibList = [['m', 'math.h'], ! ['pthread', 'pthread.h'], ! ['dl', 'stdio.h'], ! ['jpeg', ['stdio.h', 'stdlib.h', 'jpeglib.h']], ! ['tiff', 'tiff.h'], ! ['freetype', 'ft2build.h'], ! ['z', 'zlib.h'], ! ['png', 'png.h'], ! ['ode', 'ode/ode.h'], ! ['jack', 'jack/jack.h'], ! ['sndfile', 'sndfile.h'], ! ['fftw3', 'fftw3.h'], ! ['lo', 'lo/lo.h'], ! ['mzscheme3m', 'scheme.h']] ! if OS == 'darwin': ! env.Append(FRAMEWORKS = ['GLUT', 'OpenGL', 'CoreAudio' ,'PLT_MzScheme'], ! FRAMEWORKPATH = [PLTLib]) ! elif env['PLATFORM'] == 'posix': ! env.Prepend(LINKFLAGS = ['-rdynamic']) ! LibList += [['X11', 'X11/Xlib.h'], ! ['GL', 'GL/gl.h'], ! ['GLU', 'GL/glu.h'], ! ['glut', 'GL/glut.h'], ! ['GLEW', 'GL/glew.h']] ! env.Append(LIBPATH = ['/usr/X11R6/lib']) # add the X11 libs on - needed if we are not building on xorg ! if ARGUMENTS.get('X11', 0): ! LibList = [['Xi', 'X11/Xlib.h'], ! ['Xmu', 'X11/Xlib.h'], ! ['Xext', 'X11/Xlib.h'], ! ['Xt', 'X11/Xlib.h'], ! ['SM', 'X11/Xlib.h'], ! ['ICE', 'X11/Xlib.h']] + LibList; ################################################################################ ! # Make sure we have these libraries available if not GetOption('clean'): *************** *** 118,145 **** conf = Configure(env) ! # all libraries are required, but they can be checked for independently ! # (hence autoadd=0), which allows us to speed up the tests ... ! for (lib,headers) in LibList: ! if not conf.CheckLibWithHeader(lib, headers, 'C', autoadd = 1): print "ERROR: '%s' must be installed!" % (lib) Exit(1) env = conf.Finish() ! # ... but we shouldn't forget to add them to LIBS manually ! env.Replace(LIBS = [rec[0] for rec in LibList]) ! ################################################################################ # Build the fluxus application - - Install = Prefix + "/bin" ! Source = ["src/GLEditor.cpp", ! "src/GLFileDialog.cpp", ! "src/Interpreter.cpp", ! "src/Repl.cpp", ! "src/Recorder.cpp", ! "src/FluxusMain.cpp", ! "src/PolyGlyph.cpp", ! "src/main.cpp"] env.Program(source = Source, target = Target) --- 121,149 ---- conf = Configure(env) ! for (lib, headers) in LibList: ! if (OS == 'darwin') and (lib == 'mzscheme3m'): ! # FIXME: check for mzscheme3m using -framework instead of the ! # default -lmzscheme3m that fails on mac ! if not conf.CheckCHeader(headers): ! print "ERROR: '%s' must be installed!" % (lib) ! Exit(1) ! elif not conf.CheckLibWithHeader(lib, headers, 'C', ! autoadd = 1): print "ERROR: '%s' must be installed!" % (lib) Exit(1) env = conf.Finish() ! ################################################################################ # Build the fluxus application ! Source = ['src/GLEditor.cpp', ! 'src/GLFileDialog.cpp', ! 'src/Interpreter.cpp', ! 'src/Repl.cpp', ! 'src/Recorder.cpp', ! 'src/FluxusMain.cpp', ! 'src/PolyGlyph.cpp', ! 'src/main.cpp'] env.Program(source = Source, target = Target) *************** *** 149,175 **** # call the core library builder and the scheme modules ! SConscript(dirs = Split("libfluxus modules"), exports = ["env", "CollectsInstall", "MZDYN"]) ################################################################################ # packaging / installing ! if env['PLATFORM'] == 'darwin': ! from macos.osxbundle import * ! TOOL_BUNDLE(env) ! # We add frameworks after configuration bit so that testing is faster. ! env.Replace(FRAMEWORKS = Split("GLUT OpenGL CoreAudio")) ! env.Alias("app", env.MakeBundle("Fluxus.app", ! "fluxus", ! "key", ! "macos/fluxus-Info.plist", ! typecode='APPL', ! icon_file='macos/fluxus.icns')) ! ! env['BUILDERS']['DiskImage'] = Builder(action = BuildDmg) ! DmgFiles = [File("COPYING"), Dir("Fluxus.app"), Dir("docs"), Dir("examples"), Dir("scm")] ! env.Alias("dmg", env.DiskImage('Fluxus-' + FluxusVersion + '.dmg', ! DmgFiles)) ! else: ! env.Install(Install, Target) ! env.Alias('install', Prefix) ! --- 153,162 ---- # call the core library builder and the scheme modules ! SConscript(dirs = Split("libfluxus modules"), ! exports = ["env", "CollectsInstall", "MZDYN"]) ################################################################################ # packaging / installing ! env.Install(BinaryInstallLocation, Target) ! env.Alias('install', [Prefix, CollectsInstall])