@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_@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