gem-graph-client/libide/foundry/meson.build

200 lines
5.0 KiB
Meson

libide_foundry_header_dir = join_paths(libide_header_dir, 'foundry')
libide_foundry_header_subdir = join_paths(libide_header_subdir, 'foundry')
libide_include_directories += include_directories('.')
libide_foundry_sources = []
libide_foundry_public_headers = []
libide_foundry_generated_headers = []
#
# Public API Headers
#
libide_foundry_public_headers = [
'ide-build-log.h',
'ide-build-manager.h',
'ide-build-system-discovery.h',
'ide-build-system.h',
'ide-build-target-provider.h',
'ide-build-target.h',
'ide-compile-commands.h',
'ide-config-manager.h',
'ide-config-provider.h',
'ide-config.h',
'ide-dependency-updater.h',
'ide-deploy-strategy.h',
'ide-device-info.h',
'ide-device-manager.h',
'ide-device-provider.h',
'ide-device.h',
'ide-diagnostic-tool.h',
'ide-fallback-build-system.h',
'ide-foundry-compat.h',
'ide-foundry-types.h',
'ide-local-device.h',
'ide-pipeline-addin.h',
'ide-pipeline-phase.h',
'ide-pipeline-stage-launcher.h',
'ide-pipeline-stage-mkdirs.h',
'ide-pipeline-stage-transfer.h',
'ide-pipeline-stage.h',
'ide-pipeline.h',
'ide-run-manager.h',
'ide-runner-addin.h',
'ide-runner.h',
'ide-runtime-manager.h',
'ide-runtime-provider.h',
'ide-runtime.h',
'ide-simple-build-system-discovery.h',
'ide-simple-build-target.h',
'ide-simple-toolchain.h',
'ide-test.h',
'ide-test-manager.h',
'ide-test-provider.h',
'ide-toolchain-manager.h',
'ide-toolchain-provider.h',
'ide-toolchain.h',
'ide-triplet.h',
'libide-foundry.h',
]
libide_foundry_private_headers = [
'ide-build-log-private.h',
'ide-build-private.h',
'ide-pipeline-stage-private.h',
'ide-config-private.h',
'ide-device-private.h',
'ide-foundry-init.h',
'ide-run-manager-private.h',
'ide-runtime-private.h',
'ide-toolchain-private.h',
]
libide_foundry_enum_headers = [
'ide-build-log.h',
'ide-config.h',
'ide-device.h',
'ide-device-info.h',
'ide-pipeline-phase.h',
'ide-runtime.h',
'ide-test.h',
]
install_headers(libide_foundry_public_headers, subdir: libide_foundry_header_subdir)
#
# Sources
#
libide_foundry_public_sources = [
'ide-build-manager.c',
'ide-build-system-discovery.c',
'ide-build-system.c',
'ide-build-target-provider.c',
'ide-build-target.c',
'ide-compile-commands.c',
'ide-config-manager.c',
'ide-config-provider.c',
'ide-config.c',
'ide-dependency-updater.c',
'ide-deploy-strategy.c',
'ide-device-info.c',
'ide-device-manager.c',
'ide-device-provider.c',
'ide-device.c',
'ide-diagnostic-tool.c',
'ide-fallback-build-system.c',
'ide-foundry-compat.c',
'ide-local-device.c',
'ide-pipeline-addin.c',
'ide-pipeline-stage-launcher.c',
'ide-pipeline-stage-mkdirs.c',
'ide-pipeline-stage-transfer.c',
'ide-pipeline-stage.c',
'ide-pipeline.c',
'ide-run-manager.c',
'ide-runner-addin.c',
'ide-runner.c',
'ide-runtime-manager.c',
'ide-runtime-provider.c',
'ide-runtime.c',
'ide-simple-build-system-discovery.c',
'ide-simple-build-target.c',
'ide-simple-toolchain.c',
'ide-test-manager.c',
'ide-test-provider.c',
'ide-test.c',
'ide-toolchain-manager.c',
'ide-toolchain-provider.c',
'ide-toolchain.c',
'ide-triplet.c',
]
libide_foundry_private_sources = [
'ide-build-log.c',
'ide-build-utils.c',
'ide-foundry-init.c',
]
libide_foundry_sources += libide_foundry_public_sources
libide_foundry_sources += libide_foundry_private_sources
#
# Enum generation
#
libide_foundry_enums = gnome.mkenums_simple('ide-foundry-enums',
body_prefix: '#include "config.h"',
header_prefix: '#include <libide-core.h>',
decorator: '_IDE_EXTERN',
sources: libide_foundry_enum_headers,
install_header: true,
install_dir: libide_foundry_header_dir,
)
libide_foundry_sources += [libide_foundry_enums[0]]
libide_foundry_generated_headers += [libide_foundry_enums[1]]
#
# Dependencies
#
libide_foundry_deps = [
libgio_dep,
libgtk_dep,
libdazzle_dep,
libpeas_dep,
libvte_dep,
libjson_glib_dep,
libide_core_dep,
libide_io_dep,
libide_projects_dep,
libide_threading_dep,
]
#
# Library Definitions
#
libide_foundry = static_library('ide-foundry-' + libide_api_version,
libide_foundry_sources, libide_foundry_generated_headers,
dependencies: libide_foundry_deps,
c_args: libide_args + release_args + ['-DIDE_FOUNDRY_COMPILATION'],
)
libide_foundry_dep = declare_dependency(
dependencies: libide_foundry_deps,
link_with: libide_foundry,
include_directories: include_directories('.'),
sources: libide_foundry_generated_headers,
)
gnome_builder_public_sources += files(libide_foundry_public_sources)
gnome_builder_public_headers += files(libide_foundry_public_headers)
gnome_builder_private_sources += files(libide_foundry_private_sources)
gnome_builder_private_headers += files(libide_foundry_private_headers)
gnome_builder_generated_headers += libide_foundry_generated_headers
gnome_builder_include_subdirs += libide_foundry_header_subdir
gnome_builder_gir_extra_args += ['--c-include=libide-foundry.h', '-DIDE_FOUNDRY_COMPILATION']