Merge master.
[dcpomatic.git] / src / lib / wscript
index 5d3fbb906f4c39b22a97ebddc9fbabb8297ce5fb..7d74d462ce90719b7c839525aeed9c19c1c88208 100644 (file)
+import os
+import i18n
+
+sources = """
+          analyse_audio_job.cc
+          audio_analysis.cc
+          audio_buffers.cc
+          audio_content.cc
+          audio_decoder.cc
+          audio_filter.cc
+          audio_mapping.cc
+          audio_processor.cc
+          cinema.cc
+          cinema_sound_processor.cc
+          colour_conversion.cc
+          config.cc
+          content.cc
+          content_factory.cc
+          content_subtitle.cc
+          cross.cc
+          dcp_content.cc
+          dcp_content_type.cc
+          dcp_decoder.cc
+          dcp_examiner.cc
+          dcp_subtitle_content.cc
+          dcp_subtitle_decoder.cc
+          dcp_video.cc
+          dcpomatic_time.cc
+          dolby_cp750.cc
+          encoder.cc
+          encoded_data.cc
+          examine_content_job.cc
+          exceptions.cc
+          file_group.cc
+          filter_graph.cc
+          ffmpeg.cc
+          ffmpeg_audio_stream.cc
+          ffmpeg_content.cc
+          ffmpeg_decoder.cc
+          ffmpeg_examiner.cc
+          ffmpeg_stream.cc
+          ffmpeg_subtitle_stream.cc
+          film.cc
+          filter.cc
+          frame_rate_change.cc
+          internet.cc
+          image.cc
+          image_content.cc
+          image_decoder.cc
+          image_examiner.cc
+          image_proxy.cc
+          isdcf_metadata.cc
+          j2k_image_proxy.cc
+          job.cc
+          job_manager.cc
+          kdm.cc
+          json_server.cc
+          log.cc
+          magick_image_proxy.cc
+          md5_digester.cc
+          mid_side_decoder.cc
+          player.cc
+          player_video.cc
+          playlist.cc
+          ratio.cc
+          raw_image_proxy.cc
+          render_subtitles.cc
+          resampler.cc
+          scp_dcp_job.cc
+          scaler.cc
+          send_kdm_email_job.cc
+          server.cc
+          server_finder.cc
+          single_stream_audio_content.cc
+          sndfile_content.cc
+          sndfile_decoder.cc
+          subrip.cc
+          subrip_content.cc
+          subrip_decoder.cc
+          subtitle_content.cc
+          subtitle_decoder.cc
+          timer.cc
+          transcode_job.cc
+          transcoder.cc
+          types.cc
+          ui_signaller.cc
+          update.cc
+          upmixer_a.cc
+          util.cc
+          video_content.cc
+          video_decoder.cc
+          writer.cc
+          """
+
 def build(bld):
-    if bld.env.STATIC:
+    if bld.env.BUILD_STATIC:
         obj = bld(features = 'cxx cxxstlib')
     else:
         obj = bld(features = 'cxx cxxshlib')
 
-    obj.name = 'libdvdomatic'
-    obj.export_includes = ['.']
-    obj.uselib = 'AVCODEC AVUTIL AVFORMAT AVFILTER SWSCALE SWRESAMPLE SNDFILE BOOST_FILESYSTEM BOOST_THREAD BOOST_DATETIME BOOST_SIGNALS2 OPENJPEG POSTPROC TIFF MAGICK SSH DCP GLIB'
+    obj.name = 'libdcpomatic'
+    obj.export_includes = ['..']
+    obj.uselib = """
+                 AVCODEC AVUTIL AVFORMAT AVFILTER SWSCALE SWRESAMPLE 
+                 BOOST_FILESYSTEM BOOST_THREAD BOOST_DATETIME BOOST_SIGNALS2
+                 SNDFILE OPENJPEG POSTPROC TIFF MAGICK SSH DCP CXML GLIB LZMA XML++
+                 CURL ZIP QUICKMAIL PANGOMM CAIROMM XMLSEC
+                 """
+
+    if bld.env.TARGET_OSX:
+        obj.framework = ['IOKit', 'Foundation']
+
+    obj.source = sources + ' version.cc'
+
     if bld.env.TARGET_WINDOWS:
-        obj.uselib += ' WINSOCK2'
-    obj.source = """
-                ab_transcode_job.cc
-                ab_transcoder.cc
-                 audio_decoder.cc
-                 audio_source.cc
-                 check_hashes_job.cc
-                config.cc
-                 combiner.cc
-                 cross.cc
-                dcp_content_type.cc
-                dcp_video_frame.cc
-                 decoder.cc
-                 decoder_factory.cc
-                 delay_line.cc
-                 dolby_cp750.cc
-                encoder.cc
-                 encoder_factory.cc
-                examine_content_job.cc
-                external_audio_decoder.cc
-                 filter_graph.cc
-                 ffmpeg_compatibility.cc
-                 ffmpeg_decoder.cc
-                film.cc
-                filter.cc
-                format.cc
-                 gain.cc
-                 image.cc
-                 imagemagick_decoder.cc
-                j2k_still_encoder.cc
-                j2k_wav_encoder.cc
-                job.cc
-                job_manager.cc
-                log.cc
-                lut.cc
-                make_dcp_job.cc
-                 matcher.cc
-                 scp_dcp_job.cc
-                scaler.cc
-                server.cc
-                 sound_processor.cc
-                 stream.cc
-                 subtitle.cc
-                 timer.cc
-                transcode_job.cc
-                transcoder.cc
-                 ui_signaller.cc
-                util.cc
-                version.cc
-                 video_decoder.cc
-                 video_source.cc
-                """
+        obj.uselib += ' WINSOCK2 BFD DBGHELP IBERTY SHLWAPI MSWSOCK BOOST_LOCALE'
+        obj.source += ' stack.cpp'
+    if bld.env.BUILD_STATIC:
+        obj.uselib += ' XMLPP'
+
+    obj.target = 'dcpomatic'
+
+    i18n.po_to_mo(os.path.join('src', 'lib'), 'libdcpomatic', bld)
+
+def pot(bld):
+    i18n.pot(os.path.join('src', 'lib'), sources, 'libdcpomatic')
 
-    obj.target = 'dvdomatic'
+def pot_merge(bld):
+    i18n.pot_merge(os.path.join('src', 'lib'), 'libdcpomatic')