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 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 safe_stringstream.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.BUILD_STATIC: obj = bld(features = 'cxx cxxstlib') else: obj = bld(features = 'cxx cxxshlib') obj.name = 'libdcpomatic2' 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 BFD DBGHELP IBERTY SHLWAPI MSWSOCK BOOST_LOCALE' obj.source += ' stack.cpp' if bld.env.BUILD_STATIC: obj.uselib += ' XMLPP' obj.target = 'dcpomatic2' i18n.po_to_mo(os.path.join('src', 'lib'), 'libdcpomatic2', bld) def pot(bld): i18n.pot(os.path.join('src', 'lib'), sources, 'libdcpomatic') def pot_merge(bld): i18n.pot_merge(os.path.join('src', 'lib'), 'libdcpomatic')