diff --git a/meson.build b/meson.build index a6f455cf..316a3477 100644 --- a/meson.build +++ b/meson.build @@ -97,7 +97,13 @@ endif # Some dependencies are required only in maintainer mode and/or # if documentation shall be built. -mm_common_get = find_program('mm-common-get', required: maintainer_mode) +mm_common_get = find_program('mm-common-get', required: false) + +if maintainer_mode and not mm_common_get.found() + error('Maintainer mode requires the \'mm-common-get\' command.\n' + + 'Use \'-Dmaintainer-mode=false\' or install the \'mm-common\' package, version 1.0.0 or higher') +endif + perl = find_program('perl', required: build_documentation) doxygen = find_program('doxygen', required: build_documentation) dot = find_program('dot', required: build_documentation) # Used by Doxygen @@ -145,7 +151,7 @@ add_project_arguments(warning_flags, language: 'cpp') # MSVC: Ignore warnings that aren't really harmful, but make those # that should not be overlooked stand out. if is_msvc - foreach wd : ['/FImsvc_recommended_pragmas.h', '/wd4267', '/wd4530'] + foreach wd : ['/FImsvc_recommended_pragmas.h', '/wd4267', '/wd4530', '/utf-8'] disabled_warning = cpp_compiler.get_supported_arguments(wd) add_project_arguments(disabled_warning, language: 'cpp') endforeach diff --git a/sigc++/meson.build b/sigc++/meson.build index 8e921869..3ab7c695 100644 --- a/sigc++/meson.build +++ b/sigc++/meson.build @@ -68,11 +68,19 @@ install_headers(adaptors_h_files, subdir: sigcxx_pcname / 'sigc++' / 'adaptors') install_headers(functors_h_files, subdir: sigcxx_pcname / 'sigc++' / 'functors') install_headers(tuple_utils_h_files, subdir: sigcxx_pcname / 'sigc++' / 'tuple-utils') +extra_sigc_cppflags = [] + +# Make sure we are exporting the symbols from the DLL +if is_msvc + extra_sigc_cppflags += ['-DSIGC_BUILD', '-D_WINDLL'] +endif + extra_include_dirs = ['..'] sigcxx_library = library(sigcxx_pcname, source_cc_files, version: sigcxx_libversion, include_directories: extra_include_dirs, + cpp_args: extra_sigc_cppflags, dependencies: sigcxx_build_dep, install: true, )