[gnome-shell] build: Add configuration summaries



commit 04352ae1587fc4eee38c7ce6e76133f94f7ca46f
Author: Florian Müllner <fmuellner gnome org>
Date:   Thu Mar 5 12:44:35 2020 +0100

    build: Add configuration summaries
    
    Meson now has a summary() function to easily summarize the build
    configuration after the project was configured, use that for some
    fancy output when the feature is available.
    
    https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1072

 meson.build                             | 32 ++++++++++++++++++++++++++++++++
 subprojects/extensions-tool/meson.build | 26 ++++++++++++++++++++++++++
 2 files changed, 58 insertions(+)
---
diff --git a/meson.build b/meson.build
index f9e178673a..0532f7332e 100644
--- a/meson.build
+++ b/meson.build
@@ -271,3 +271,35 @@ if get_option('gtk_doc')
 endif
 
 meson.add_install_script('meson/postinstall.py')
+
+summary_options = {
+  'networkmanager': get_option('networkmanager'),
+  'systemd': get_option('systemd'),
+  'extensions_tool': get_option('extensions_tool'),
+  'man': get_option('man'),
+  'gtk_doc': get_option('gtk_doc'),
+}
+
+summary_build = {
+  'buildtype': get_option('buildtype'),
+  'debug': get_option('debug'),
+}
+
+summary_dirs = {
+  'prefix': get_option('prefix'),
+  'bindir': get_option('bindir'),
+  'libdir': get_option('libdir'),
+  'libexecdir': get_option('libexecdir'),
+  'datadir': get_option('datadir'),
+  'sysconfdir': get_option('sysconfdir'),
+}
+
+if get_option('man')
+  summary_dirs += { 'mandir': get_option('mandir') }
+endif
+
+if meson.version().version_compare('>= 0.53.0')
+  summary(summary_dirs, section: 'Directories')
+  summary(summary_build, section: 'Build Configuration')
+  summary(summary_options, section: 'Build Options')
+endif
diff --git a/subprojects/extensions-tool/meson.build b/subprojects/extensions-tool/meson.build
index 4631eef586..d36c7fb002 100644
--- a/subprojects/extensions-tool/meson.build
+++ b/subprojects/extensions-tool/meson.build
@@ -51,4 +51,30 @@ endif
 
 if not meson.is_subproject()
   subdir('po')
+
+  summary_dirs = {
+    'prefix': get_option('prefix'),
+    'bindir': get_option('bindir'),
+    'datadir': get_option('datadir'),
+  }
+
+  if get_option('man')
+    summary_dirs += { 'mandir': get_option('mandir') }
+  endif
+
+  summary_build = {
+    'buildtype': get_option('buildtype'),
+    'debug': get_option('debug'),
+  }
+
+  summary_options = {
+    'man': get_option('man'),
+    'bash_completion': bash_completion.found(),
+  }
+
+  if meson.version().version_compare('>= 0.53.0')
+    summary(summary_dirs, section: 'Directories')
+    summary(summary_build, section: 'Build Configuration')
+    summary(summary_options, section: 'Build Options')
+  endif
 endif


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