meson: Use more dependency objects

For example, to depend on cairo-script, inccairoscript was added to
"include_directories:" and libcairoscript was added to "link_with:".
This commit instead uses the libcairoscript_dep dependency everywhere.

Signed-off-by: Uli Schlachter <psychon@znc.in>
This commit is contained in:
Uli Schlachter 2021-05-22 07:59:52 +02:00
parent 63f0d62684
commit 1981fb6dfb
10 changed files with 49 additions and 51 deletions

View file

@ -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('.'),
)

View file

@ -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')

View file

@ -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',

View file

@ -572,8 +572,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')
@ -598,27 +596,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
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()

View file

@ -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],
)

View file

@ -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,

View file

@ -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('.'),
)

View file

@ -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

View file

@ -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,
)

View file

@ -52,9 +52,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