X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=wscript;h=a3f972a8f389cfe6b6ae0b981914510c5ab2d62b;hb=0242efb9802d7bcbde0701a7267972d4dbe5abb8;hp=6c48f1cfd7b55149973f1b7bd1e4b1143403462a;hpb=c572ac30810c027e8e0ac59678cb4cbbab2407e5;p=dcpomatic.git diff --git a/wscript b/wscript index 6c48f1cfd..a3f972a8f 100644 --- a/wscript +++ b/wscript @@ -20,12 +20,13 @@ import subprocess import os import shlex import sys +import glob import distutils import distutils.spawn from waflib import Logs APPNAME = 'dcpomatic' -VERSION = '2.0.44devel' +VERSION = '2.1.31devel' def options(opt): opt.load('compiler_cxx') @@ -135,9 +136,8 @@ def configure(conf): conf.env.append_value('CXXFLAGS', '-DLINUX_LOCALE_PREFIX="%s/share/locale"' % conf.env['INSTALL_PREFIX']) conf.env.append_value('CXXFLAGS', '-DLINUX_SHARE_PREFIX="%s/share/dcpomatic2"' % conf.env['INSTALL_PREFIX']) conf.env.append_value('CXXFLAGS', '-DDCPOMATIC_LINUX') - - if not conf.env.DISABLE_GUI: - conf.check_cfg(package='gtk+-2.0', args='--cflags --libs', uselib_store='GTK', mandatory=True) + if not conf.env.DISABLE_GUI: + conf.check_cfg(package='gtk+-2.0', args='--cflags --libs', uselib_store='GTK', mandatory=True) # OSX if conf.env.TARGET_OSX: @@ -180,7 +180,7 @@ def configure(conf): conf.env.append_value('CXXFLAGS', '-DDCPOMATIC_IMAGE_MAGICK') if graphics is not None: conf.env.append_value('CXXFLAGS', '-DDCPOMATIC_GRAPHICS_MAGICK') - + # libzip conf.check_cfg(package='libzip', args='--cflags --libs', uselib_store='ZIP', mandatory=True) @@ -217,21 +217,21 @@ def configure(conf): # libdcp if conf.options.static_dcp: - conf.check_cfg(package='libdcp-1.0', atleast_version='1.00.0', args='--cflags', uselib_store='DCP', mandatory=True) + conf.check_cfg(package='libdcp-1.0', atleast_version='1.2.0', args='--cflags', uselib_store='DCP', mandatory=True) conf.env.DEFINES_DCP = [f.replace('\\', '') for f in conf.env.DEFINES_DCP] conf.env.STLIB_DCP = ['dcp-1.0', 'asdcp-libdcp-1.0', 'kumu-libdcp-1.0'] conf.env.LIB_DCP = ['glibmm-2.4', 'ssl', 'crypto', 'bz2', 'xslt'] else: - conf.check_cfg(package='libdcp-1.0', atleast_version='1.00.0', args='--cflags --libs', uselib_store='DCP', mandatory=True) + conf.check_cfg(package='libdcp-1.0', atleast_version='1.2.0', args='--cflags --libs', uselib_store='DCP', mandatory=True) conf.env.DEFINES_DCP = [f.replace('\\', '') for f in conf.env.DEFINES_DCP] # libsub if conf.options.static_sub: - conf.check_cfg(package='libsub-1.0', atleast_version='1.00.0', args='--cflags', uselib_store='DCP', mandatory=True) + conf.check_cfg(package='libsub-1.0', atleast_version='1.1.0', args='--cflags', uselib_store='SUB', mandatory=True) conf.env.DEFINES_SUB = [f.replace('\\', '') for f in conf.env.DEFINES_SUB] - conf.env.STLIB_SUB = ['sub'] + conf.env.STLIB_SUB = ['sub-1.0'] else: - conf.check_cfg(package='libsub-1.0', atleast_version='1.00.0', args='--cflags --libs', uselib_store='DCP', mandatory=True) + conf.check_cfg(package='libsub-1.0', atleast_version='1.1.0', args='--cflags --libs', uselib_store='SUB', mandatory=True) conf.env.DEFINES_SUB = [f.replace('\\', '') for f in conf.env.DEFINES_SUB] # libxml++ @@ -295,6 +295,7 @@ def configure(conf): conf.env.STLIB_BOOST_DATETIME = ['boost_date_time%s' % boost_lib_suffix, 'boost_system%s' % boost_lib_suffix] conf.env.STLIB_BOOST_SIGNALS2 = ['boost_signals2'] conf.env.STLIB_BOOST_SYSTEM = ['boost_system'] + conf.env.STLIB_BOOST_REGEX = ['boost_regex'] else: conf.check_cxx(fragment=""" #include \n @@ -342,14 +343,22 @@ def configure(conf): msg='Checking for boost signals2 library', uselib_store='BOOST_SIGNALS2') + conf.check_cxx(fragment=""" + #include \n + int main() { boost::regex re ("foo"); }\n + """, + msg='Checking for boost regex library', + lib=['boost_regex%s' % boost_lib_suffix], + uselib_store='BOOST_REGEX') + # Other stuff conf.find_program('msgfmt', var='MSGFMT') - + datadir = conf.env.DATADIR if not datadir: datadir = os.path.join(conf.env.PREFIX, 'share') - + conf.define('LOCALEDIR', os.path.join(datadir, 'locale')) conf.define('DATADIR', datadir) @@ -401,10 +410,11 @@ def build(bld): bld.recurse('platform/osx') for r in ['22x22', '32x32', '48x48', '64x64', '128x128']: - bld.install_files('${PREFIX}/share/icons/hicolor/%s/apps' % r, 'icons/%s/dcpomatic.png' % r) + bld.install_files('${PREFIX}/share/icons/hicolor/%s/apps' % r, 'icons/%s/dcpomatic2.png' % r) if not bld.env.TARGET_WINDOWS: - bld.install_files('${PREFIX}/share/dcpomatic', 'icons/taskbar_icon.png') + bld.install_files('${PREFIX}/share/dcpomatic2', 'icons/taskbar_icon.png') + bld.install_files('${PREFIX}/share/dcpomatic2', 'LiberationSans-Regular.ttf') bld.add_post_fun(post) @@ -435,7 +445,7 @@ def create_version_cc(version, cxx_flags): if commit is None and os.path.exists('.git_revision'): f = open('.git_revision', 'r') commit = f.readline().strip() - + if commit is None: commit = 'release' @@ -457,7 +467,7 @@ def create_version_cc(version, cxx_flags): except IOError: print('Could not open src/lib/version.cc for writing\n') sys.exit(-1) - + def post(ctx): if ctx.cmd == 'install': ctx.exec_command('/sbin/ldconfig') @@ -470,3 +480,14 @@ def pot_merge(bld): def tags(bld): os.system('etags src/lib/*.cc src/lib/*.h src/wx/*.cc src/wx/*.h src/tools/*.cc src/tools/*.h') + +def zanata_pull(bld): + os.system('zanata-cli -B -q pull -t .') + for f in glob.glob('src/lib/po/*.po'): + l = os.path.basename(f) + os.rename('dcpomatic_%s' % l, 'src/tools/po/%s' % l) + os.rename('libdcpomatic_%s' % l, 'src/lib/po/%s' % l) + os.rename('libdcpomatic-wx_%s' % l, 'src/wx/po/%s' % l) + +def cppcheck(bld): + os.system('cppcheck --enable=all --quiet .')