[libsecret: 1/2] meson: add option introspection



commit 1804de769c6d85a6637fd0deeb58dbda1a9a2f5f
Author: Kai Kang <kai kang windriver com>
Date:   Thu May 21 16:04:48 2020 +0800

    meson: add option introspection
    
    Add an option 'introspection' for meson which could control whether
    build GIR files or not.
    
    Signed-off-by: Kai Kang <kai kang windriver com>

 libsecret/meson.build | 86 ++++++++++++++++++++++++++-------------------------
 meson.build           |  1 +
 meson_options.txt     |  1 +
 3 files changed, 46 insertions(+), 42 deletions(-)
---
diff --git a/libsecret/meson.build b/libsecret/meson.build
index 759b5ef..2ee8850 100644
--- a/libsecret/meson.build
+++ b/libsecret/meson.build
@@ -104,50 +104,52 @@ libsecret_dep = declare_dependency(
 )
 
 # GObject Introspection
-libsecret_gir_sources = [
-  'secret-attributes.c',
-  'secret-attributes.h',
-  'secret-backend.c',
-  'secret-backend.h',
-  'secret-collection.c',
-  'secret-collection.h',
-  'secret-item.c',
-  'secret-item.h',
-  'secret-methods.c',
-  'secret-password.c',
-  'secret-password.h',
-  'secret-paths.c',
-  'secret-paths.h',
-  'secret-prompt.c',
-  'secret-prompt.h',
-  'secret-retrievable.c',
-  'secret-retrievable.h',
-  'secret-schema.c',
-  'secret-schema.h',
-  'secret-schemas.c',
-  'secret-schemas.h',
-  'secret-service.c',
-  'secret-service.h',
-  'secret-types.h',
-  'secret-value.c',
-  'secret-value.h',
-]
-libsecret_gir_sources += version_h
-libsecret_gir_sources += _enums_generated
-
-libsecret_gir = gnome.generate_gir(libsecret,
-  sources: libsecret_gir_sources,
-  namespace: 'Secret',
-  nsversion: api_version_major,
-  export_packages: 'libsecret-@0@'.format(api_version_major),
-  includes: [ 'GObject-2.0', 'Gio-2.0' ],
-  header: 'libsecret/secret.h',
-  extra_args: [ '-D SECRET_COMPILATION'],
-  install: true,
-)
+if with_gir
+  libsecret_gir_sources = [
+    'secret-attributes.c',
+    'secret-attributes.h',
+    'secret-backend.c',
+    'secret-backend.h',
+    'secret-collection.c',
+    'secret-collection.h',
+    'secret-item.c',
+    'secret-item.h',
+    'secret-methods.c',
+    'secret-password.c',
+    'secret-password.h',
+    'secret-paths.c',
+    'secret-paths.h',
+    'secret-prompt.c',
+    'secret-prompt.h',
+    'secret-retrievable.c',
+    'secret-retrievable.h',
+    'secret-schema.c',
+    'secret-schema.h',
+    'secret-schemas.c',
+    'secret-schemas.h',
+    'secret-service.c',
+    'secret-service.h',
+    'secret-types.h',
+    'secret-value.c',
+    'secret-value.h',
+  ]
+  libsecret_gir_sources += version_h
+  libsecret_gir_sources += _enums_generated
+
+  libsecret_gir = gnome.generate_gir(libsecret,
+    sources: libsecret_gir_sources,
+    namespace: 'Secret',
+    nsversion: api_version_major,
+    export_packages: 'libsecret-@0@'.format(api_version_major),
+    includes: [ 'GObject-2.0', 'Gio-2.0' ],
+    header: 'libsecret/secret.h',
+    extra_args: [ '-D SECRET_COMPILATION'],
+    install: true,
+  )
+endif
 
 # Vapi
-if with_vapi
+if with_vapi and with_gir
   libsecret_vapi = gnome.generate_vapi('libsecret-@0@'.format(api_version_major),
     sources: libsecret_gir[0],
     metadata_dirs: meson.source_root() / 'libsecret',
diff --git a/meson.build b/meson.build
index a26d046..d22e008 100644
--- a/meson.build
+++ b/meson.build
@@ -22,6 +22,7 @@ with_gcrypt = get_option('gcrypt')
 enable_debug = get_option('debugging')
 with_vapi = get_option('vapi')
 with_gtkdoc = get_option('gtk_doc')
+with_gir = get_option('introspection')
 
 # Some variables
 config_h_dir = include_directories('.')
diff --git a/meson_options.txt b/meson_options.txt
index c1fda5d..445aeb0 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -3,3 +3,4 @@ option('gcrypt', type: 'boolean', value: true, description: 'With gcrypt and tra
 option('debugging', type: 'boolean', value: false, description: 'Turn debugging on/off')
 option('vapi', type: 'boolean', value: true, description: 'Create VAPI file.')
 option('gtk_doc', type: 'boolean', value: true, description: 'Build reference documentation using gtk-doc')
+option('introspection', type: 'boolean', value: true, description: 'Create GIR file.')


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