meson: Include CFLAGS/c_args in summary and pg_config output
authorAndres Freund <[email protected]>
Tue, 27 Sep 2022 02:36:24 +0000 (19:36 -0700)
committerAndres Freund <[email protected]>
Tue, 27 Sep 2022 02:36:24 +0000 (19:36 -0700)
Previously arguments passed in via CFLAGS/-Dc_args were neither displayed in
meson's summary, nor in pg_config's output.

Reported-by: "[email protected]" <[email protected]>
Discussion: https://postgr.es/m/OS3PR01MB62751847BC9CD2DB7B29AC129E529@OS3PR01MB6275.jpnprd01.prod.outlook.com

meson.build
src/include/meson.build

index 6ffae59ba03134481e9e35210917033ae97df9d1..474a42a2559e630496ceced11baea1f71b637226 100644 (file)
@@ -2966,6 +2966,9 @@ if meson.version().version_compare('>=0.57')
       'CPP FLAGS': ' '.join(cppflags),
       'C FLAGS, functional': ' '.join(cflags),
       'C FLAGS, warnings': ' '.join(cflags_warn),
+      'C FLAGS, modules': ' '.join(cflags_mod),
+      'C FLAGS, user specified': ' '.join(get_option('c_args')),
+      'LD FLAGS': ' '.join(ldflags + get_option('c_link_args')),
     },
     section: 'Compiler Flags',
   )
@@ -2982,6 +2985,7 @@ if meson.version().version_compare('>=0.57')
       {
         'C++ FLAGS, functional': ' '.join(cxxflags),
         'C++ FLAGS, warnings': ' '.join(cxxflags_warn),
+        'C++ FLAGS, user specified': ' '.join(get_option('cpp_args')),
       },
       section: 'Compiler Flags',
     )
index e5390df05848774bdc28a3d3cca3c56bdbb376b9..f2f7d03ff27688d577180cb941d4d23686bf4547 100644 (file)
@@ -42,11 +42,15 @@ config_paths_data.set_quoted('MANDIR', dir_prefix / dir_man)
 
 var_cc = ' '.join(cc.cmd_array())
 var_cpp = ' '.join(cc.cmd_array() + ['-E'])
-var_cflags = ' '.join(cflags + cflags_warn)
-var_cxxflags = ' '.join(cxxflags + cxxflags_warn)
+var_cflags = ' '.join(cflags + cflags_warn + get_option('c_args'))
+if llvm.found()
+  var_cxxflags = ' '.join(cxxflags + cxxflags_warn + get_option('cpp_args'))
+else
+  var_cxxflags = ''
+endif
 var_cppflags = ' '.join(cppflags)
 var_cflags_sl = '-fPIC' #FIXME
-var_ldflags = ' '.join(ldflags)
+var_ldflags = ' '.join(ldflags + get_option('c_link_args'))
 var_ldflags_sl = ''.join(ldflags_sl)
 var_ldflags_ex = '' # FIXME
 # FIXME - some extensions might directly use symbols from one of libs. If