Rename Subtitle -> Text
[dcpomatic.git] / src / wx / wscript
index 4543be09f9e318600937673901907bc3913d7d05..d5adafebe44e45f0dff55310ac19d516237913db 100644 (file)
@@ -35,6 +35,7 @@ sources = """
           cinema_dialog.cc
           colour_conversion_editor.cc
           config_dialog.cc
+          config_move_dialog.cc
           confirm_kdm_email_dialog.cc
           content_colour_conversion_dialog.cc
           content_menu.cc
@@ -44,24 +45,28 @@ sources = """
           dcp_panel.cc
           email_dialog.cc
           image_sequence_dialog.cc
-          image_subtitle_colour_dialog.cc
           isdcf_metadata_dialog.cc
           dir_picker_ctrl.cc
           dolby_doremi_certificate_panel.cc
           download_certificate_dialog.cc
           download_certificate_panel.cc
+          export_dialog.cc
           file_picker_ctrl.cc
           film_editor.cc
+          film_name_location_dialog.cc
           film_viewer.cc
           filter_dialog.cc
           filter_editor.cc
+          focus_manager.cc
           fonts_dialog.cc
           font_files_dialog.cc
+          full_config_dialog.cc
           gain_calculator_dialog.cc
           hints_dialog.cc
           job_view.cc
           job_view_dialog.cc
           job_manager_view.cc
+          kdm_advanced_dialog.cc
           kdm_cpl_panel.cc
           kdm_dialog.cc
           kdm_output_panel.cc
@@ -69,11 +74,17 @@ sources = """
           key_dialog.cc
           make_chain_dialog.cc
           move_to_dialog.cc
+          nag_dialog.cc
           name_format_editor.cc
-          new_film_dialog.cc
+          new_dkdm_folder_dialog.cc
           normal_job_view.cc
+          paste_dialog.cc
+          player_config_dialog.cc
+          player_information.cc
           playhead_to_timecode_dialog.cc
           playhead_to_frame_dialog.cc
+          question_dialog.cc
+          recreate_chain_dialog.cc
           repeat_dialog.cc
           report_problem_dialog.cc
           rename_template_dialog.cc
@@ -84,12 +95,12 @@ sources = """
           self_dkdm_dialog.cc
           server_dialog.cc
           servers_list_dialog.cc
+          subtitle_appearance_dialog.cc
           subtitle_panel.cc
           subtitle_view.cc
           system_font_dialog.cc
           table_dialog.cc
           templates_dialog.cc
-          text_subtitle_appearance_dialog.cc
           time_picker.cc
           timecode.cc
           timeline.cc
@@ -98,13 +109,14 @@ sources = """
           timeline_dialog.cc
           timeline_audio_content_view.cc
           timeline_labels_view.cc
-          timeline_subtitle_content_view.cc
+          timeline_text_content_view.cc
           timeline_reels_view.cc
           timeline_time_axis_view.cc
           timeline_video_content_view.cc
           timeline_view.cc
           timing_panel.cc
           update_dialog.cc
+          verify_dcp_dialog.cc
           video_panel.cc
           video_waveform_dialog.cc
           video_waveform_plot.cc
@@ -114,21 +126,30 @@ sources = """
 
 def configure(conf):
     try:
-        wx_config = 'wx-config-3.0-gtk2'
-        conf.check_cfg(msg='Checking for wxWidgets using wx-config-3.0-gtk2',
+        wx_config = '/usr/lib64/wx/config/gtk2-unicode-3.0'
+        conf.check_cfg(msg='Checking for wxWidgets using gtk2-unicode-3.0',
                        package='',
                        path=wx_config,
                        args='--cppflags --cxxflags --libs std,richtext',
                        uselib_store='WXWIDGETS',
                        mandatory=True)
     except:
-        wx_config = 'wx-config'
-        conf.check_cfg(msg='Checking for wxWidgets using wx-config',
-                       package='',
-                       path=wx_config,
-                       args='--cppflags --cxxflags --libs std,richtext',
-                       uselib_store='WXWIDGETS',
-                       mandatory=True)
+        try:
+            wx_config = 'wx-config-3.0-gtk2'
+            conf.check_cfg(msg='Checking for wxWidgets using wx-config-3.0-gtk2',
+                           package='',
+                           path=wx_config,
+                           args='--cppflags --cxxflags --libs std,richtext',
+                           uselib_store='WXWIDGETS',
+                           mandatory=True)
+        except:
+            wx_config = 'wx-config'
+            conf.check_cfg(msg='Checking for wxWidgets using wx-config',
+                           package='',
+                           path=wx_config,
+                           args='--cppflags --cxxflags --libs std,richtext',
+                           uselib_store='WXWIDGETS',
+                           mandatory=True)
 
     if conf.options.static_wxwidgets:
        # wx-config returns its static libraries as full paths, without -l prefixes, which confuses
@@ -155,19 +176,62 @@ def configure(conf):
     if not wx_version.startswith('3.0.'):
         conf.fatal('wxwidgets version 3.0.x is required; %s found' % wx_version)
 
+    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')
+    # Don't explicitly link with pthread on Windows
+    if conf.env.TARGET_WINDOWS:
+        conf.env.CFLAGS_RTAUDIO.remove('-pthread')
+        conf.env.LINKFLAGS_RTAUDIO.remove('-pthread')
+
+    conf.check_cxx(fragment="""
+                            #include <RtAudio.h>\n
+                            int main() { throw RtError("Hello"); }
+                           """,
+                   msg='Checking for RtError class',
+                   libpath='/usr/local/lib',
+                   lib=['rtaudio'],
+                   uselib_store='',
+                   define_name='DCPOMATIC_USE_RTERROR',
+                   mandatory=False)
+
+
+
 def build(bld):
     if bld.env.STATIC_DCPOMATIC:
-        obj = bld(features = 'cxx cxxstlib')
+        obj = bld(features='cxx cxxstlib')
     else:
-        obj = bld(features = 'cxx cxxshlib')
+        obj = bld(features='cxx cxxshlib')
 
     obj.name   = 'libdcpomatic2-wx'
     obj.export_includes = ['..']
-    obj.uselib = 'BOOST_FILESYSTEM BOOST_THREAD BOOST_REGEX WXWIDGETS DCP SUB ZIP '
+    obj.uselib = 'BOOST_FILESYSTEM BOOST_THREAD BOOST_REGEX WXWIDGETS DCP SUB ZIP CXML RTAUDIO '
     if bld.env.TARGET_LINUX:
         obj.uselib += 'GTK '
     if bld.env.TARGET_WINDOWS:
-        obj.uselib += 'WINSOCK2 '
+        obj.uselib += 'WINSOCK2 OLE32 DSOUND WINMM KSUSER '
+    if bld.env.TARGET_OSX:
+        obj.framework = ['CoreAudio']
     obj.use = 'libdcpomatic2'
     obj.source = sources
     obj.target = 'dcpomatic2-wx'