Move KDM CLI tool into lib/
[dcpomatic.git] / src / lib / wscript
index 7fa32c7e7d7d9ebbac0788ba29edd30030168ac8..59920d6ca9060e482ce02e0612281a6d06ddabc5 100644 (file)
@@ -1,5 +1,5 @@
 #
-#    Copyright (C) 2012-2015 Carl Hetherington <cth@carlh.net>
+#    Copyright (C) 2012-2020 Carl Hetherington <cth@carlh.net>
 #
 #    This file is part of DCP-o-matic.
 #
@@ -21,9 +21,16 @@ import os
 import i18n
 
 sources = """
-          active_subtitles.cc
+          active_text.cc
           analyse_audio_job.cc
+          analyse_subtitles_job.cc
+          analytics.cc
+          atmos_content.cc
           atmos_mxf_content.cc
+          atmos_decoder.cc
+          atmos_metadata.cc
+          atmos_mxf_decoder.cc
+          audio_analyser.cc
           audio_analysis.cc
           audio_buffers.cc
           audio_content.cc
@@ -38,16 +45,23 @@ sources = """
           audio_ring_buffers.cc
           audio_stream.cc
           butler.cc
+          text_content.cc
+          text_decoder.cc
           case_insensitive_sorter.cc
+          check_content_change_job.cc
           cinema.cc
-          cinema_kdms.cc
           cinema_sound_processor.cc
           colour_conversion.cc
           config.cc
           content.cc
           content_factory.cc
-          cross.cc
+          combine_dcp_job.cc
+          copy_dcp_details_to_film.cc
+          create_cli.cc
+          cross_common.cc
+          crypto.cc
           curl_uploader.cc
+          datasat_ap2x.cc
           dcp.cc
           dcp_content.cc
           dcp_content_type.cc
@@ -57,13 +71,16 @@ sources = """
           dcp_subtitle.cc
           dcp_subtitle_content.cc
           dcp_subtitle_decoder.cc
+          dcp_text_track.cc
           dcp_video.cc
+          dcpomatic_log.cc
           dcpomatic_socket.cc
           dcpomatic_time.cc
           decoder.cc
           decoder_factory.cc
           decoder_part.cc
           digester.cc
+          dkdm_recipient.cc
           dkdm_wrapper.cc
           dolby_cp750.cc
           emailer.cc
@@ -75,6 +92,7 @@ sources = """
           environment_info.cc
           event_history.cc
           examine_content_job.cc
+          examine_ffmpeg_subtitles_job.cc
           exceptions.cc
           file_group.cc
           file_log.cc
@@ -85,12 +103,16 @@ sources = """
           ffmpeg_decoder.cc
           ffmpeg_encoder.cc
           ffmpeg_examiner.cc
+          ffmpeg_file_encoder.cc
+          ffmpeg_image_proxy.cc
           ffmpeg_stream.cc
           ffmpeg_subtitle_stream.cc
+          ffmpeg_wrapper.cc
           film.cc
           filter.cc
           font.cc
-          font_files.cc
+          font_data.cc
+          frame_interval_checker.cc
           frame_rate_change.cc
           hints.cc
           internet.cc
@@ -100,53 +122,64 @@ sources = """
           image_examiner.cc
           image_filename_sorter.cc
           image_proxy.cc
-          isdcf_metadata.cc
           j2k_image_proxy.cc
           job.cc
           job_manager.cc
           j2k_encoder.cc
           json_server.cc
+          kdm_cli.cc
+          kdm_recipient.cc
+          kdm_with_metadata.cc
           log.cc
           log_entry.cc
-          magick_image_proxy.cc
           mid_side_decoder.cc
           overlaps.cc
+          pixel_quanta.cc
           player.cc
-          player_subtitles.cc
+          player_text.cc
           player_video.cc
           playlist.cc
           position_image.cc
           ratio.cc
           raw_image_proxy.cc
           reel_writer.cc
-          render_subtitles.cc
+          render_text.cc
           resampler.cc
           rgba.cc
+          rng.cc
           scoped_temporary.cc
           scp_uploader.cc
           screen.cc
-          screen_kdm.cc
           send_kdm_email_job.cc
+          send_notification_email_job.cc
           send_problem_report_job.cc
           server.cc
+          shuffler.cc
+          state.cc
+          spl.cc
+          spl_entry.cc
           string_log_entry.cc
-          subtitle_content.cc
-          subtitle_decoder.cc
-          text_subtitle.cc
-          text_subtitle_content.cc
-          text_subtitle_decoder.cc
+          string_text_file.cc
+          string_text_file_content.cc
+          string_text_file_decoder.cc
+          subtitle_analysis.cc
+          subtitle_encoder.cc
+          text_ring_buffers.cc
           timer.cc
           transcode_job.cc
+          trusted_device.cc
           types.cc
           signal_manager.cc
+          stdout_log.cc
           update_checker.cc
           upload_job.cc
           uploader.cc
           upmixer_a.cc
           upmixer_b.cc
+          usl.cc
           util.cc
+          verify_dcp_job.cc
           video_content.cc
-          video_content_scale.cc
           video_decoder.cc
           video_filter_graph.cc
           video_mxf_content.cc
@@ -154,6 +187,7 @@ sources = """
           video_mxf_examiner.cc
           video_ring_buffers.cc
           writer.cc
+          zipper.cc
           """
 
 def build(bld):
@@ -167,17 +201,28 @@ def build(bld):
     obj.uselib = """
                  AVCODEC AVUTIL AVFORMAT AVFILTER SWSCALE
                  BOOST_FILESYSTEM BOOST_THREAD BOOST_DATETIME BOOST_SIGNALS2 BOOST_REGEX
-                 SAMPLERATE POSTPROC TIFF MAGICK SSH DCP CXML GLIB LZMA XML++
-                 CURL ZIP FONTCONFIG PANGOMM CAIROMM XMLSEC SUB ICU NETTLE
+                 SAMPLERATE POSTPROC TIFF SSH DCP CXML GLIB LZMA XML++
+                 CURL ZIP BZ2 FONTCONFIG PANGOMM CAIROMM XMLSEC SUB ICU NETTLE PNG LEQM_NRT
                  """
 
     if bld.env.TARGET_OSX:
-        obj.framework = ['IOKit', 'Foundation']
+        obj.framework = ['IOKit', 'Foundation', 'DiskArbitration', 'ApplicationServices']
 
     obj.source = sources + ' version.cc'
 
+    if bld.env.ENABLE_DISK:
+        obj.source += ' copy_to_drive_job.cc ext.cc nanomsg.cc'
+        obj.uselib += ' LWEXT4 NANOMSG'
+        if bld.env.TARGET_LINUX:
+            obj.uselib += ' POLKIT'
+
     if bld.env.TARGET_WINDOWS:
-        obj.uselib += ' WINSOCK2 DBGHELP SHLWAPI MSWSOCK BOOST_LOCALE'
+        obj.uselib += ' WINSOCK2 DBGHELP SHLWAPI MSWSOCK BOOST_LOCALE SETUPAPI'
+        obj.source += ' cross_windows.cc'
+    if bld.env.TARGET_OSX:
+        obj.source += ' cross_osx.cc'
+    if bld.env.TARGET_LINUX:
+        obj.source += ' cross_linux.cc'
     if bld.env.STATIC_DCPOMATIC:
         obj.uselib += ' XMLPP'
 
@@ -186,7 +231,7 @@ def build(bld):
     i18n.po_to_mo(os.path.join('src', 'lib'), 'libdcpomatic2', bld)
 
 def pot(bld):
-    i18n.pot(os.path.join('src', 'lib'), sources, 'libdcpomatic')
+    i18n.pot(os.path.join('src', 'lib'), sources + " util.h", 'libdcpomatic')
 
 def pot_merge(bld):
     i18n.pot_merge(os.path.join('src', 'lib'), 'libdcpomatic')