$NetBSD: patch-meson.build,v 1.1 2023/07/01 22:14:59 wiz Exp $ Fix build with exiv2 0.28.0. https://gitlab.gnome.org/GNOME/gexiv2/-/commit/06adc8fb70cb8c77c0cd364195d8251811106ef8 --- meson.build.orig 2023-05-06 08:50:03.000000000 +0000 +++ meson.build @@ -32,6 +32,58 @@ bmff_test = '''#include +#include +int main(void) { + Exiv2::DataBuf buf; + std::cout << buf.c_data() << std::endl; + + return 0; +}''' +private_pdata = cpp.compiles(private_pdata_test, name : 'DataBuf is sealead in exiv2', dependencies : [exiv2]) + +has_any_error_test = '''#include +#include +int main(void) { + Exiv2::AnyError *e; + + return 0; +}''' +has_any_error = cpp.compiles(has_any_error_test, name : 'AnyError exists in exiv2', dependencies : [exiv2]) + +xmpdatum_has_to_long_test = '''#include +#include +int main(void) { + Exiv2::XmpKey k{"Xmp.audio.Compressor"}; + Exiv2::Xmpdatum d{k, nullptr}; + d.toLong(); + + return 0; +}''' +xmpdatum_has_to_long = cpp.compiles(xmpdatum_has_to_long_test, name: 'Xmpdatum has toLong() in exiv2', dependencies : [exiv2]) + +exifdatum_has_to_long_test = '''#include +#include +int main(void) { + Exiv2::ExifKey k{"Exif.Image.OECF"}; + Exiv2::Exifdatum d{k, nullptr}; + d.toLong(); + + return 0; +}''' +exifdatum_has_to_long = cpp.compiles(exifdatum_has_to_long_test, name: 'Exifdatum has toLong() in exiv2', dependencies : [exiv2]) + +build_config = configuration_data () +build_config.set('EXIV2_DATABUF_HAS_PRIVATE_PDATA', private_pdata) +build_config.set('EXIV2_HAS_ANY_ERROR', has_any_error) +build_config.set('EXIV2_XMPDATUM_HAS_TO_LONG', xmpdatum_has_to_long) +build_config.set('EXIV2_EXIFDATUM_HAS_TO_LONG', exifdatum_has_to_long) +config_h = configure_file( + output: 'config.h', + configuration: build_config +) + + find_program('g-ir-scanner', required: get_option('introspection')) if get_option('vapi')