diff options
Diffstat (limited to 'tools')
-rwxr-xr-x[-rw-r--r--] | tools/g-ir-tool-template.in | 4 | ||||
-rw-r--r-- | tools/meson.build | 54 |
2 files changed, 58 insertions, 0 deletions
diff --git a/tools/g-ir-tool-template.in b/tools/g-ir-tool-template.in index edc68a4c..2eac21fd 100644..100755 --- a/tools/g-ir-tool-template.in +++ b/tools/g-ir-tool-template.in @@ -62,5 +62,9 @@ if srcdir is not None: sys.path.insert(0, pylibdir) +builddir = os.getenv('UNINSTALLED_INTROSPECTION_BUILDDIR', None) +if builddir is not None: + sys.path.insert(0, os.path.join(builddir, 'giscanner')) + from giscanner.@TOOL_MODULE@ import @TOOL_FUNCTION@ sys.exit(@TOOL_FUNCTION@(sys.argv)) diff --git a/tools/meson.build b/tools/meson.build new file mode 100644 index 00000000..73817ec8 --- /dev/null +++ b/tools/meson.build @@ -0,0 +1,54 @@ +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 = [ + ['g-ir-scanner', 'scannermain', 'scanner_main'], + ['g-ir-annotation-tool', 'annotationmain', 'annotation_main'], +] +if get_option('doctool') + tools += [['g-ir-doc-tool', 'docmain', 'doc_main']] +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('PYTHON', python_path) + + tools_conf.set('TOOL_MODULE', tool[1]) + tools_conf.set('TOOL_FUNCTION', tool[2]) + tool_output += configure_file( + input: 'g-ir-tool-template.in', + output: tool[0], + configuration: tools_conf, + install: true, + install_dir: get_option('bindir'), + ) +endforeach + +girscanner = tool_output[0] + +gircompiler = executable('g-ir-compiler', 'compiler.c', + c_args: '-DGIREPO_DEFAULT_SEARCH_PATH="@0"'.format(libdir_abs), + dependencies: [ + girepo_internals_dep, + girepo_dep, + ], + install: true, +) + +girgenerate = executable('g-ir-generate', 'generate.c', + c_args: '-DGIREPO_DEFAULT_SEARCH_PATH="@0"'.format(libdir_abs), + dependencies: [ + girepo_internals_dep, + girepo_dep, + ], + install: true, +) + +girinspect = executable('g-ir-inspect', 'g-ir-inspect.c', + dependencies: girepo_dep, + install: true, +) |