+ try:
+ conf.check_cfg(msg='Checking for RtAudio using pkg-config',
+ package='rtaudio',
+ args='--cflags --libs',
+ uselib_store='RTAUDIO',
+ mandatory=True)
+ except:
+ conf.check_cfg(msg='Checking for RtAudio headers using rtaudio-config',
+ package='',
+ path='rtaudio-config',
+ args='--cppflags',
+ uselib_store='RTAUDIO',
+ mandatory=True)
+
+ conf.check_cfg(msg='Checking for RtAudio libraries using rtaudio-config',
+ package='',
+ path='rtaudio-config',
+ args='--libs',
+ uselib_store='RTAUDIO',
+ mandatory=True)
+
+ # Some rtaudio-configs don't include rtaudio as a link library. Go figure.
+ conf.env.LIB_RTAUDIO.append('rtaudio')
+ if conf.env.TARGET_WINDOWS:
+ # Don't explicitly link with pthread on Windows
+ conf.env.CFLAGS_RTAUDIO.remove('-pthread')
+ conf.env.LINKFLAGS_RTAUDIO.remove('-pthread')
+ # We need some libraries for WASAPI
+ conf.env.LIB_RTAUDIO.append('mfplat')
+ conf.env.LIB_RTAUDIO.append('mfuuid')
+ conf.env.LIB_RTAUDIO.append('wmcodecdspuuid')
+
+ conf.check_cxx(fragment="""
+ #include <RtAudio.h>\n
+ int main() { throw RtError("Hello"); }
+ """,
+ msg='Checking for RtError class',
+ use='RTAUDIO',
+ uselib_store='',
+ define_name='DCPOMATIC_USE_RTERROR',
+ mandatory=False)
+
+ if conf.env.TARGET_WINDOWS or conf.env.TARGET_LINUX:
+ conf.check_cfg(package='gl', args='--cflags --libs', uselib_store='GL', mandatory=True)
+ conf.check_cfg(package='glu', args='--cflags --libs', uselib_store='GLU', mandatory=True)
+ else:
+ conf.env.STLIB_GL = 'gl'
+ conf.env.STLIB_GLU = 'glu'
+
+ if conf.env.TARGET_LINUX:
+ conf.check_cxx(fragment="""
+ #include <wx/glcanvas.h>
+ #include <GL/glu.h>
+ #include <GL/glext.h>
+ #include <GL/glxext.h>
+ int main() {
+ glXSwapIntervalEXT (0, 0, 1);
+ return 0;
+ }
+ """,
+ msg='Checking for glXSwapIntervalEXT',
+ okmsg='yes',
+ uselib='GL WXWIDGETS',
+ define_name='DCPOMATIC_HAVE_GLX_SWAP_INTERVAL_EXT',
+ mandatory=False)
+
+