mirror of
https://gitlab.freedesktop.org/cairo/cairo.git
synced 2026-01-05 20:50:24 +01:00
trace-to-xml.c needs cairo-xml.h which is only available when CAIRO_HAS_XML_SURFACE feature is built which is only available when both zlib and png are found. CAIRO_HAS_INTERPRETER only requires zlib.
65 lines
1.8 KiB
Meson
65 lines
1.8 KiB
Meson
subdir('cairo-missing')
|
|
|
|
cairo_utils = []
|
|
|
|
if feature_conf.get('CAIRO_HAS_GOBJECT_FUNCTIONS', 0) == 1
|
|
subdir('cairo-gobject')
|
|
endif
|
|
|
|
if feature_conf.get('CAIRO_HAS_INTERPRETER', 0) == 1
|
|
subdir('cairo-script')
|
|
endif
|
|
|
|
if conf.get('CAIRO_HAS_TRACE', 0) == 1
|
|
subdir('cairo-trace')
|
|
|
|
if (conf.get('CAIRO_HAS_DLSYM', 0) == 1 and
|
|
feature_conf.get('CAIRO_HAS_SCRIPT_SURFACE', 0) == 1 and
|
|
feature_conf.get('CAIRO_HAS_TEE_SURFACE', 0) == 1)
|
|
subdir('cairo-fdr')
|
|
endif
|
|
endif
|
|
|
|
if (glib_dep.found() and
|
|
png_dep.found() and
|
|
host_machine.system() != 'windows' and
|
|
conf.get('CAIRO_HAS_DLSYM', 0) == 1 and
|
|
feature_conf.get('CAIRO_HAS_SCRIPT_SURFACE', 0) == 1 and
|
|
feature_conf.get('CAIRO_HAS_TEE_SURFACE', 0) == 1)
|
|
subdir('cairo-sphinx')
|
|
endif
|
|
|
|
if gtk_dep.found()
|
|
cairo_utils += [
|
|
['show-contour.c', {'deps': [gtk_dep]}],
|
|
['show-traps.c', {'deps': [gtk_dep]}],
|
|
['show-edges.c', {'deps': [gtk_dep]}],
|
|
['show-polygon.c', {'deps': [gtk_dep]}],
|
|
['show-events.c', {'deps': [gtk_dep]}],
|
|
['font-view.c', {'deps': [gtk_dep]}],
|
|
]
|
|
endif
|
|
|
|
if feature_conf.get('CAIRO_HAS_XML_SURFACE', 0) == 1
|
|
expat_dep = dependency('expat', fallback: ['expat', 'expat_dep'])
|
|
cairo_utils += [
|
|
['trace-to-xml.c', {'deps': [expat_dep]}],
|
|
['xml-to-trace.c', {'deps': [expat_dep]}],
|
|
]
|
|
endif
|
|
|
|
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],
|
|
)
|
|
endforeach
|
|
|
|
if cc.has_header_symbol('malloc.h', '__malloc_hook') and cc.has_header('execinfo.h')
|
|
libmallocstats = library('malloc-stats', 'malloc-stats.c')
|
|
endif
|
|
|
|
# backtrace-symbols does not build
|