0001-meson-add-option-introspection.patch 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. meson: add option introspection
  2. Add an option 'introspection' for meson which could control whether
  3. build GIR files or not.
  4. Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/libsecret/-/merge_requests/53]
  5. Signed-off-by: Kai Kang <kai.kang@windriver.com>
  6. ---
  7. libsecret/meson.build | 86 ++++++++++++++++++++++---------------------
  8. meson.build | 1 +
  9. meson_options.txt | 1 +
  10. 3 files changed, 46 insertions(+), 42 deletions(-)
  11. diff --git a/libsecret/meson.build b/libsecret/meson.build
  12. index 759b5ef..2ee8850 100644
  13. --- a/libsecret/meson.build
  14. +++ b/libsecret/meson.build
  15. @@ -104,50 +104,52 @@ libsecret_dep = declare_dependency(
  16. )
  17. # GObject Introspection
  18. -libsecret_gir_sources = [
  19. - 'secret-attributes.c',
  20. - 'secret-attributes.h',
  21. - 'secret-backend.c',
  22. - 'secret-backend.h',
  23. - 'secret-collection.c',
  24. - 'secret-collection.h',
  25. - 'secret-item.c',
  26. - 'secret-item.h',
  27. - 'secret-methods.c',
  28. - 'secret-password.c',
  29. - 'secret-password.h',
  30. - 'secret-paths.c',
  31. - 'secret-paths.h',
  32. - 'secret-prompt.c',
  33. - 'secret-prompt.h',
  34. - 'secret-retrievable.c',
  35. - 'secret-retrievable.h',
  36. - 'secret-schema.c',
  37. - 'secret-schema.h',
  38. - 'secret-schemas.c',
  39. - 'secret-schemas.h',
  40. - 'secret-service.c',
  41. - 'secret-service.h',
  42. - 'secret-types.h',
  43. - 'secret-value.c',
  44. - 'secret-value.h',
  45. -]
  46. -libsecret_gir_sources += version_h
  47. -libsecret_gir_sources += _enums_generated
  48. -
  49. -libsecret_gir = gnome.generate_gir(libsecret,
  50. - sources: libsecret_gir_sources,
  51. - namespace: 'Secret',
  52. - nsversion: api_version_major,
  53. - export_packages: 'libsecret-@0@'.format(api_version_major),
  54. - includes: [ 'GObject-2.0', 'Gio-2.0' ],
  55. - header: 'libsecret/secret.h',
  56. - extra_args: [ '-D SECRET_COMPILATION'],
  57. - install: true,
  58. -)
  59. +if with_gir
  60. + libsecret_gir_sources = [
  61. + 'secret-attributes.c',
  62. + 'secret-attributes.h',
  63. + 'secret-backend.c',
  64. + 'secret-backend.h',
  65. + 'secret-collection.c',
  66. + 'secret-collection.h',
  67. + 'secret-item.c',
  68. + 'secret-item.h',
  69. + 'secret-methods.c',
  70. + 'secret-password.c',
  71. + 'secret-password.h',
  72. + 'secret-paths.c',
  73. + 'secret-paths.h',
  74. + 'secret-prompt.c',
  75. + 'secret-prompt.h',
  76. + 'secret-retrievable.c',
  77. + 'secret-retrievable.h',
  78. + 'secret-schema.c',
  79. + 'secret-schema.h',
  80. + 'secret-schemas.c',
  81. + 'secret-schemas.h',
  82. + 'secret-service.c',
  83. + 'secret-service.h',
  84. + 'secret-types.h',
  85. + 'secret-value.c',
  86. + 'secret-value.h',
  87. + ]
  88. + libsecret_gir_sources += version_h
  89. + libsecret_gir_sources += _enums_generated
  90. +
  91. + libsecret_gir = gnome.generate_gir(libsecret,
  92. + sources: libsecret_gir_sources,
  93. + namespace: 'Secret',
  94. + nsversion: api_version_major,
  95. + export_packages: 'libsecret-@0@'.format(api_version_major),
  96. + includes: [ 'GObject-2.0', 'Gio-2.0' ],
  97. + header: 'libsecret/secret.h',
  98. + extra_args: [ '-D SECRET_COMPILATION'],
  99. + install: true,
  100. + )
  101. +endif
  102. # Vapi
  103. -if with_vapi
  104. +if with_vapi and with_gir
  105. libsecret_vapi = gnome.generate_vapi('libsecret-@0@'.format(api_version_major),
  106. sources: libsecret_gir[0],
  107. metadata_dirs: meson.source_root() / 'libsecret',
  108. diff --git a/meson.build b/meson.build
  109. index a26d046..d22e008 100644
  110. --- a/meson.build
  111. +++ b/meson.build
  112. @@ -22,6 +22,7 @@ with_gcrypt = get_option('gcrypt')
  113. enable_debug = get_option('debugging')
  114. with_vapi = get_option('vapi')
  115. with_gtkdoc = get_option('gtk_doc')
  116. +with_gir = get_option('introspection')
  117. # Some variables
  118. config_h_dir = include_directories('.')
  119. diff --git a/meson_options.txt b/meson_options.txt
  120. index c1fda5d..445aeb0 100644
  121. --- a/meson_options.txt
  122. +++ b/meson_options.txt
  123. @@ -3,3 +3,4 @@ option('gcrypt', type: 'boolean', value: true, description: 'With gcrypt and tra
  124. option('debugging', type: 'boolean', value: false, description: 'Turn debugging on/off')
  125. option('vapi', type: 'boolean', value: true, description: 'Create VAPI file.')
  126. option('gtk_doc', type: 'boolean', value: true, description: 'Build reference documentation using gtk-doc')
  127. +option('introspection', type: 'boolean', value: true, description: 'Create GIR file.')
  128. --
  129. 2.17.1