summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEmmanuele Bassi <ebassi@gnome.org>2017-11-22 16:21:47 +0000
committerEmmanuele Bassi <ebassi@gnome.org>2017-11-22 16:21:47 +0000
commit2dcf8644e908a514be4545a8fd6885f1a0d89546 (patch)
tree9635ea24398ff3be475592dbbfc4951fc54699c3
parentbc4f7eeeb6d3159001d9adcf3df4b55535577cdd (diff)
downloadgobject-introspection-2dcf8644e908a514be4545a8fd6885f1a0d89546.tar.gz
meson: Gather and build all paths upfront
Use get_option() once, and build all paths used elsewhere in one place.
-rw-r--r--gir/meson.build2
-rw-r--r--giscanner/meson.build2
-rw-r--r--meson.build36
-rw-r--r--tools/meson.build6
4 files changed, 21 insertions, 25 deletions
diff --git a/gir/meson.build b/gir/meson.build
index 5229207d..75ae527a 100644
--- a/gir/meson.build
+++ b/gir/meson.build
@@ -51,7 +51,7 @@ scanner_command = [
# GLib
glib_includedir = join_paths(gobject_dep.get_pkgconfig_variable('includedir'), 'glib-2.0')
-glib_libincludedir = join_paths(gobject_dep.get_pkgconfig_variable('libdir'), 'glib-2.0/include')
+glib_libincludedir = join_paths(gobject_dep.get_pkgconfig_variable('libdir'), 'glib-2.0', 'include')
glib_srcdir = get_option('glib-src-dir')
glib_glob = glib_includedir + '/glib/*.h'
diff --git a/giscanner/meson.build b/giscanner/meson.build
index 963fad59..73e3901f 100644
--- a/giscanner/meson.build
+++ b/giscanner/meson.build
@@ -1,4 +1,4 @@
-pkglibdir = join_paths(get_option('libdir'), meson.project_name())
+pkglibdir = join_paths(gi_libdir, meson.project_name())
giscannerdir = join_paths(pkglibdir, 'giscanner')
install_data([
'__init__.py',
diff --git a/meson.build b/meson.build
index ba888e36..b5274395 100644
--- a/meson.build
+++ b/meson.build
@@ -9,11 +9,17 @@ project('gobject-introspection', 'c',
py3 = import('python3')
+gi_prefix = get_option('prefix')
+gi_bindir = join_paths(gi_prefix, get_option('bindir'))
+gi_libdir = join_paths(gi_prefix, get_option('libdir'))
+gi_datadir = join_paths(gi_prefix, get_option('datadir'))
+gi_includedir = join_paths(gi_prefix, get_option('includedir'))
+
cc = meson.get_compiler('c')
config = configuration_data()
config.set_quoted('GIR_SUFFIX', 'gir-1.0')
-config.set_quoted('GIR_DIR', join_paths(get_option('prefix'), get_option('datadir'), 'gir-1.0'))
-config.set_quoted('GOBJECT_INTROSPECTION_LIBDIR', join_paths(get_option('prefix'), get_option('libdir')))
+config.set_quoted('GIR_DIR', join_paths(gi_datadir, 'gir-1.0'))
+config.set_quoted('GOBJECT_INTROSPECTION_LIBDIR', gi_libdir)
foreach type : ['char', 'short', 'int', 'long']
size = cc.sizeof(type)
@@ -62,39 +68,31 @@ if gir_build
endif
subdir('examples')
subdir('docs')
+
### Missing meson.build file
### subdir('tests')
-install_data('Makefile.introspection', install_dir: join_paths(get_option('datadir'), 'gobject-introspection-1.0'))
-install_data('m4/introspection.m4', install_dir: join_paths(get_option('datadir'), 'aclocal'))
+install_data('Makefile.introspection', install_dir: join_paths(gi_datadir, 'gobject-introspection-1.0'))
+install_data('m4/introspection.m4', install_dir: join_paths(gi_datadir, 'aclocal'))
-prefix = get_option('prefix')
pkgconfig_conf = configuration_data()
pkgconfig_conf.set('prefix', prefix)
pkgconfig_conf.set('exec_prefix', '${prefix}')
-pkgconfig_conf.set('bindir', join_paths(prefix, get_option('bindir')))
-pkgconfig_conf.set('libdir', join_paths(prefix, get_option('libdir')))
-pkgconfig_conf.set('datarootdir', join_paths(prefix, get_option('datadir')))
+pkgconfig_conf.set('bindir', gi_bindir)
+pkgconfig_conf.set('libdir', gi_libdir)
+pkgconfig_conf.set('datarootdir', gi_datadir)
pkgconfig_conf.set('datadir', '${datarootdir}')
-pkgconfig_conf.set('includedir', join_paths(prefix, get_option('includedir')))
+pkgconfig_conf.set('includedir', gi_includedir)
pkgconfig_conf.set('EXEEXT', '') # TODO?
pkgconfig_conf.set('VERSION', meson.project_version())
pkgconfig_conf.set('FFI_PC_CFLAGS', libffi_dep.get_pkgconfig_variable('Cflags'))
-pkgconfig_conf.set('FFI_PC_PACKAGES', 'libffi')
pkgconfig_conf.set('FFI_PC_LIBS', libffi_dep.get_pkgconfig_variable('Libs'))
-
-configure_file(
- input: 'gobject-introspection-no-export-1.0.pc.in',
- output: 'gobject-introspection-no-export-1.0.pc',
- configuration: pkgconfig_conf,
- install: true,
- install_dir: join_paths(get_option('libdir'), 'pkgconfig'),
-)
+pkgconfig_conf.set('FFI_PC_PACKAGES', 'libffi')
configure_file(
input: 'gobject-introspection-1.0.pc.in',
output: 'gobject-introspection-1.0.pc',
configuration: pkgconfig_conf,
install: true,
- install_dir: join_paths(get_option('libdir'), 'pkgconfig'),
+ install_dir: join_paths(gi_libdir, 'pkgconfig'),
)
diff --git a/tools/meson.build b/tools/meson.build
index 73817ec8..a82a2034 100644
--- a/tools/meson.build
+++ b/tools/meson.build
@@ -1,5 +1,3 @@
-libdir_abs = join_paths(get_option('prefix'), get_option('libdir'))
-datadir_abs = join_paths(get_option('prefix'), get_option('datadir'))
python_path = py3.find_python().path()
tools = [
@@ -13,8 +11,8 @@ endif
tool_output = []
foreach tool : tools
tools_conf = configuration_data()
- tools_conf.set('libdir', libdir_abs)
- tools_conf.set('datarootdir', datadir_abs)
+ tools_conf.set('libdir', gi_libdir)
+ tools_conf.set('datarootdir', gi_datadir)
tools_conf.set('PYTHON', python_path)
tools_conf.set('TOOL_MODULE', tool[1])