diff options
-rw-r--r-- | boilerplate/meson.build | 10 | ||||
-rw-r--r-- | meson.build | 3 | ||||
-rw-r--r-- | src/meson.build | 3 | ||||
-rw-r--r-- | test/any2ppm.c | 3 | ||||
-rw-r--r-- | test/meson.build | 20 | ||||
-rw-r--r-- | test/pdiff/meson.build | 15 | ||||
-rw-r--r-- | util/cairo-gobject/meson.build | 9 | ||||
-rw-r--r-- | util/cairo-missing/meson.build | 7 | ||||
-rw-r--r-- | util/cairo-script/meson.build | 24 | ||||
-rw-r--r-- | util/cairo-sphinx/meson.build | 6 | ||||
-rw-r--r-- | util/meson.build | 7 |
11 files changed, 55 insertions, 52 deletions
diff --git a/boilerplate/meson.build b/boilerplate/meson.build index 0216b7a6c..cc6bc9519 100644 --- a/boilerplate/meson.build +++ b/boilerplate/meson.build @@ -35,9 +35,13 @@ cairo_boilerplate_constructors = custom_target('cairo-boilerplate-constructors.c command: [python3, files('make-cairo-boilerplate-constructors.py')[0], '@OUTPUT@', '@INPUT@']) libcairoboilerplate = static_library('cairoboilerplate', cairo_boilerplate_sources + [cairo_boilerplate_constructors], - include_directories: [incbase, incsrc], - dependencies: deps, - link_with: [libcairo], + include_directories: [incbase], + dependencies: deps + [libcairo_dep], install: false, build_by_default: false, ) + +cairoboilerplate_dep = declare_dependency( + link_with: [libcairoboilerplate], + include_directories: include_directories('.'), +) diff --git a/meson.build b/meson.build index 9901bdf29..8d989abe9 100644 --- a/meson.build +++ b/meson.build @@ -890,11 +890,10 @@ deps += internal_deps subdir('src') -incboilerplate = include_directories('boilerplate') if feature_conf.get('CAIRO_HAS_PNG_FUNCTIONS', 0) == 1 subdir('boilerplate') else - libcairoboilerplate = [] + cairoboilerplate_dep = dependency() endif subdir('util') diff --git a/src/meson.build b/src/meson.build index 2905fdc8a..58a798404 100644 --- a/src/meson.build +++ b/src/meson.build @@ -309,7 +309,8 @@ cairo_headers += [configure_file(output: 'cairo-features.h', configuration: feat libcairo_dep = declare_dependency(link_with: libcairo, dependencies: deps, - include_directories: incsrc) + include_directories: incsrc +) pkgmod.generate(libcairo, description: 'Multi-platform 2D graphics library', diff --git a/test/any2ppm.c b/test/any2ppm.c index d2d5fc5e2..f601ec835 100644 --- a/test/any2ppm.c +++ b/test/any2ppm.c @@ -60,7 +60,10 @@ #include <string.h> #include <cairo.h> + +#if CAIRO_HAS_INTERPRETER #include <cairo-script-interpreter.h> +#endif #if CAIRO_CAN_TEST_PDF_SURFACE #include <poppler.h> diff --git a/test/meson.build b/test/meson.build index 143d2f09c..0dd555b5e 100644 --- a/test/meson.build +++ b/test/meson.build @@ -577,8 +577,6 @@ cairo_test_constructors = custom_target('cairo-test-constructors.c', output: 'cairo-test-constructors.c', command: [python3, files('make-cairo-test-constructors.py')[0], '@OUTPUT@', '@INPUT@']) -incpdiff = include_directories('pdiff') - test_depends = [] subdir('pdiff') @@ -603,27 +601,25 @@ endif if build_any2ppm any2ppm_exe = executable('any2ppm', 'any2ppm.c', - include_directories: [incbase, incsrc, inccairoscript], - link_with: [libcairo, libcairoscript], - dependencies: deps + test_deps, + include_directories: [incbase], + dependencies: deps + test_deps + [libcairo_dep, libcairoscript_dep], ) test_depends += [any2ppm_exe] endif -if have_shm +if have_shm and conf.get('CAIRO_HAS_INTERPRETER', 0) == 1 cairo_test_trace_exe = executable('cairo-test-trace', cairo_test_trace_sources, - include_directories: [incbase, incsrc, incboilerplate, incpdiff, inccairoscript, inccairomissing], + include_directories: [incbase], c_args: pthread_c_args, - link_with: [libcairo, libcairoboilerplate, libpdiff, libcairoscript, libcairomissing], link_args: extra_link_args, - dependencies: deps + test_deps + [rt_dep]) + dependencies: deps + test_deps + [rt_dep, libcairo_dep, cairoboilerplate_dep, libpdiff_dep, libcairomissing_dep, libcairoscript_dep]) endif exe = executable('cairo-test-suite', [cairo_test_suite_sources, test_sources, cairo_test_constructors], - include_directories: [incbase, incsrc, incboilerplate, incpdiff], - link_with: [libcairo, libcairoboilerplate, libpdiff], + include_directories: [incbase], link_args: extra_link_args, - dependencies: deps + test_deps, + dependencies: deps + test_deps + [libcairo_dep, cairoboilerplate_dep, + libpdiff_dep], ) env = environment() diff --git a/test/pdiff/meson.build b/test/pdiff/meson.build index 30c6f1b5f..636871a1f 100644 --- a/test/pdiff/meson.build +++ b/test/pdiff/meson.build @@ -9,11 +9,16 @@ perceptualdiff_sources = [ ] libpdiff = static_library('pdiff', libpdiff_sources, - include_directories: [incbase, incsrc], - dependencies: deps, - link_with: [libcairo], + include_directories: [incbase], + dependencies: deps + [libcairo_dep], +) + +libpdiff_dep = declare_dependency( + include_directories: include_directories('.'), + link_with: [libpdiff], ) perceptualdiff = executable('perceptualdiff', perceptualdiff_sources, - include_directories: [incbase, incsrc], - link_with: [libpdiff]) + include_directories: [incbase], + dependencies: [libcairo_dep, libpdiff_dep], +) diff --git a/util/cairo-gobject/meson.build b/util/cairo-gobject/meson.build index e4e3c8302..0a525b6fa 100644 --- a/util/cairo-gobject/meson.build +++ b/util/cairo-gobject/meson.build @@ -8,18 +8,15 @@ cairo_gobject_headers = [ ] libcairogobject = library('cairo-gobject', cairo_gobject_sources, - include_directories: [incbase, incsrc], - dependencies: [glib_dep, gobject_dep], - link_with: [libcairo], + include_directories: [incbase], + dependencies: [glib_dep, gobject_dep, libcairo_dep], soversion: cairo_version_sonum, version: cairo_libversion, install: true, ) -incgobject = include_directories('.') - libcairogobject_dep = declare_dependency(link_with: libcairogobject, - include_directories: [incgobject], + include_directories: include_directories('.'), dependencies: libcairo_dep) pkgmod.generate(libcairogobject, diff --git a/util/cairo-missing/meson.build b/util/cairo-missing/meson.build index 18c6caf33..3280b03fe 100644 --- a/util/cairo-missing/meson.build +++ b/util/cairo-missing/meson.build @@ -3,10 +3,13 @@ cairo_missing_sources = [ 'getline.c', ] -inccairomissing = include_directories('.') - libcairomissing = static_library('cairo-missing', cairo_missing_sources, include_directories: [incbase, incsrc], install: false, build_by_default: false, ) + +libcairomissing_dep = declare_dependency( + link_with: libcairomissing, + include_directories: include_directories('.'), +) diff --git a/util/cairo-script/meson.build b/util/cairo-script/meson.build index 7a6b55818..653c19d33 100644 --- a/util/cairo-script/meson.build +++ b/util/cairo-script/meson.build @@ -26,18 +26,15 @@ csi_trace_sources = [ libcairoscript = library('cairo-script-interpreter', cairoscript_interpreter_sources, - include_directories: [incbase, incsrc], - dependencies: deps, - link_with: [libcairo], + include_directories: [incbase], + dependencies: deps + [libcairo_dep], soversion: cairo_version_sonum, version: cairo_libversion, install: true, ) -inccairoscript = include_directories('.') - libcairoscript_dep = declare_dependency(link_with: libcairoscript, - include_directories: [inccairoscript], + include_directories: include_directories('.'), dependencies: libcairo_dep) pkgmod.generate(libcairoscript, @@ -49,22 +46,19 @@ pkgmod.generate(libcairoscript, meson.override_dependency('cairo-script-interpreter', libcairoscript_dep) csi_replay_exe = executable('csi-replay', csi_replay_sources, - include_directories: [incbase, incsrc], - link_with: [libcairo, libcairoscript], - dependencies: deps, + include_directories: [incbase], + dependencies: deps + [libcairo_dep, libcairoscript_dep], ) csi_exec_exe = executable('csi-exec', csi_exec_sources, - include_directories: [incbase, incsrc], - link_with: [libcairo, libcairoscript], - dependencies: deps, + include_directories: [incbase], + dependencies: deps + [libcairo_dep, libcairoscript_dep], ) if feature_conf.get('CAIRO_HAS_SCRIPT_SURFACE', 0) == 1 and conf.get('HAVE_LIBGEN_H', 0) == 1 csi_trace_exe = executable('csi-trace', csi_trace_sources, - include_directories: [incbase, incsrc], - link_with: [libcairo, libcairoscript], - dependencies: deps, + include_directories: [incbase], + dependencies: deps + [libcairo_dep, libcairoscript_dep], ) endif diff --git a/util/cairo-sphinx/meson.build b/util/cairo-sphinx/meson.build index f779744b9..20ea04d7f 100644 --- a/util/cairo-sphinx/meson.build +++ b/util/cairo-sphinx/meson.build @@ -16,10 +16,10 @@ libcairosphinx = library('cairo-sphinx', libcairo_sphinx_sources, libdir = join_paths(get_option('prefix'), get_option('libdir')) cairosphinx_exe = executable('cairo-sphinx', cairo_sphinx_sources, - include_directories: [incbase, incsrc, inccairoscript, incboilerplate], + include_directories: [incbase], c_args: ['-DLIBDIR="@0@"'.format(libdir)] + pthread_c_args, - dependencies: deps + [glib_dep, rt_dep], - link_with: [libcairo, libcairosphinx, libcairoscript, libcairoboilerplate], + dependencies: deps + [glib_dep, rt_dep, libcairo_dep, cairoboilerplate_dep, libcairoscript_dep], + link_with: [libcairosphinx], link_args: extra_link_args, install: true, ) diff --git a/util/meson.build b/util/meson.build index e3a1ace96..152b23729 100644 --- a/util/meson.build +++ b/util/meson.build @@ -8,6 +8,8 @@ endif if conf.get('CAIRO_HAS_INTERPRETER', 0) == 1 subdir('cairo-script') +else + libcairoscript_dep = dependency('', required: false) endif if conf.get('CAIRO_HAS_TRACE', 0) == 1 @@ -52,9 +54,8 @@ foreach util : cairo_utils exe_name = util[0].split('.')[0] util_deps = util.get(1, {}).get('deps', []) executable(exe_name, util[0], - include_directories: [incbase, incsrc, inccairoscript], - dependencies: deps + util_deps, - link_with: [libcairo, libcairoscript], + include_directories: [incbase], + dependencies: deps + util_deps + [libcairo_dep, libcairoscript_dep], ) endforeach |