X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Fwscript;h=f6e0d15b00269bb1790ae559d682f9f3690e26dc;hb=2fa5b7bfeb3826c20f2fe80f272b556d61935063;hp=15d1b7811831e4f2a859f52a1508cdcb04f905a9;hpb=0f09e4f7335fb125273aa3d1dc397797a2eba1dd;p=libdcp.git diff --git a/src/wscript b/src/wscript index 15d1b781..f6e0d15b 100644 --- a/src/wscript +++ b/src/wscript @@ -1,12 +1,51 @@ +# +# Copyright (C) 2012-2020 Carl Hetherington +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +# +# In addition, as a special exception, the copyright holders give +# permission to link the code of portions of this program with the +# OpenSSL library under certain conditions as described in each +# individual source file, and distribute linked combinations +# including the two. +# +# You must obey the GNU General Public License in all respects +# for all of the code used other than OpenSSL. If you modify +# file(s) with this exception, you may extend this exception to your +# version of the file(s), but you are not obligated to do so. If you +# do not wish to do so, delete this exception statement from your +# version. If you delete this exception statement from all source +# files in the program, then also delete it here. +# + from waflib import TaskGen def build(bld): source = """ + array_data.cc asset.cc + asset_factory.cc + asset_writer.cc + atmos_asset.cc + atmos_asset_writer.cc + bitstream.cc certificate_chain.cc certificate.cc + chromaticity.cc colour_conversion.cc - colour_matrix.cc + combine.cc cpl.cc data.cc dcp.cc @@ -15,35 +54,49 @@ def build(bld): decrypted_kdm_key.cc encrypted_kdm.cc exceptions.cc - file.cc font_asset.cc - font_node.cc + fsk.cc gamma_transfer_function.cc + identity_transfer_function.cc interop_load_font_node.cc interop_subtitle_asset.cc + j2k_transcode.cc key.cc + language_tag.cc local_time.cc + locale_convert.cc metadata.cc modified_gamma_transfer_function.cc mono_picture_asset.cc mono_picture_asset_writer.cc mono_picture_frame.cc mxf.cc - asset_writer.cc + name_format.cc object.cc openjpeg_image.cc picture_asset.cc picture_asset_writer.cc + pkl.cc + raw_convert.cc reel.cc reel_asset.cc + reel_atmos_asset.cc + reel_closed_caption_asset.cc + reel_encryptable_asset.cc + reel_file_asset.cc + reel_interop_closed_caption_asset.cc + reel_interop_subtitle_asset.cc reel_mono_picture_asset.cc - reel_mxf.cc reel_picture_asset.cc + reel_markers_asset.cc + reel_smpte_closed_caption_asset.cc + reel_smpte_subtitle_asset.cc reel_sound_asset.cc reel_stereo_picture_asset.cc reel_subtitle_asset.cc + ref.cc rgb_xyz.cc - signer.cc + s_gamut3_transfer_function.cc smpte_load_font_node.cc smpte_subtitle_asset.cc sound_asset.cc @@ -52,73 +105,107 @@ def build(bld): stereo_picture_asset.cc stereo_picture_asset_writer.cc stereo_picture_frame.cc - subtitle_node.cc + subtitle.cc subtitle_asset.cc + subtitle_asset_internal.cc + subtitle_image.cc subtitle_string.cc - text_node.cc transfer_function.cc types.cc util.cc + verify.cc + verify_j2k.cc version.cc """ headers = """ + array_data.h asset.h + asset_reader.h + asset_writer.h + atmos_asset.h + atmos_asset_reader.h + atmos_asset_writer.h + atmos_frame.h certificate_chain.h certificate.h chromaticity.h colour_conversion.h - colour_matrix.h + combine.h + compose.hpp cpl.h + crypto_context.h + data.h dcp.h + dcp_assert.h dcp_time.h - data.h decrypted_kdm.h decrypted_kdm_key.h encrypted_kdm.h exceptions.h font_asset.h + frame.h + fsk.h gamma_transfer_function.h + identity_transfer_function.h interop_load_font_node.h interop_subtitle_asset.h + j2k_transcode.h key.h + language_tag.h load_font_node.h local_time.h + locale_convert.h metadata.h mono_picture_asset.h + mono_picture_asset_reader.h mono_picture_frame.h modified_gamma_transfer_function.h mxf.h - asset_writer.h + name_format.h object.h openjpeg_image.h picture_asset.h picture_asset_writer.h + pkl.h raw_convert.h rgb_xyz.h reel.h reel_asset.h + reel_atmos_asset.h + reel_encryptable_asset.h + reel_file_asset.h + reel_interop_closed_caption_asset.h + reel_interop_subtitle_asset.h + reel_markers_asset.h reel_mono_picture_asset.h - reel_mxf.h reel_picture_asset.h reel_sound_asset.h + reel_smpte_closed_caption_asset.h + reel_smpte_subtitle_asset.h reel_stereo_picture_asset.h reel_subtitle_asset.h ref.h - signer.h + s_gamut3_transfer_function.h smpte_load_font_node.h smpte_subtitle_asset.h sound_frame.h sound_asset.h + sound_asset_reader.h sound_asset_writer.h stereo_picture_asset.h + stereo_picture_asset_reader.h + stereo_picture_asset_writer.h stereo_picture_frame.h - subtitle_node.h + subtitle.h subtitle_asset.h + subtitle_image.h subtitle_string.h transfer_function.h types.h util.h + verify.h + verify_j2k.h version.h """ @@ -130,17 +217,19 @@ def build(bld): obj.name = 'libdcp%s' % bld.env.API_VERSION obj.target = 'dcp%s' % bld.env.API_VERSION obj.export_includes = ['.'] - obj.uselib = 'BOOST_FILESYSTEM BOOST_SIGNALS2 BOOST_DATETIME OPENSSL SIGC++ LIBXML++ OPENJPEG CXML XMLSEC1' - obj.use = 'libkumu-libdcp%s libasdcp-libdcp%s' % (bld.env.API_VERSION, bld.env.API_VERSION) + obj.uselib = 'BOOST_FILESYSTEM BOOST_SIGNALS2 BOOST_DATETIME OPENSSL SIGC++ LIBXML++ OPENJPEG CXML XMLSEC1 ASDCPLIB_CTH XERCES' obj.source = source # Library for gcov if bld.is_defined('HAVE_GCOV'): - obj = bld(features='cxx cxxstlib') + if bld.env.STATIC: + obj = bld(features='cxx cxxstlib') + else: + obj = bld(features='cxx cxxshlib') obj.name = 'libdcp%s_gcov' % bld.env.API_VERSION obj.target = 'dcp%s_gcov' % bld.env.API_VERSION obj.export_includes = ['.'] - obj.uselib = 'BOOST_FILESYSTEM BOOST_SIGNALS2 BOOST_DATETIME OPENSSL SIGC++ LIBXML++ OPENJPEG CXML XMLSEC1' + obj.uselib = 'BOOST_FILESYSTEM BOOST_SIGNALS2 BOOST_DATETIME OPENSSL SIGC++ LIBXML++ OPENJPEG CXML XMLSEC1 ASDCPLIB_CTH XERCES' obj.use = 'libkumu-libdcp%s libasdcp-libdcp%s' % (bld.env.API_VERSION, bld.env.API_VERSION) obj.source = source obj.cppflags = ['-fprofile-arcs', '-ftest-coverage', '-fno-inline', '-fno-default-inline', '-fno-elide-constructors', '-g', '-O0']