print('%posttrans', file=f)
print('/usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :', file=f)
+
+def build_with_cpp17(target):
+ return target.platform.startswith('osx') or (target.platform == 'linux' and target.distro == 'debian' and target.version == 'unstable')
+
+
def dependencies(target, options):
- deps = [('libdcp', 'v1.10.14', {'c++17': target.platform.startswith('osx')})]
+ deps = [('libdcp', 'v1.10.15', {'c++17': build_with_cpp17(target)})]
deps.append(('libsub', 'v1.6.53'))
deps.append(('leqm-nrt', '30dcaea1373ac62fba050e02ce5b0c1085797a23'))
deps.append(('rtaudio', 'f619b76'))
if can_build_disk(target):
opt += ' --enable-disk'
- if target.platform == 'osx':
- opt += ' --c++17'
- if target.arch == 'arm64':
- opt += ' --wx-config=%s/wx-config' % target.bin
+ if target.platform == 'osx' and target.arch == 'arm64':
+ opt += ' --wx-config=%s/wx-config' % target.bin
if target.platform == 'linux' and target.distro == 'ubuntu' and target.version == '24.04':
opt += ' --enable-grok'
+ if build_with_cpp17(target):
+ opt += ' --c++17'
+
return opt
def build(target, options, for_package):
conf.env.XMLPP_API = '4.0'
conf.env.PANGOMM_API = '2.48'
conf.env.CAIROMM_API = '1.16'
+ conf.env.GLIBMM_API = '2.68'
else:
cpp_std = '11'
conf.env.XMLPP_API = '2.6'
conf.env.PANGOMM_API = '1.4'
conf.env.CAIROMM_API = '1.0'
+ conf.env.GLIBMM_API = '2.4'
# Save conf.options that we need elsewhere in conf.env
conf.env.DISABLE_GUI = conf.options.disable_gui
check_via_pkg_config(conf, 'libdcp-1.0', 'DCP', mandatory=True, static=True, minimum_version=libdcp_version)
conf.env.DEFINES_DCP = [f.replace('\\', '') for f in conf.env.DEFINES_DCP]
conf.env.STLIB_DCP = ['dcp-1.0', 'asdcp-dcpomatic', 'kumu-dcpomatic', 'openjp2']
- conf.env.LIB_DCP = ['glibmm-2.4', 'ssl', 'crypto', 'bz2', 'xslt', 'xerces-c', 'fmt']
+ conf.env.LIB_DCP = ['glibmm-' + conf.env.GLIBMM_API, 'ssl', 'crypto', 'bz2', 'xslt', 'xerces-c', 'fmt']
else:
check_via_pkg_config(conf, 'libdcp-1.0', 'DCP', mandatory=True, static=False, minimum_version=libdcp_version)
conf.env.DEFINES_DCP = [f.replace('\\', '') for f in conf.env.DEFINES_DCP]