From d13d2b0e93de0c48c6dfb31720e8e3641f07da9b Mon Sep 17 00:00:00 2001 From: Patrick Date: Thu, 15 Jul 2021 21:54:16 -0500 Subject: [PATCH] Build enchant win8 provider with mingw --- meson.build | 11 +++++++++-- src/libenchant_win8/meson.build | 7 +++++++ src/libenchant_win8/win8_provider.cpp | 14 +++----------- src/meson.build | 4 ++++ 4 files changed, 23 insertions(+), 13 deletions(-) create mode 100644 src/libenchant_win8/meson.build diff --git a/meson.build b/meson.build index fe5f245d..6c3b5cdc 100644 --- a/meson.build +++ b/meson.build @@ -85,11 +85,18 @@ configure_file(output: 'config.h', configuration: config_h) config_h_include = include_directories('.') if host_machine.system() == 'windows' + add_languages('cpp') + add_project_arguments( '-DWIN32', - '-DNTDDI_VERSION=NTDDI_WIN7', - '-D_WIN32_WINNT=_WIN32_WINNT_WIN7', + '-DNTDDI_VERSION=NTDDI_WIN8', + '-D_WIN32_WINNT=_WIN32_WINNT_WIN8', language: 'c') + add_project_arguments( + '-DWIN32', + '-DNTDDI_VERSION=NTDDI_WIN8', + '-D_WIN32_WINNT=_WIN32_WINNT_WIN8', + language: 'cpp') endif diff --git a/src/libenchant_win8/meson.build b/src/libenchant_win8/meson.build new file mode 100644 index 00000000..156c9411 --- /dev/null +++ b/src/libenchant_win8/meson.build @@ -0,0 +1,7 @@ +shared_module('enchant_win8', + sources: 'win8_provider.cpp', + dependencies: [libgio_dep, dependency('enchant-2')], + include_directories: config_h_include, + install: true, + install_dir: get_option('libdir') / 'enchant-2', +) diff --git a/src/libenchant_win8/win8_provider.cpp b/src/libenchant_win8/win8_provider.cpp index 73f16610..f3f12de4 100644 --- a/src/libenchant_win8/win8_provider.cpp +++ b/src/libenchant_win8/win8_provider.cpp @@ -22,14 +22,13 @@ #include "config.h" -#include +#include + +#include #include -#include "typedef.h" // for ssize_t #include -ENCHANT_PLUGIN_DECLARE ("win8") - /* --------- Utils ----------*/ static char * @@ -232,12 +231,6 @@ win8_provider_list_dicts (EnchantProvider *provider, size_t *out_n_dicts) return enumstring_to_chararray (dicts, out_n_dicts, TRUE); } -static void -win8_provider_free_string_list (EnchantProvider *provider, char **str_list) -{ - g_strfreev (str_list); -} - static void win8_provider_dispose (EnchantProvider *provider) { @@ -283,7 +276,6 @@ init_enchant_provider (void) provider->identify = win8_provider_identify; provider->describe = win8_provider_describe; provider->list_dicts = win8_provider_list_dicts; - provider->free_string_list = win8_provider_free_string_list; provider->user_data = factory; diff --git a/src/meson.build b/src/meson.build index 23453ec1..677eba77 100644 --- a/src/meson.build +++ b/src/meson.build @@ -2,6 +2,10 @@ subdir('common') if get_option('gtk-frontend') subdir('fe-gtk') + + if host_machine.system() == 'windows' + subdir('libenchant_win8') + endif endif if get_option('text-frontend')