pineapple/externals/vcpkg/ports/gettext/0002-Fix-uwp-build.patch
2022-07-23 03:01:36 +02:00

80 lines
2.3 KiB
Diff
Executable file

diff --git "a/gettext-runtime/intl/langprefs.c" "b/gettext-runtime/intl/langprefs.c"
index aeb1c4e9..2ac531be 100644
--- "a/gettext-runtime/intl/langprefs.c"
+++ "b/gettext-runtime/intl/langprefs.c"
@@ -33,7 +33,13 @@ extern void _nl_locale_name_canonicalize (char *name);
#endif
#if defined _WIN32
-# define WIN32_NATIVE
+# if !defined(WINAPI_FAMILY)
+# define WIN32_NATIVE
+# else
+# if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM)
+# define WIN32_NATIVE
+# endif
+# endif
#endif
#ifdef WIN32_NATIVE
diff --git "a/gettext-runtime/intl/localcharset.c" "b/gettext-runtime/intl/localcharset.c"
index 670b8e6c..035a96bd 100644
--- "a/gettext-runtime/intl/localcharset.c"
+++ "b/gettext-runtime/intl/localcharset.c"
@@ -36,6 +36,16 @@
# include <locale.h>
#endif
+#if defined _WIN32
+# if !defined(WINAPI_FAMILY)
+# define HAVE_ACP
+# else
+# if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM)
+# define HAVE_ACP
+# endif
+# endif
+#endif
+
#if defined __EMX__
/* Assume EMX program runs on OS/2, even if compiled under DOS. */
# ifndef OS2
@@ -830,7 +830,7 @@ STATIC
const char *
locale_charset (void)
{
- const char *codeset;
+ const char *codeset = NULL;
/* This function must be multithread-safe. To achieve this without using
thread-local storage, we use a simple strcpy or memcpy to fill this static
@@ -912,7 +912,7 @@ locale_charset (void)
/* The canonical name cannot be determined. */
codeset = "";
-# elif defined WINDOWS_NATIVE
+# elif defined WINDOWS_NATIVE && defined HAVE_ACP
char buf[2 + 10 + 1];
static char resultbuf[2 + 10 + 1];
diff --git "a/gettext-runtime/intl/localename.c" "b/gettext-runtime/intl/localename.c"
index 108dd6f1..ace3aa88 100644
--- "a/gettext-runtime/intl/localename.c"
+++ "b/gettext-runtime/intl/localename.c"
@@ -75,10 +75,16 @@
#endif
#if defined _WIN32 && !defined __CYGWIN__
-# define WINDOWS_NATIVE
+# if !defined(WINAPI_FAMILY)
+# define WINDOWS_NATIVE
+# else
+# if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM)
+# define WINDOWS_NATIVE
+# endif
+# endif
# if !defined IN_LIBINTL
# include "glthread/lock.h"
# endif
#endif
#if defined WINDOWS_NATIVE || defined __CYGWIN__ /* Native Windows or Cygwin */