X-Git-Url: https://git.carlh.net/gitweb/?p=dcpomatic.git;a=blobdiff_plain;f=cscript;h=591ffd54d764809068cb4f6fd99b519be19befa6;hp=ead995702a18c5a908ceb9672379aac09eabcdbc;hb=HEAD;hpb=72d906fe6e30eff1324288748fc5d1d66b3a3ec1 diff --git a/cscript b/cscript index ead995702..eb2c8e436 100644 --- a/cscript +++ b/cscript @@ -38,6 +38,9 @@ for v in ['22.04']: for v in ['23.04', '23.10']: deb_build_depends[v] = copy.deepcopy(deb_build_depends_base) deb_build_depends[v].extend(['libssh-dev', 'python3.11']) +for v in ['24.04']: + deb_build_depends[v] = copy.deepcopy(deb_build_depends_base) + deb_build_depends[v].extend(['libssh-dev', 'python3.12']) for v in ['9', '10']: deb_build_depends[v] = copy.deepcopy(deb_build_depends_base) deb_build_depends[v].extend(['libssh-gcrypt-dev', 'python']) @@ -185,6 +188,30 @@ deb_depends['23.10'].extend(['libboost-filesystem1.74.0', 'libwxgtk3.2-1', 'libwxgtk-gl3.2-1']) +def debs(boost, icu, x264): + output = copy.deepcopy(deb_depends_base) + output.extend(['libboost-filesystem' + boost, + 'libboost-thread' + boost, + 'libboost-regex' + boost, + 'libboost-date-time' + boost, + 'libcairomm-1.0-1v5', + 'libpangomm-1.4-1v5', + 'libxml++2.6-2v5', + 'libzip4', + 'libicu' + icu, + 'libnettle8', + 'libssh-4', + 'libx264-' + x264, + 'libcurl4', + 'libpulse0', + 'libxerces-c3.2', + 'libnanomsg5', + 'libwxgtk3.2-1', + 'libwxgtk-gl3.2-1']) + return output + +deb_depends['24.04'] = debs(boost='1.83.0', icu='74', x264='164') + deb_depends['9'] = copy.deepcopy(deb_depends_base) deb_depends['9'].extend(['libboost-filesystem1.62.0', 'libboost-thread1.62.0', @@ -430,9 +457,8 @@ def make_spec(filename, version, target, options, requires=None): print('%{_datadir}/dcpomatic2/zoom_black.png', file=f) print('%{_datadir}/dcpomatic2/zoom_all_white.png', file=f) print('%{_datadir}/dcpomatic2/zoom_all_black.png', file=f) - print('%{_datadir}/dcpomatic2/tick.png', file=f) - print('%{_datadir}/dcpomatic2/no_tick.png', file=f) - print('%{_datadir}/dcpomatic2/link.png', file=f) + print('%{_datadir}/dcpomatic2/link_black.png', file=f) + print('%{_datadir}/dcpomatic2/link_white.png', file=f) print('%{_datadir}/dcpomatic2/me.jpg', file=f) print('%{_datadir}/dcpomatic2/add_black.png', file=f) print('%{_datadir}/dcpomatic2/add_white.png', file=f) @@ -509,8 +535,8 @@ def dependencies(target, options): # Use distro-provided FFmpeg on Arch deps = [] - deps.append(('libdcp', 'v1.8.89')) - deps.append(('libsub', 'v1.6.45')) + deps.append(('libdcp', 'v1.8.100')) + deps.append(('libsub', 'v1.6.47')) deps.append(('leqm-nrt', '30dcaea1373ac62fba050e02ce5b0c1085797a23')) deps.append(('rtaudio', 'f619b76')) # We get our OpenSSL libraries from the environment, but we @@ -563,7 +589,7 @@ def configure_options(target, options, for_package=False): opt += ' --enable-disk' if target.platform == 'osx' and target.arch == 'arm64': - opt += ' --target-macos-arm64 --wx-config=%s/wx-config' % target.bin + opt += ' --wx-config=%s/wx-config' % target.bin return opt @@ -730,7 +756,7 @@ def package_debian(target, cpu, version, options): target.set('CDIST_CONFIGURE', '"' + configure_options(target, options, for_package=True) + '"') target.set('CDIST_PACKAGE', f'dcpomatic{suffix}') - target.set('CDIST_WX_VERSION', "3.2" if target.version in ("23.04", "23.10") else "3.1") + target.set('CDIST_WX_VERSION', "3.2" if target.version in ("23.04", "23.10", "24.04") else "3.1") if not target.debug: target.set('CDIST_DEBUG_PACKAGE_FLAG', '--no-ddebs') @@ -762,6 +788,8 @@ def package_rpm(target, cpu, version, options): make_spec('dcpomatic2.spec', version, target, options, requires) cmd = 'rpmbuild --define "_topdir %s" -bb dcpomatic2.spec' % topdir + # On Centos 7 we build and install boost ourselves, so we must look for it in the right place + target.set('LINKFLAGS', '-L/usr/local/lib') target.command(cmd) rpms = [] @@ -794,8 +822,8 @@ def make_appimage(target, nice_name, internal_name, version, extra_binaries=None lib = 'usr/lib/x86_64-linux-gnu' target.command(f'mkdir -p build/{nice_filename}.AppDir/{lib}/gdk-pixbuf-2.0/2.10.0') target.command(f'cp -a /{lib}/gdk-pixbuf-2.0 build/{nice_filename}.AppDir/usr/lib/x86_64-linux-gnu/') - target.command('apt update') - for package in ['libc6', 'libglib2.0-0', 'gnome-settings-daemon-schemas', 'librsvg2-common', 'libgdk-pixbuf2.0-0', 'libpango-1.0-0', 'libpangoft2-1.0-0', 'libpangocairo-1.0-0']: + target.command('sudo apt update') + for package in ['libc6', 'libglib2.0-0', 'gnome-settings-daemon-schemas', 'librsvg2-common', 'libgdk-pixbuf2.0-0', 'libpango-1.0-0', 'libpangoft2-1.0-0', 'libpangocairo-1.0-0', 'libthai0']: target.command(f'apt download {package}') target.command(f'dpkg-deb -x {package}*.deb {appdir}') target.command(f'glib-compile-schemas {appdir}/usr/share/glib-2.0/schemas') @@ -897,7 +925,11 @@ def test(target, options, test): if target.platform == 'windows': cmd = 'run\\tests ' else: - cmd = 'run/tests --check --log_level=test_suite ' + cmd = 'run/tests ' + if target.environment_prefix: + cmd += '-e %s ' % target.environment_prefix + if target.platform != 'windows': + cmd += ' --check --log_level=test_suite ' if target.debug: cmd += '--backtrace ' if test is not None: