[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [42588] trunk/blender: OSX: proper scons config and linking weak for jackOSX and errorhandling

jens verwiebe info at jensverwiebe.de
Mon Dec 12 23:17:13 CET 2011


Revision: 42588
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=42588
Author:   jensverwiebe
Date:     2011-12-12 22:17:02 +0000 (Mon, 12 Dec 2011)
Log Message:
-----------
OSX: proper scons config and linking weak for jackOSX and errorhandling

Modified Paths:
--------------
    trunk/blender/SConstruct
    trunk/blender/build_files/scons/config/darwin-config.py
    trunk/blender/intern/audaspace/jack/AUD_JackDevice.h

Modified: trunk/blender/SConstruct
===================================================================
--- trunk/blender/SConstruct	2011-12-12 21:01:39 UTC (rev 42587)
+++ trunk/blender/SConstruct	2011-12-12 22:17:02 UTC (rev 42588)
@@ -272,7 +272,7 @@
         if k not in B.arguments:
             env[k] = v
 
-# Extended OSX_SDK and 3D_CONNEXION_CLIENT_LIBRARY detection for OSX
+# Extended OSX_SDK and 3D_CONNEXION_CLIENT_LIBRARY and JAckOSX detection for OSX
 if env['OURPLATFORM']=='darwin':
     print B.bc.OKGREEN + "Detected Xcode version: -- " + B.bc.ENDC + env['XCODE_CUR_VER'][:9] + " --"
     print "Available " + env['MACOSX_SDK_CHECK']
@@ -291,6 +291,16 @@
         else:
             env.Append(LINKFLAGS=['-Xlinker','-weak_framework','-Xlinker','3DconnexionClient'])
 
+    # for now, Mac builders must download and install the JackOSX framework 
+    # necessary header file lives here when installed:
+    # /Library/Frameworks/Jackmp.framework/Versions/A/Headers/jack.h
+    if env['WITH_BF_JACK'] == 1:
+        if not os.path.exists('/Library/Frameworks/Jackmp.framework'):
+            print "JackOSX install not found, disabling WITH_BF_JACK" # avoid build errors !
+            env['WITH_BF_JACK'] = 0
+        else:
+            env.Append(LINKFLAGS=['-Xlinker','-weak_framework','-Xlinker','Jackmp'])
+
 if env['WITH_BF_OPENMP'] == 1:
         if env['OURPLATFORM'] in ('win32-vc', 'win64-vc'):
                 env['CCFLAGS'].append('/openmp')

Modified: trunk/blender/build_files/scons/config/darwin-config.py
===================================================================
--- trunk/blender/build_files/scons/config/darwin-config.py	2011-12-12 21:01:39 UTC (rev 42587)
+++ trunk/blender/build_files/scons/config/darwin-config.py	2011-12-12 22:17:02 UTC (rev 42588)
@@ -148,12 +148,12 @@
 WITH_BF_STATICCXX = False
 BF_CXX_LIB_STATIC = '${BF_CXX}/lib/libstdc++.a'
 
-# TODO - set proper paths here (add precompiled to lib/ ? )
-WITH_BF_JACK = False
-BF_JACK = '/usr'
-BF_JACK_INC = '${BF_JACK}/include/jack'
+# we use simply jack framework
+WITH_BF_JACK = True
+BF_JACK = '/Library/Frameworks/Jackmp.framework'
+BF_JACK_INC = '${BF_JACK}/headers'
 BF_JACK_LIB = 'jack'
-BF_JACK_LIBPATH = '${BF_JACK}/lib'
+BF_JACK_LIBPATH = '${BF_JACK}'
 
 WITH_BF_SNDFILE = True
 BF_SNDFILE = LIBDIR + '/sndfile'

Modified: trunk/blender/intern/audaspace/jack/AUD_JackDevice.h
===================================================================
--- trunk/blender/intern/audaspace/jack/AUD_JackDevice.h	2011-12-12 21:01:39 UTC (rev 42587)
+++ trunk/blender/intern/audaspace/jack/AUD_JackDevice.h	2011-12-12 22:17:02 UTC (rev 42588)
@@ -36,6 +36,10 @@
 
 #include <string>
 
+#if defined(__APPLE__) // always first include for jack weaklinking !
+#include <weakjack.h>
+#endif
+
 #include <jack.h>
 #include <ringbuffer.h>
 




More information about the Bf-blender-cvs mailing list