PIKApp/libpikaconfig/meson.build

92 lines
2.0 KiB
Meson

stamp_config_enums = custom_target('stamp-pikaconfigenums.h',
input : [
files(
'pikaconfigenums.h'
),
],
output: [ 'stamp-pikaconfigenums.h', ],
command: [
mkenums_wrap, perl,
meson.project_source_root(), meson.current_source_dir(),
meson.current_build_dir(),
'pikaconfig',
'#include <gio/gio.h>\n' +
'#include "libpikabase/pikabase.h"\n',
'#include "libpika/libpika-intl.h"',
libpika_mkenums_dtails
],
build_by_default: true
)
libpikaconfig_sources_introspectable = files(
'pikacolorconfig.c',
'pikaconfig-array.c',
'pikaconfig-deserialize.c',
'pikaconfig-error.c',
'pikaconfig-iface.c',
'pikaconfig-params.c',
'pikaconfig-path.c',
'pikaconfig-register.c',
'pikaconfig-serialize.c',
'pikaconfig-utils.c',
'pikaconfigwriter.c',
'pikascanner.c',
)
libpikaconfig_sources = [
libpikaconfig_sources_introspectable,
'pikaconfigenums.c',
stamp_config_enums
]
libpikaconfig_headers_introspectable = files(
'pikacolorconfig.h',
'pikaconfig-array.h',
'pikaconfig-deserialize.h',
'pikaconfig-error.h',
'pikaconfig-iface.h',
'pikaconfig-params.h',
'pikaconfig-path.h',
'pikaconfig-register.h',
'pikaconfig-serialize.h',
'pikaconfig-utils.h',
'pikaconfigenums.h',
'pikaconfigtypes.h',
'pikaconfigwriter.h',
'pikascanner.h',
)
libpikaconfig_headers = [
libpikaconfig_headers_introspectable,
'pikaconfig.h',
]
libpikaconfig_introspectable = [
libpikaconfig_headers_introspectable,
libpikaconfig_sources_introspectable,
]
libpikaconfig = library('pikaconfig-' + pika_api_version,
libpikaconfig_sources,
include_directories: rootInclude,
dependencies: [
cairo, gdk_pixbuf, gegl, gio, gio_specific,
],
c_args: [ '-DG_LOG_DOMAIN="LibPikaConfig"', '-DPIKA_CONFIG_COMPILATION', ],
link_with: [
libpikabase,
libpikacolor,
libpikamath,
],
vs_module_defs: 'pikaconfig.def',
install: true,
version: so_version,
)
install_headers(
libpikaconfig_headers,
subdir: pika_api_name / 'libpikaconfig',
)