mirror of https://git.wownero.com/dsc/mxe.git
add cygwin native plugin
This commit is contained in:
parent
ae3ebf05e6
commit
ff7c9adc26
|
@ -0,0 +1,19 @@
|
|||
Cygwin Platform Specific Overrides
|
||||
----------------------------------
|
||||
|
||||
#### [cygwinports](https://github.com/cygwinports)
|
||||
|
||||
Patches (e.g. gettext) can be fetched with:
|
||||
|
||||
```sh
|
||||
wget -O- -q https://github.com/cygwinports/gettext | \
|
||||
grep patch | \
|
||||
sed -n 's,.*href=.*/blob/master/\([^"]*.patch\).*,\1,p' | \
|
||||
xargs -I % wget https://raw.githubusercontent.com/cygwinports/gettext/master/% -O gettext-%
|
||||
```
|
||||
|
||||
and tidy up patch level with (requires GNU Sed for `-i` option):
|
||||
|
||||
```sh
|
||||
sed -i 's,src/gettext-[0-9.]*/,src/,g' *.patch
|
||||
```
|
|
@ -0,0 +1,54 @@
|
|||
--- origsrc/gettext-tools/misc/autopoint.in 2010-06-06 08:49:57.000000000 -0400
|
||||
+++ src/gettext-tools/misc/autopoint.in 2011-10-16 00:57:42.789133600 -0400
|
||||
@@ -161,9 +161,9 @@ Options:
|
||||
--version print version information and exit
|
||||
-f, --force force overwriting of files that already exist
|
||||
-n, --dry-run print modifications but don't perform them"
|
||||
-# echo "\
|
||||
-# -V version copy the infrastructure of the specified gettext version
|
||||
-# (dangerous)"
|
||||
+ echo "\
|
||||
+ -V version copy the infrastructure of the specified gettext version
|
||||
+ (dangerous)"
|
||||
echo "
|
||||
Report bugs to <bug-gnu-gettext@gnu.org>."
|
||||
}
|
||||
@@ -210,17 +210,17 @@ func_fatal_error ()
|
||||
force=yes ;;
|
||||
--help | --hel | --he | --h )
|
||||
func_usage; exit 0 ;;
|
||||
-# -V ) # Some people put a space between -V and the version number.
|
||||
-# shift
|
||||
-# if test $# = 0; then
|
||||
-# func_usage 1>&2
|
||||
-# exit 1
|
||||
-# fi
|
||||
-# ver=$1;
|
||||
-# shift ;;
|
||||
-# -V*) # Some people omit the space between -V and the version number.
|
||||
-# ver=`echo "X$1" | sed -e 's/^X-V//'`
|
||||
-# shift ;;
|
||||
+ -V ) # Some people put a space between -V and the version number.
|
||||
+ shift
|
||||
+ if test $# = 0; then
|
||||
+ func_usage 1>&2
|
||||
+ exit 1
|
||||
+ fi
|
||||
+ ver=$1;
|
||||
+ shift ;;
|
||||
+ -V*) # Some people omit the space between -V and the version number.
|
||||
+ ver=`echo "X$1" | sed -e 's/^X-V//'`
|
||||
+ shift ;;
|
||||
--version | --versio | --versi | --vers | --ver | --ve | --v )
|
||||
func_version
|
||||
exit 0 ;;
|
||||
@@ -276,7 +276,7 @@ fi
|
||||
if test -n "$xver"; then
|
||||
if test -n "$ver"; then
|
||||
if test "X$ver" != "X$xver"; then
|
||||
- func_fatal_error "Version mismatch: specified -V $ver but the package uses gettext version $xver"
|
||||
+ echo "autopoint: warning: Version mismatch: specified -V $ver but the package uses gettext version $xver. Forcibly upgrading to $ver" 1>&2
|
||||
fi
|
||||
else
|
||||
ver="$xver"
|
||||
|
|
@ -0,0 +1,168 @@
|
|||
--- origsrc/gettext-runtime/gnulib-lib/localename.c 2014-10-16 01:00:08.000000000 -0500
|
||||
+++ src/gettext-runtime/gnulib-lib/localename.c 2014-11-17 23:22:47.747353600 -0600
|
||||
@@ -60,7 +60,7 @@
|
||||
# endif
|
||||
#endif
|
||||
|
||||
-#if defined WINDOWS_NATIVE || defined __CYGWIN__ /* Native Windows or Cygwin */
|
||||
+#if defined WINDOWS_NATIVE /* Native Windows */
|
||||
# define WIN32_LEAN_AND_MEAN
|
||||
# include <windows.h>
|
||||
# include <winnls.h>
|
||||
@@ -1412,7 +1412,7 @@ gl_locale_name_canonicalize (char *name)
|
||||
#endif
|
||||
|
||||
|
||||
-#if defined WINDOWS_NATIVE || defined __CYGWIN__ /* Native Windows or Cygwin */
|
||||
+#if defined WINDOWS_NATIVE /* Native Windows */
|
||||
|
||||
/* Canonicalize a Windows native locale name to a Unix locale name.
|
||||
NAME is a sufficiently large buffer.
|
||||
@@ -2825,11 +2825,6 @@ gl_locale_name_environ (int category, co
|
||||
Ignore invalid LANG value set by the Terminal application. */
|
||||
if (strcmp (retval, "UTF-8") != 0)
|
||||
#endif
|
||||
-#if defined __CYGWIN__
|
||||
- /* Cygwin.
|
||||
- Ignore dummy LANG value set by ~/.profile. */
|
||||
- if (strcmp (retval, "C.UTF-8") != 0)
|
||||
-#endif
|
||||
return retval;
|
||||
}
|
||||
|
||||
@@ -2867,7 +2862,7 @@ gl_locale_name_default (void)
|
||||
"C.UTF-8" locale, which operates in the same way as the "C" locale.
|
||||
*/
|
||||
|
||||
-#if !(HAVE_CFLOCALECOPYCURRENT || HAVE_CFPREFERENCESCOPYAPPVALUE || defined WINDOWS_NATIVE || defined __CYGWIN__)
|
||||
+#if !(HAVE_CFLOCALECOPYCURRENT || HAVE_CFPREFERENCESCOPYAPPVALUE || defined WINDOWS_NATIVE)
|
||||
|
||||
/* The system does not have a way of setting the locale, other than the
|
||||
POSIX specified environment variables. We use C as default locale. */
|
||||
@@ -2922,7 +2917,7 @@ gl_locale_name_default (void)
|
||||
|
||||
# endif
|
||||
|
||||
-# if defined WINDOWS_NATIVE || defined __CYGWIN__ /* Native Windows or Cygwin */
|
||||
+# if defined WINDOWS_NATIVE /* Native Windows */
|
||||
{
|
||||
LCID lcid;
|
||||
|
||||
--- origsrc/gettext-runtime/intl/localename.c 2014-09-30 21:35:20.000000000 -0500
|
||||
+++ src/gettext-runtime/intl/localename.c 2014-11-17 23:22:47.755854700 -0600
|
||||
@@ -60,7 +60,7 @@
|
||||
# endif
|
||||
#endif
|
||||
|
||||
-#if defined WINDOWS_NATIVE || defined __CYGWIN__ /* Native Windows or Cygwin */
|
||||
+#if defined WINDOWS_NATIVE_ /* Native Windows */
|
||||
# define WIN32_LEAN_AND_MEAN
|
||||
# include <windows.h>
|
||||
# include <winnls.h>
|
||||
@@ -1412,7 +1412,7 @@ gl_locale_name_canonicalize (char *name)
|
||||
#endif
|
||||
|
||||
|
||||
-#if defined WINDOWS_NATIVE || defined __CYGWIN__ /* Native Windows or Cygwin */
|
||||
+#if defined WINDOWS_NATIVE /* Native Windows */
|
||||
|
||||
/* Canonicalize a Windows native locale name to a Unix locale name.
|
||||
NAME is a sufficiently large buffer.
|
||||
@@ -2770,7 +2770,7 @@ gl_locale_name_thread (int category, con
|
||||
However it does not specify the exact format. Neither do SUSV2 and
|
||||
ISO C 99. So we can use this feature only on selected systems (e.g.
|
||||
those using GNU C Library). */
|
||||
-#if defined _LIBC || ((defined __GLIBC__ && __GLIBC__ >= 2) && !defined __UCLIBC__)
|
||||
+#if defined _LIBC || ((defined __GLIBC__ && __GLIBC__ >= 2) && !defined __UCLIBC__) || defined(__CYGWIN__)
|
||||
# define HAVE_LOCALE_NULL
|
||||
#endif
|
||||
|
||||
@@ -2825,11 +2825,6 @@ gl_locale_name_environ (int category, co
|
||||
Ignore invalid LANG value set by the Terminal application. */
|
||||
if (strcmp (retval, "UTF-8") != 0)
|
||||
#endif
|
||||
-#if defined __CYGWIN__
|
||||
- /* Cygwin.
|
||||
- Ignore dummy LANG value set by ~/.profile. */
|
||||
- if (strcmp (retval, "C.UTF-8") != 0)
|
||||
-#endif
|
||||
return retval;
|
||||
}
|
||||
|
||||
@@ -2867,7 +2862,7 @@ gl_locale_name_default (void)
|
||||
"C.UTF-8" locale, which operates in the same way as the "C" locale.
|
||||
*/
|
||||
|
||||
-#if !(HAVE_CFLOCALECOPYCURRENT || HAVE_CFPREFERENCESCOPYAPPVALUE || defined WINDOWS_NATIVE || defined __CYGWIN__)
|
||||
+#if !(HAVE_CFLOCALECOPYCURRENT || HAVE_CFPREFERENCESCOPYAPPVALUE || defined WINDOWS_NATIVE)
|
||||
|
||||
/* The system does not have a way of setting the locale, other than the
|
||||
POSIX specified environment variables. We use C as default locale. */
|
||||
@@ -2922,7 +2917,7 @@ gl_locale_name_default (void)
|
||||
|
||||
# endif
|
||||
|
||||
-# if defined WINDOWS_NATIVE || defined __CYGWIN__ /* Native Windows or Cygwin */
|
||||
+# if defined WINDOWS_NATIVE /* Native Windows */
|
||||
{
|
||||
LCID lcid;
|
||||
|
||||
--- origsrc/gettext-tools/gnulib-lib/localename.c 2014-10-16 01:00:35.000000000 -0500
|
||||
+++ src/gettext-tools/gnulib-lib/localename.c 2014-11-17 23:22:47.763355600 -0600
|
||||
@@ -60,7 +60,7 @@
|
||||
# endif
|
||||
#endif
|
||||
|
||||
-#if defined WINDOWS_NATIVE || defined __CYGWIN__ /* Native Windows or Cygwin */
|
||||
+#if defined WINDOWS_NATIVE_ /* Native Windows */
|
||||
# define WIN32_LEAN_AND_MEAN
|
||||
# include <windows.h>
|
||||
# include <winnls.h>
|
||||
@@ -1412,7 +1412,7 @@ gl_locale_name_canonicalize (char *name)
|
||||
#endif
|
||||
|
||||
|
||||
-#if defined WINDOWS_NATIVE || defined __CYGWIN__ /* Native Windows or Cygwin */
|
||||
+#if defined WINDOWS_NATIVE /* Native Windows */
|
||||
|
||||
/* Canonicalize a Windows native locale name to a Unix locale name.
|
||||
NAME is a sufficiently large buffer.
|
||||
@@ -2770,7 +2770,7 @@ gl_locale_name_thread (int category, con
|
||||
However it does not specify the exact format. Neither do SUSV2 and
|
||||
ISO C 99. So we can use this feature only on selected systems (e.g.
|
||||
those using GNU C Library). */
|
||||
-#if defined _LIBC || ((defined __GLIBC__ && __GLIBC__ >= 2) && !defined __UCLIBC__)
|
||||
+#if defined _LIBC || ((defined __GLIBC__ && __GLIBC__ >= 2) && !defined __UCLIBC__) || defined(__CYGWIN__)
|
||||
# define HAVE_LOCALE_NULL
|
||||
#endif
|
||||
|
||||
@@ -2825,11 +2825,6 @@ gl_locale_name_environ (int category, co
|
||||
Ignore invalid LANG value set by the Terminal application. */
|
||||
if (strcmp (retval, "UTF-8") != 0)
|
||||
#endif
|
||||
-#if defined __CYGWIN__
|
||||
- /* Cygwin.
|
||||
- Ignore dummy LANG value set by ~/.profile. */
|
||||
- if (strcmp (retval, "C.UTF-8") != 0)
|
||||
-#endif
|
||||
return retval;
|
||||
}
|
||||
|
||||
@@ -2867,7 +2862,7 @@ gl_locale_name_default (void)
|
||||
"C.UTF-8" locale, which operates in the same way as the "C" locale.
|
||||
*/
|
||||
|
||||
-#if !(HAVE_CFLOCALECOPYCURRENT || HAVE_CFPREFERENCESCOPYAPPVALUE || defined WINDOWS_NATIVE || defined __CYGWIN__)
|
||||
+#if !(HAVE_CFLOCALECOPYCURRENT || HAVE_CFPREFERENCESCOPYAPPVALUE || defined WINDOWS_NATIVE)
|
||||
|
||||
/* The system does not have a way of setting the locale, other than the
|
||||
POSIX specified environment variables. We use C as default locale. */
|
||||
@@ -2922,7 +2917,7 @@ gl_locale_name_default (void)
|
||||
|
||||
# endif
|
||||
|
||||
-# if defined WINDOWS_NATIVE || defined __CYGWIN__ /* Native Windows or Cygwin */
|
||||
+# if defined WINDOWS_NATIVE /* Native Windows */
|
||||
{
|
||||
LCID lcid;
|
||||
|
|
@ -0,0 +1,89 @@
|
|||
--- origsrc/gettext-tools/tests/format-c-3-prg.c 2013-05-31 00:01:54.000000000 -0500
|
||||
+++ src/gettext-tools/tests/format-c-3-prg.c 2014-11-17 23:26:21.975557100 -0600
|
||||
@@ -34,7 +34,7 @@
|
||||
/* Disable the override of setlocale that libgnuintl.h activates on MacOS X
|
||||
and Windows. This test relies on the fake setlocale function in
|
||||
setlocale.c. */
|
||||
-#undef setlocale
|
||||
+/* #undef setlocale */
|
||||
|
||||
#define _(string) gettext (string)
|
||||
|
||||
--- origsrc/gettext-tools/tests/format-c-4-prg.c 2013-05-31 00:01:54.000000000 -0500
|
||||
+++ src/gettext-tools/tests/format-c-4-prg.c 2014-11-17 23:26:21.979557600 -0600
|
||||
@@ -34,7 +34,7 @@
|
||||
/* Disable the override of setlocale that libgnuintl.h activates on MacOS X
|
||||
and Windows. This test relies on the fake setlocale function in
|
||||
setlocale.c. */
|
||||
-#undef setlocale
|
||||
+/* #undef setlocale */
|
||||
|
||||
#define _(string) gettext (string)
|
||||
|
||||
--- origsrc/gettext-tools/tests/plural-1 2014-04-14 20:52:11.000000000 -0500
|
||||
+++ src/gettext-tools/tests/plural-1 2014-11-17 23:26:21.983058100 -0600
|
||||
@@ -50,15 +50,15 @@ ${DIFF} plural-1-fr.po.strip plural-1-fr
|
||||
|
||||
: ${DIFF=diff}
|
||||
echo 'un morceau de gateau' > plural-1-cake.ok
|
||||
-LANGUAGE= ../cake fr 1 > plural-1-cake.tmp || Exit 1
|
||||
+LANGUAGE= ../cake fr_FR 1 > plural-1-cake.tmp || Exit 1
|
||||
LC_ALL=C tr -d '\r' < plural-1-cake.tmp > cake.out || Exit 1
|
||||
${DIFF} plural-1-cake.ok cake.out || Exit 1
|
||||
echo '2 morceaux de gateau' > plural-1-cake.ok
|
||||
-LANGUAGE= ../cake fr 2 > plural-1-cake.tmp || Exit 1
|
||||
+LANGUAGE= ../cake fr_FR 2 > plural-1-cake.tmp || Exit 1
|
||||
LC_ALL=C tr -d '\r' < plural-1-cake.tmp > cake.out || Exit 1
|
||||
${DIFF} plural-1-cake.ok cake.out || Exit 1
|
||||
echo '10 morceaux de gateau' > plural-1-cake.ok
|
||||
-LANGUAGE= ../cake fr 10 > plural-1-cake.tmp || Exit 1
|
||||
+LANGUAGE= ../cake fr_FR 10 > plural-1-cake.tmp || Exit 1
|
||||
LC_ALL=C tr -d '\r' < plural-1-cake.tmp > cake.out || Exit 1
|
||||
${DIFF} plural-1-cake.ok cake.out || Exit 1
|
||||
|
||||
--- origsrc/gettext-tools/tests/plural-1-prg.c 2013-05-31 00:01:54.000000000 -0500
|
||||
+++ src/gettext-tools/tests/plural-1-prg.c 2014-11-17 23:26:21.989058800 -0600
|
||||
@@ -30,7 +30,7 @@
|
||||
/* Disable the override of setlocale that libgnuintl.h activates on MacOS X
|
||||
and Windows. This test relies on the fake setlocale function in
|
||||
setlocale.c. */
|
||||
-#undef setlocale
|
||||
+/* #undef setlocale */
|
||||
|
||||
int
|
||||
main (int argc, char *argv[])
|
||||
--- origsrc/gettext-tools/tests/plural-2 2014-04-14 20:52:11.000000000 -0500
|
||||
+++ src/gettext-tools/tests/plural-2 2014-11-17 23:25:50.637077600 -0600
|
||||
@@ -3,8 +3,8 @@
|
||||
|
||||
: ${MSGFMT=msgfmt}
|
||||
test -d plural-2-dir || mkdir plural-2-dir
|
||||
-test -d plural-2-dir/ll || mkdir plural-2-dir/ll
|
||||
-test -d plural-2-dir/ll/LC_MESSAGES || mkdir plural-2-dir/ll/LC_MESSAGES
|
||||
+test -d plural-2-dir/es || mkdir plural-2-dir/es
|
||||
+test -d plural-2-dir/es/LC_MESSAGES || mkdir plural-2-dir/es/LC_MESSAGES
|
||||
|
||||
cat <<EOF > plural-2.data
|
||||
ja
|
||||
@@ -44,7 +44,7 @@ EOF
|
||||
while read lang; do
|
||||
read formula
|
||||
read dataok
|
||||
- cat > plural-2-ll.po <<EOF
|
||||
+ cat > plural-2-es.po <<EOF
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
@@ -65,10 +65,10 @@ msgstr[7] "7"
|
||||
msgstr[8] "8"
|
||||
msgstr[9] "9"
|
||||
EOF
|
||||
- ${MSGFMT} -o plural-2-dir/ll/LC_MESSAGES/plural.mo plural-2-ll.po || Exit 1
|
||||
+ ${MSGFMT} -o plural-2-dir/es/LC_MESSAGES/plural.mo plural-2-es.po || Exit 1
|
||||
(for i in '' 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19; do
|
||||
LANGUAGE= TEXTDOMAIN=plural TEXTDOMAINDIR=plural-2-dir \
|
||||
- $NGETTEXT --env LC_ALL=ll X Y ${i}0 ${i}1 ${i}2 ${i}3 ${i}4 ${i}5 ${i}6 ${i}7 ${i}8 ${i}9
|
||||
+ $NGETTEXT --env LC_ALL=es_ES X Y ${i}0 ${i}1 ${i}2 ${i}3 ${i}4 ${i}5 ${i}6 ${i}7 ${i}8 ${i}9
|
||||
done) > dataout
|
||||
test "$dataok" = `cat dataout` || {
|
||||
echo "Formula evaluation error for language $lang" 1>&2
|
|
@ -0,0 +1,11 @@
|
|||
--- origsrc/gettext-runtime/intl/libgnuintl.in.h 2016-06-09 17:56:00.000000000 -0500
|
||||
+++ src/gettext-runtime/intl/libgnuintl.in.h 2016-10-20 11:03:43.187813700 -0500
|
||||
@@ -435,7 +435,7 @@ extern int vswprintf (wchar_t *, size_t,
|
||||
extern char *setlocale (int, const char *);
|
||||
#endif
|
||||
|
||||
-#if @HAVE_NEWLOCALE@
|
||||
+#if @HAVE_NEWLOCALE@ && __POSIX_VISIBLE >= 200809
|
||||
|
||||
#undef newlocale
|
||||
#define newlocale libintl_newlocale
|
|
@ -0,0 +1,11 @@
|
|||
--- origsrc/gettext-runtime/m4/intl.m4 2016-03-20 02:37:53.000000000 -0500
|
||||
+++ src/gettext-runtime/m4/intl.m4 2016-10-20 11:07:16.828746100 -0500
|
||||
@@ -94,7 +94,7 @@
|
||||
HAVE_NEWLOCALE=0
|
||||
fi
|
||||
AC_SUBST([HAVE_NEWLOCALE])
|
||||
- if test "$ac_cv_func_wprintf" = yes; then
|
||||
+ if test "$ac_cv_func_fwprintf" = yes; then
|
||||
HAVE_WPRINTF=1
|
||||
else
|
||||
HAVE_WPRINTF=0
|
|
@ -0,0 +1,31 @@
|
|||
--- origsrc/gettext-tools/configure.ac 2016-06-09 17:56:00.000000000 -0500
|
||||
+++ src/gettext-tools/configure.ac 2016-10-10 02:10:37.323106300 -0500
|
||||
@@ -100,7 +100,7 @@ LT_LANG([Windows Resource])
|
||||
dnl On mingw and Cygwin, we can activate special Makefile rules which add
|
||||
dnl version information to the shared libraries and executables.
|
||||
case "$host_os" in
|
||||
- mingw* | cygwin*) special_makefile_rules=woe32 ;;
|
||||
+ mingw*) special_makefile_rules=woe32 ;;
|
||||
os2*) special_makefile_rules=os2 ;;
|
||||
*) special_makefile_rules=none ;;
|
||||
esac
|
||||
@@ -212,7 +212,7 @@ dnl must arrange to define the auxili
|
||||
dnl exported variables _also_ in the static library.
|
||||
if test "$enable_shared" = yes; then
|
||||
case "$host_os" in
|
||||
- mingw* | cygwin*) is_woe32dll=yes ;;
|
||||
+ mingw*) is_woe32dll=yes ;;
|
||||
*) is_woe32dll=no ;;
|
||||
esac
|
||||
else
|
||||
--- origsrc/m4/woe32-dll.m4 2016-03-20 02:37:53.000000000 -0500
|
||||
+++ src/m4/woe32-dll.m4 2016-10-10 02:11:04.906081600 -0500
|
||||
@@ -30,7 +30,7 @@ AC_DEFUN([gl_WOE32_DLL],
|
||||
[
|
||||
AC_REQUIRE([AC_CANONICAL_HOST])
|
||||
case "$host_os" in
|
||||
- mingw* | cygwin*)
|
||||
+ mingw*)
|
||||
AC_MSG_CHECKING([for auto-import of symbols])
|
||||
AC_CACHE_VAL([gl_cv_ld_autoimport], [
|
||||
gl_save_LDFLAGS="$LDFLAGS"
|
|
@ -0,0 +1,12 @@
|
|||
# This file is part of MXE. See LICENSE.md for licensing information.
|
||||
|
||||
PKG := gettext
|
||||
|
||||
define $(PKG)_BUILD_$(BUILD)
|
||||
# review patches to remove autoreconf step
|
||||
cd '$(SOURCE_DIR)' && autoreconf -fi
|
||||
cd '$(BUILD_DIR)' && $(SOURCE_DIR)/configure \
|
||||
$(MXE_CONFIGURE_OPTS)
|
||||
$(MAKE) -C '$(BUILD_DIR)' -j '$(JOBS)' $(MXE_DISABLE_DOCS)
|
||||
$(MAKE) -C '$(BUILD_DIR)' -j 1 install $(MXE_DISABLE_DOCS)
|
||||
endef
|
Loading…
Reference in New Issue