[Github-comments] [geany/geany] WIP: Meson build system (#2761)

Eli Schwartz notifications at xxxxx
Mon Sep 13 05:21:45 UTC 2021


@eli-schwartz commented on this pull request.



> +def_cflags += '-DGDK_DISABLE_DEPRECATION_WARNINGS'
+def_cflags += '-DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_32'
+def_cflags += '-DGEANY_PREFIX="@0@"'.format(get_option('prefix'))
+foreach d : [ 'includedir', 'libdir', 'libexecdir', 'datadir', 'localedir' ]
+  def_cflags += '-DGEANY_ at 0@="@1@"'.format(d.underscorify().to_upper(), join_paths(prefix, get_option(d)))
+endforeach
+def_cflags += '-DGEANY_DOCDIR="@0@"'.format(join_paths(prefix, get_option('datadir'), 'doc'))
+
+# CFLAGS for everything else, i.e. most of Geany
+geany_cflags = def_cflags
+have_gcc4_visibility = cc.has_argument('-fvisibility=hidden')
+geany_cflags += '-DGEANY_PRIVATE'
+if target_machine.system() == 'windows'
+  geany_cflags += '-DGEANY_EXPORT_SYMBOL="__declspec(dllexport)"'
+elif have_gcc4_visibility
+  geany_cflags += '-fvisibility=hidden'

Use the meson kwarg `gnu_symbol_visibility: 'hidden'` on your build targets, and let the declspec define fill in the support gap for Windows (I think everywhere else should support it, really). 

> +    'scintilla/lexers/LexPerl.cxx',
+    'scintilla/lexers/LexPowerShell.cxx',
+    'scintilla/lexers/LexProps.cxx',
+    'scintilla/lexers/LexPython.cxx',
+    'scintilla/lexers/LexPO.cxx',
+    'scintilla/lexers/LexR.cxx',
+    'scintilla/lexers/LexRuby.cxx',
+    'scintilla/lexers/LexRust.cxx',
+    'scintilla/lexers/LexSmalltalk.cxx',
+    'scintilla/lexers/LexSQL.cxx',
+    'scintilla/lexers/LexTCL.cxx',
+    'scintilla/lexers/LexTxt2tags.cxx',
+    'scintilla/lexers/LexVHDL.cxx',
+    'scintilla/lexers/LexVerilog.cxx',
+    'scintilla/lexers/LexYAML.cxx',
+    cpp_std: 'c++17',

This is not a valid kwarg, but it is a valid project option. You can add it to default_options in the project() declaration, or override it per target with `override_options: ['cpp_std=c++17']`

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/pull/2761#pullrequestreview-752319216
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.geany.org/pipermail/github-comments/attachments/20210912/3af41e33/attachment.htm>


More information about the Github-comments mailing list