[tracker/wip/sam/meson] meson: Install Tracker-1.0 GIR and Typelib



commit 078d332365ae08696b9804679bb4cdf4168d858a
Author: Sam Thursfield <sam afuera me uk>
Date:   Thu Mar 30 23:55:04 2017 +0100

    meson: Install Tracker-1.0 GIR and Typelib
    
    This is done in a horrendously hacky way for the time being. We really
    need accessor functions for target outputs to do it more cleanly, so
    we could call .vala_gir() on the libtracker_sparql target object and
    get the actual GIR output.
    
    See https://github.com/mesonbuild/meson/issues/891

 src/libtracker-sparql/meson.build |   16 +++++++++++++++-
 1 files changed, 15 insertions(+), 1 deletions(-)
---
diff --git a/src/libtracker-sparql/meson.build b/src/libtracker-sparql/meson.build
index 61bb64b..9c6c4a7 100644
--- a/src/libtracker-sparql/meson.build
+++ b/src/libtracker-sparql/meson.build
@@ -28,7 +28,7 @@ libtracker_sparql_intermediate = static_library('tracker-sparql',
     # build system as well.
     # FIXME: we also can't depend on this in the TrackerMiner GIR, which
     # probably breaks stuff
-    vala_gir: '../Tracker-' + tracker_api_version + '.gir',
+    vala_gir: 'Tracker-' + tracker_api_version + '.gir',
     vala_args: [
         '--debug',
         '--includedir', 'libtracker-sparql',
@@ -87,6 +87,20 @@ meson.add_install_script('../install-generated-header.sh',
     join_paths(meson.current_build_dir(), 'tracker-generated.h'),
     join_paths(get_option('prefix'), get_option('includedir'), 'tracker-1.0', 'libtracker-sparql'))
 
+custom_target('tracker-sparql-typelib',
+    command: ['g-ir-compiler', '--output', '@OUTPUT@', join_paths(meson.current_build_dir(), 
'Tracker-1.0.gir')],
+    #input: join_paths(meson.current_build_dir(), 'Tracker-1.0.gir'),
+    output: 'Tracker-1.0.typelib',
+    depends: libtracker_sparql_intermediate,
+    install: true,
+    install_dir: join_paths(get_option('libdir'), 'girepository-1.0'))
+
+# FIXME: reusing the same script to install the .gir; see
+# <https://github.com/mesonbuild/meson/issues/891>.
+meson.add_install_script('../install-generated-header.sh',
+    join_paths(meson.current_build_dir(), 'Tracker-1.0.gir'),
+    join_paths(get_option('prefix'), get_option('datadir'), 'gir-1.0'))
+
 # FIXME: we can't depend properly on the generated .vapi to do this.
 custom_target('tracker-sparql-' + tracker_api_version + '.vapi',
     #input: 'tracker-sparql-vala.vapi',


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]