X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=test%2Fwscript;h=173b5e825e832b06d5e2da89db19871256384acb;hb=0c55c9b8c4f3ef2ddeefd4c0e630e63c3e0e11c1;hp=407765afff3eab742ee7fe27dbdb19fa627286ba;hpb=206786f0dbf5a75d172f04c6fe434b326a8f974e;p=libdcp.git diff --git a/test/wscript b/test/wscript index 407765af..173b5e82 100644 --- a/test/wscript +++ b/test/wscript @@ -1,3 +1,36 @@ +# +# Copyright (C) 2012-2021 Carl Hetherington +# +# This file is part of libdcp. +# +# libdcp 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. +# +# libdcp 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 libdcp. If not, see . +# +# 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. +# + def configure(conf): if conf.options.target_windows: boost_lib_suffix = '-mt' @@ -6,54 +39,103 @@ def configure(conf): conf.check_cxx(fragment=""" #define BOOST_TEST_MODULE Config test\n - #include \n + #include \n int main() {} """, - msg='Checking for boost unit testing library', - lib='boost_unit_test_framework%s' % boost_lib_suffix, - uselib_store='BOOST_TEST') + msg='Checking for boost unit testing library', + lib='boost_unit_test_framework%s' % boost_lib_suffix, + uselib_store='BOOST_TEST') conf.env.prepend_value('LINKFLAGS', '-Lsrc') def build(bld): obj = bld(features='cxx cxxprogram') obj.name = 'tests' - obj.uselib = 'BOOST_TEST OPENJPEG CXML XMLSEC1 SNDFILE' - obj.use = 'libdcp%s' % bld.env.API_VERSION + obj.uselib = 'BOOST_TEST BOOST_FILESYSTEM BOOST_DATETIME OPENJPEG CXML XMLSEC1 SNDFILE OPENMP ASDCPLIB_CTH LIBXML++ OPENSSL XERCES DL' + obj.cppflags = ['-fno-inline', '-fno-default-inline', '-fno-elide-constructors', '-g', '-O0'] + if bld.is_defined('HAVE_GCOV'): + obj.use = 'libdcp%s_gcov' % bld.env.API_VERSION + obj.lib = ['gcov'] + obj.cppflags.append('-ftest-coverage') + obj.cppflags.append('-fprofile-arcs') + else: + obj.use = 'libdcp%s' % bld.env.API_VERSION obj.source = """ + asset_test.cc + atmos_test.cc certificates_test.cc - color_test.cc + colour_test.cc + colour_conversion_test.cc + combine_test.cc + cpl_metadata_test.cc cpl_sar_test.cc + cpl_ratings_test.cc + dcp_font_test.cc dcp_test.cc dcp_time_test.cc decryption_test.cc + effect_test.cc encryption_test.cc - frame_info_test.cc - kdm_key_test.cc + exception_test.cc + fraction_test.cc + frame_info_hash_test.cc + gamma_transfer_function_test.cc + interop_load_font_test.cc + local_time_test.cc + make_digest_test.cc + markers_test.cc + mca_test.cc kdm_test.cc + key_test.cc + language_tag_test.cc + raw_convert_test.cc read_dcp_test.cc + read_interop_subtitle_test.cc + read_smpte_subtitle_test.cc + reel_asset_test.cc recovery_test.cc + rgb_xyz_test.cc round_trip_test.cc - subtitle_tests.cc - test.cc - utc_offset_to_string_test.cc + smpte_load_font_test.cc + smpte_subtitle_test.cc + sound_frame_test.cc + stream_operators.cc + sync_test.cc + test.cc util_test.cc + utf8_test.cc + write_subtitle_test.cc + verify_test.cc """ obj.target = 'tests' obj.install_path = '' obj = bld(features='cxx cxxprogram') obj.name = 'subs_in_out' - obj.uselib = 'BOOST_TEST OPENJPEG CXML' - obj.use = 'libdcp%s' % bld.env.API_VERSION + obj.uselib = 'BOOST_TEST BOOST_FILESYSTEM OPENJPEG CXML OPENMP ASDCPLIB_CTH XMLSEC1 OPENSSL' + obj.cppflags = ['-fno-inline', '-fno-default-inline', '-fno-elide-constructors', '-g', '-O0'] + if bld.is_defined('HAVE_GCOV'): + obj.use = 'libdcp%s_gcov' % bld.env.API_VERSION + obj.lib = ['gcov'] + obj.cppflags.append('-ftest-coverage') + obj.cppflags.append('-fprofile-arcs') + else: + obj.use = 'libdcp%s' % bld.env.API_VERSION obj.source = 'subs_in_out.cc' obj.target = 'subs_in_out' obj.install_path = '' obj = bld(features='cxx cxxprogram') obj.name = 'rewrite_subs' - obj.uselib = 'BOOST_TEST OPENJPEG CXML' - obj.use = 'libdcp%s' % bld.env.API_VERSION + obj.uselib = 'BOOST_TEST BOOST_FILESYSTEM OPENJPEG CXML OPENMP ASDCPLIB_CTH XMLSEC1 OPENSSL' + obj.cppflags = ['-fno-inline', '-fno-default-inline', '-fno-elide-constructors', '-g', '-O0'] + if bld.is_defined('HAVE_GCOV'): + obj.use = 'libdcp%s_gcov' % bld.env.API_VERSION + obj.lib = ['gcov'] + obj.cppflags.append('-ftest-coverage') + obj.cppflags.append('-fprofile-arcs') + else: + obj.use = 'libdcp%s' % bld.env.API_VERSION obj.source = 'rewrite_subs.cc' obj.target = 'rewrite_subs' obj.install_path = ''