diff --git a/baselibs.conf b/baselibs.conf index d6ba0b4..ac9e342 100644 --- a/baselibs.conf +++ b/baselibs.conf @@ -1,3 +1,4 @@ gettext-runtime obsoletes "gettext- <= " provides "gettext- = " +libtextstyle0 diff --git a/gettext-0.19.8.1-jdk9.patch b/gettext-0.19.8.1-jdk9.patch deleted file mode 100644 index 3d2de7e..0000000 --- a/gettext-0.19.8.1-jdk9.patch +++ /dev/null @@ -1,88 +0,0 @@ ---- gettext-0.19.8.1/gettext-runtime/configure.ac 2017-10-03 10:21:39.140553367 +0200 -+++ gettext-0.19.8.1/gettext-runtime/configure.ac 2017-10-03 10:21:45.772553392 +0200 -@@ -35,7 +35,7 @@ - - gt_JAVA_CHOICE - --gt_JAVACOMP([1.3], [1.1]) -+gt_JAVACOMP([1.6], [1.6]) - AC_CHECK_PROG([JAR], [jar], [jar]) - if test -n "$HAVE_JAVACOMP" && test -n "$JAR" && test "$JAVA_CHOICE" != no; then - BUILDJAVA=yes ---- gettext-0.19.8.1/gettext-runtime/gnulib-m4/javacomp.m4 2017-10-03 10:21:39.152553367 +0200 -+++ gettext-0.19.8.1/gettext-runtime/gnulib-m4/javacomp.m4 2017-10-03 10:40:49.418502181 +0200 -@@ -118,6 +118,8 @@ - failcode='class conftestfail { T foo() { return null; } }' ;; - 1.5) goodcode='class conftest { T foo() { return null; } }' - failcode='class conftestfail syntax error' ;; -+ 1.6) goodcode='class conftest { T foo() { return null; } }' -+ failcode='class conftestfail syntax error' ;; - *) AC_MSG_ERROR([invalid source-version argument to gt_@&t@JAVACOMP: $source_version]) ;; - esac - case "$target_version" in ---- gettext-0.19.8.1/gettext-tools/configure.ac 2017-10-03 10:21:39.180553367 +0200 -+++ gettext-0.19.8.1/gettext-tools/configure.ac 2017-10-03 10:46:20.107244296 +0200 -@@ -44,7 +44,7 @@ - AC_SUBST([BUILDJAVAEXE]) - - gt_JAVAEXEC --gt_JAVACOMP([1.3]) -+gt_JAVACOMP([1.6], [1.6]) - AC_CHECK_PROG([JAR], [jar], [jar]) - if test -n "$HAVE_JAVACOMP" && test -n "$JAR" && test "$JAVA_CHOICE" != no; then - BUILDJAVA=yes ---- gettext-0.19.8.1/gettext-tools/examples/hello-java/configure.ac 2017-10-03 10:21:39.260553367 +0200 -+++ gettext-0.19.8.1/gettext-tools/examples/hello-java/configure.ac 2017-10-03 10:50:44.964124163 +0200 -@@ -24,7 +24,7 @@ - dnl Check whether we can execute Java programs. - gt_JAVAEXEC - dnl Check whether we can build Java programs. --gt_JAVACOMP([1.3]) -+gt_JAVACOMP([1.6], [1.6]) - AC_CHECK_PROG(JAR, jar, jar) - if test -n "$HAVE_JAVACOMP" && test -n "$JAR"; then - BUILDJAVA=yes ---- gettext-0.19.8.1/gettext-tools/examples/hello-java-awt/configure.ac 2017-10-03 10:21:39.244553367 +0200 -+++ gettext-0.19.8.1/gettext-tools/examples/hello-java-awt/configure.ac 2017-10-03 10:51:15.820124280 +0200 -@@ -24,7 +24,7 @@ - dnl Check whether we can execute Java programs. - gt_JAVAEXEC([TestAWT], [$srcdir/m4]) - dnl Check whether we can build Java programs. --gt_JAVACOMP([1.3]) -+gt_JAVACOMP([1.6], [1.6]) - AC_CHECK_PROG(JAR, jar, jar) - if test -n "$HAVE_JAVACOMP" && test -n "$JAR"; then - BUILDJAVA=yes ---- gettext-0.19.8.1/gettext-tools/examples/hello-java-qtjambi/configure.ac 2017-10-03 10:21:39.256553367 +0200 -+++ gettext-0.19.8.1/gettext-tools/examples/hello-java-qtjambi/configure.ac 2017-10-03 10:23:16.860553736 +0200 -@@ -26,7 +26,7 @@ - dnl Check whether we can execute Java programs. - gt_JAVAEXEC([Test15], [$srcdir/m4]) - dnl Check whether we can build Java programs. --gt_JAVACOMP([1.5], [1.5]) -+gt_JAVACOMP([1.6], [1.6]) - AC_CHECK_PROG(JAR, jar, jar) - if test -n "$HAVE_JAVACOMP" && test -n "$JAR"; then - BUILDJAVA=yes ---- gettext-0.19.8.1/gettext-tools/examples/hello-java-swing/configure.ac 2017-10-03 10:21:39.248553367 +0200 -+++ gettext-0.19.8.1/gettext-tools/examples/hello-java-swing/configure.ac 2017-10-03 10:51:00.308124221 +0200 -@@ -24,7 +24,7 @@ - dnl Check whether we can execute Java programs. - gt_JAVAEXEC([TestAWT], [$srcdir/m4]) - dnl Check whether we can build Java programs. --gt_JAVACOMP([1.3]) -+gt_JAVACOMP([1.6], [1.6]) - AC_CHECK_PROG(JAR, jar, jar) - if test -n "$HAVE_JAVACOMP" && test -n "$JAR"; then - BUILDJAVA=yes ---- gettext-0.19.8.1/gettext-tools/gnulib-m4/javacomp.m4 2017-10-03 10:21:39.268553367 +0200 -+++ gettext-0.19.8.1/gettext-tools/gnulib-m4/javacomp.m4 2017-10-03 10:40:23.914502085 +0200 -@@ -118,6 +118,8 @@ - failcode='class conftestfail { T foo() { return null; } }' ;; - 1.5) goodcode='class conftest { T foo() { return null; } }' - failcode='class conftestfail syntax error' ;; -+ 1.6) goodcode='class conftest { T foo() { return null; } }' -+ failcode='class conftestfail syntax error' ;; - *) AC_MSG_ERROR([invalid source-version argument to gt_@&t@JAVACOMP: $source_version]) ;; - esac - case "$target_version" in diff --git a/gettext-0.19.8.1.tar.xz b/gettext-0.19.8.1.tar.xz deleted file mode 100644 index c2b3718..0000000 --- a/gettext-0.19.8.1.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:105556dbc5c3fbbc2aa0edb46d22d055748b6f5c7cd7a8d99f8e7eb84e938be4 -size 7209808 diff --git a/gettext-0.19.8.1.tar.xz.sig b/gettext-0.19.8.1.tar.xz.sig deleted file mode 100644 index 32e400d..0000000 --- a/gettext-0.19.8.1.tar.xz.sig +++ /dev/null @@ -1,17 +0,0 @@ ------BEGIN PGP SIGNATURE----- -Version: GnuPG v1 - -iQIcBAABAgAGBQJXXBKgAAoJENYFhI7X5phxb68P/i1Dvm0HzoKsrr2NFQpFq83P -dQlIoiAzZriLzL6tBvVE8cDw+hVgaRCUlAElulniKIDDPl7BH1/Qomf1AoQlPf8P -cU9Nj0sK1dK0TNQKEfk+AGQ20nXLRhZuKMO2k/M+1KAuOr2+KnAhYfUShyQa1hvF -4oNdT0mwA3Wve9hXjEh3022heD/nRkcB3C01dDJSWxEWJBv873JTnVhQ1EpOOMt2 -AEpuzVlUOd5dTIV8bOaac8WEBnTnhPnXppbJ+LhSZD6j2DyAvlZBHAfnrWA/nH+h -DIluAFwNUf+fzYY5YIIDkzN24NRTBZEmoWC1dGpkxkcDLSo99ra9RdSumgywf0NL -7rHSsUCxgbyxtsqdNyM6t+AOjSYnmYxGdLasoDWxisFFkKdW337qWV0iY+50Fk1e -IHhwsUhfEHHtu/jE81af8v+20Qg6U68os3k8kCrZQkG9YkDTtPMwloIZNQYnaTO8 -+JzhWzs/SdK+CgDjg19FkFkjVErZcQ0JcY3E3PKR8oCUKsWYBm474Z8jUsUieiCd -2irmbu/fO/toSc739YHn2QcRjG/wdzlhhGI5quMM4KOLqdU+ahmeZ3ILnkfMXsrn -BPv6sQ0twXnYC9Ix0K/U/iSXKAkC4D95qpYikw2glZ2eBcl9aI2C+sNsz322cNjl -BmVcwAeWnGuCA9NBrTTH -=wxWU ------END PGP SIGNATURE----- diff --git a/gettext-0.20.1.tar.gz b/gettext-0.20.1.tar.gz new file mode 100644 index 0000000..0dc0556 --- /dev/null +++ b/gettext-0.20.1.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:66415634c6e8c3fa8b71362879ec7575e27da43da562c798a8a2f223e6e47f5c +size 23267473 diff --git a/gettext-0.20.1.tar.gz.sig b/gettext-0.20.1.tar.gz.sig new file mode 100644 index 0000000..5b5f6f0 --- /dev/null +++ b/gettext-0.20.1.tar.gz.sig @@ -0,0 +1,17 @@ +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v2 + +iQIcBAABCAAGBQJc2D1GAAoJEE9JSpQuRhbCb5AP/2dZEV/tACl49bDq0Vp4Btkr +UoxdTmUy+NmtgCCdZnXbH9FeilWyjtga8uRoa8n5CQ/XIZxNvI0FtVE+FCW7FkBe +Rnv3A+LzQPwzSZAzO9ZmJXUERMlgK1ic4dJA+YrWjBlvlc6T3cs2t+adZdojHsKM +YcLytVlC7Eu5xRu8KwYOWhPvREmSflcM1UvYMB5lK0mfcsn3CKjdBSPQGKXmo3B7 +ftNthdeBR3mPIj7QuJOTPF7nPBio3VR0qY2rKWzY+V9Tvif6I0p3b9R5Ygza/4gm +AxiX2r86IosnQnafRJHNV9PfEORjv+qju6DwVQMFjsBeCu0/URontbTr6pGUNPrw +bkA5TW65JdGj2kLGXfH5AYpGvcFpElt7VLoBIPabhM2HlIUmUfAnD+P3Ad7QP9Rk +6zzot9yEukeEgwPRvK0wvhVFVbKSPeBXI4KR3wj3oZnWvpUSlTlplGyDqmGcNQ9W +mRr9q1R+bFvuHj6jEJBPd7hXG+OJm/FZA+kLgscObuuBXoNQnU2+pSx7WJryI79r +bePtHd5PAMGIthTk1h1s1OHNs+ppyVnf7Kmke6zKX0RnGaHDoHbVE2HmgKFMarjW +Ytgg0Luh/WsgboOmmzhF3+RU5q1q7F6OkHEkklPUvAeYTlwBexQ2rBhgw2rT2J94 +lTlpb6S9tXf3y9CbNEEs +=rjnh +-----END PGP SIGNATURE----- diff --git a/gettext-csharp.changes b/gettext-csharp.changes index 849a45c..e14e73e 100644 --- a/gettext-csharp.changes +++ b/gettext-csharp.changes @@ -1,3 +1,28 @@ +------------------------------------------------------------------- +Mon Dec 9 11:17:04 UTC 2019 - Christian Vögl + +- Added -lm flag to CFLAGS + +------------------------------------------------------------------- +Tue Jun 11 13:08:04 UTC 2019 - Christian Vögl + +- Updated to version 0.20.1: + + msgfmt now eliminates the POT-Creation-Date header field from .mo files. + + msgmerge now has an option --for-msgfmt, that produces a PO file meant + for use by msgfmt only. This option saves processing time, in particular + by omitting fuzzy matching that is not useful in this situation. + + The .pot file in a 'po' directory is now erased by "make maintainer-clean". + + It is now possible to override xgettext options from the po/Makefile.in.in + through options in XGETTEXT_OPTIONS (declared in po/Makevars). + + The --intl option of the gettextize program (deprecated since 2010) is + no longer available. Instead of including the intl sources in your package, + we suggest making the libintl library an optional prerequisite of your + package. This will simplify the build system of your package. + + Accordingly, the Autoconf macro AM_GNU_GETTEXT_INTL_SUBDIR is gone as well. +- Rebased gettext-po-mode.diff +- Removed gettext-needlessly_init_vars.patch (now in upstream) + + ------------------------------------------------------------------- Mon May 14 19:56:58 UTC 2018 - antoine.belvire@opensuse.org diff --git a/gettext-csharp.spec b/gettext-csharp.spec index d176e51..04ef801 100644 --- a/gettext-csharp.spec +++ b/gettext-csharp.spec @@ -1,7 +1,7 @@ # # spec file for package gettext-csharp # -# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2019 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -26,26 +26,24 @@ BuildRequires: libxml2-devel BuildRequires: mono-devel BuildRequires: perl-libintl-perl BuildRequires: tcl -BuildRequires: xz Requires: mono -Url: http://www.gnu.org/software/gettext/ -Version: 0.19.8.1 +URL: http://www.gnu.org/software/gettext/ +Version: 0.20.1 Release: 0 Summary: Native Language Support (NLS) for C# License: LGPL-2.1-or-later Group: Development/Tools/Other BuildRoot: %{_tmppath}/%{name}-%{version}-build -Source: http://ftp.gnu.org/gnu/gettext/gettext-%{version}.tar.xz +Source: http://ftp.gnu.org/gnu/gettext/gettext-%{version}.tar.gz Source1: gettext-rpmlintrc Source2: suse-start-po-mode.el Source3: gettext-linkdupes.sh -Source4: http://ftp.gnu.org/gnu/gettext/gettext-%{version}.tar.xz.sig +Source4: http://ftp.gnu.org/gnu/gettext/gettext-%{version}.tar.gz.sig Source5: %name.keyring Patch: gettext-0.12.1-sigfpe.patch Patch2: gettext-0.12.1-gettextize.patch Patch4: gettext-po-mode.diff Patch5: gettext-initialize_vars.patch -Patch9: gettext-needlessly_init_vars.patch %if 0%{?fedora_version} || 0%{?centos_version} <= 600 || 0%{?scilin_version} <= 600 || 0%{?rhel_version} <= 600 %global debug_package %{nil} @@ -79,15 +77,14 @@ reliably than 'resgen'. %patch2 %patch4 %patch5 -%patch9 %build -export CFLAGS="%{optflags} -pipe -W -Wall -Dgcc_is_lint" +export CFLAGS="%{optflags} -pipe -W -Wall -Dgcc_is_lint -lm" export CXXFLAGS="%{optflags} -pipe -W -Wall -Dgcc_is_lint" # expect a couple "You should update your `aclocal.m4' by running aclocal." #autoreconf -fiv #sh autogen.sh -%configure --enable-shared --enable-csharp +%configure --enable-shared --enable-csharp make %{?_smp_mflags} GMSGFMT=../src/msgfmt V=1 %install diff --git a/gettext-dont-test-gnulib.patch b/gettext-dont-test-gnulib.patch index dd38180..0b73f79 100644 --- a/gettext-dont-test-gnulib.patch +++ b/gettext-dont-test-gnulib.patch @@ -1,29 +1,26 @@ Subject: This is not gnulib, so don't test it From: Stephan Kulow -Index: gettext-0.19.7/gettext-tools/Makefile.am -=================================================================== ---- gettext-0.19.7.orig/gettext-tools/Makefile.am -+++ gettext-0.19.7/gettext-tools/Makefile.am +--- gettext-0.20.1.orig/gettext-tools/Makefile.am 2019-06-04 13:12:49.514030196 +0200 ++++ gettext-0.20.1/gettext-tools/Makefile.am 2019-06-04 13:13:09.778072816 +0200 @@ -19,7 +19,7 @@ AUTOMAKE_OPTIONS = 1.5 gnu no-dependencies ACLOCAL_AMFLAGS = -I m4 -I ../gettext-runtime/m4 -I ../m4 -I gnulib-m4 -I libgrep/gnulib-m4 -I libgettextpo/gnulib-m4 --SUBDIRS = doc intl gnulib-lib libgrep src libgettextpo po projects styles misc man m4 tests gnulib-tests examples its -+SUBDIRS = doc intl gnulib-lib libgrep src libgettextpo po projects styles misc man m4 tests examples its +-SUBDIRS = intl gnulib-lib libgrep src libgettextpo po its projects styles emacs misc man m4 tests system-tests gnulib-tests examples doc ++SUBDIRS = intl gnulib-lib libgrep src libgettextpo po its projects styles emacs misc man m4 tests system-tests examples doc EXTRA_DIST = misc/DISCLAIM MOSTLYCLEANFILES = core *.stackdump -Index: gettext-0.19.7/gettext-tools/Makefile.in -=================================================================== ---- gettext-0.19.7.orig/gettext-tools/Makefile.in -+++ gettext-0.19.7/gettext-tools/Makefile.in -@@ -1865,7 +1865,7 @@ top_builddir = @top_builddir@ +--- gettext-0.20.1.orig/gettext-tools/Makefile.in 2019-06-04 13:12:49.514030196 +0200 ++++ gettext-0.20.1/gettext-tools/Makefile.in 2019-06-04 13:14:33.546249004 +0200 +@@ -2016,7 +2016,7 @@ top_srcdir = @top_srcdir@ AUTOMAKE_OPTIONS = 1.5 gnu no-dependencies ACLOCAL_AMFLAGS = -I m4 -I ../gettext-runtime/m4 -I ../m4 -I gnulib-m4 -I libgrep/gnulib-m4 -I libgettextpo/gnulib-m4 --SUBDIRS = doc intl gnulib-lib libgrep src libgettextpo po projects styles misc man m4 tests gnulib-tests examples its -+SUBDIRS = doc intl gnulib-lib libgrep src libgettextpo po projects styles misc man m4 tests examples its +-SUBDIRS = intl gnulib-lib libgrep src libgettextpo po its projects styles emacs misc man m4 tests system-tests gnulib-tests examples doc ++SUBDIRS = intl gnulib-lib libgrep src libgettextpo po its projects styles emacs misc man m4 tests system-tests examples doc # Allow users to use "gnulib-tool --update". + diff --git a/gettext-java.changes b/gettext-java.changes index 6d32942..da44e5c 100644 --- a/gettext-java.changes +++ b/gettext-java.changes @@ -1,3 +1,30 @@ +------------------------------------------------------------------- +Tue Jun 11 13:12:37 UTC 2019 - Christian Vögl + +- Updated to version 0.20.1 + + msgfmt now eliminates the POT-Creation-Date header field from .mo files. + + update-po target in Makefile.in.in now uses msgmerge --previous. + + msgmerge now has an option --for-msgfmt, that produces a PO file meant + for use by msgfmt only. This option saves processing time, in particular + by omitting fuzzy matching that is not useful in this situation. + + The .pot file in a 'po' directory is now erased by "make maintainer-clean". + + It is now possible to override xgettext options from the po/Makefile.in.in + through options in XGETTEXT_OPTIONS (declared in po/Makevars). + + The --intl option of the gettextize program (deprecated since 2010) is + no longer available. Instead of including the intl sources in your package, + we suggest making the libintl library an optional prerequisite of your + package. This will simplify the build system of your package. + + Accordingly, the Autoconf macro AM_GNU_GETTEXT_INTL_SUBDIR is gone as well. + + Java: + * xgettext now supports UTF-8 encoded .properties files (a new feature + of Java 9). + * The build system and tools now support Java 9, 10, and 11. On the + other hand, support for old versions of Java (Java 5 and older, + GCJ 4.2.x and older) has been dropped. +- Rebased gettext-po-mode.diff +- Removed gettext-needlessly_init_vars.patch (now in upstream) +- Removed gettext-0.19.8.1-jdk9.patch (now in upstream) + ------------------------------------------------------------------- Mon May 14 19:45:56 UTC 2018 - antoine.belvire@opensuse.org diff --git a/gettext-java.spec b/gettext-java.spec index 23b46c3..b430ca7 100644 --- a/gettext-java.spec +++ b/gettext-java.spec @@ -1,7 +1,7 @@ # # spec file for package gettext-java # -# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2019 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,34 +17,32 @@ Name: gettext-java -Version: 0.19.8.1 +Version: 0.20.1 Release: 0 Summary: Java Support for Native Language Support (NLS) License: LGPL-2.1-or-later Group: Development/Tools/Other -Url: http://www.gnu.org/software/gettext/ -Source0: http://ftp.gnu.org/gnu/gettext/gettext-%{version}.tar.xz +URL: http://www.gnu.org/software/gettext/ +Source0: http://ftp.gnu.org/gnu/gettext/gettext-%{version}.tar.gz Source1: gettext-rpmlintrc Source2: suse-start-po-mode.el Source3: gettext-linkdupes.sh -Source4: http://ftp.gnu.org/gnu/gettext/gettext-%{version}.tar.xz.sig +Source4: http://ftp.gnu.org/gnu/gettext/gettext-%{version}.tar.gz.sig Source5: %{name}.keyring Patch0: gettext-0.12.1-sigfpe.patch Patch2: gettext-0.12.1-gettextize.patch Patch4: gettext-po-mode.diff Patch5: gettext-initialize_vars.patch -Patch9: gettext-needlessly_init_vars.patch -Patch10: gettext-0.19.8.1-jdk9.patch BuildRequires: fdupes BuildRequires: gcc-c++ BuildRequires: glib2-devel BuildRequires: java-devel BuildRequires: libcroco-devel +BuildRequires: libtextstyle-devel BuildRequires: libtool BuildRequires: libxml2-devel BuildRequires: perl-libintl-perl BuildRequires: tcl -BuildRequires: xz %if 0%{?fedora_version} || 0%{?centos_version} <= 600 || 0%{?scilin_version} <= 600 || 0%{?rhel_version} <= 600 %global debug_package %{nil} @@ -61,16 +59,14 @@ java+swing. %patch2 %patch4 %patch5 -%patch9 -%patch10 -p1 %build # expect a couple "You should update your `aclocal.m4' by running aclocal." autoreconf -fiv #sh autogen.sh -export CFLAGS="%{optflags} -pipe -W -Wall -Dgcc_is_lint" +export CFLAGS="%{optflags} -pipe -W -Wall -Dgcc_is_lint -lm" export CXXFLAGS="%{optflags} -pipe -W -Wall -Dgcc_is_lint" -%configure --enable-shared --disable-native-java --enable-java +%configure --enable-shared --enable-java make GMSGFMT=../src/msgfmt %{?_smp_mflags} V=1 %install @@ -92,7 +88,7 @@ fdupes -r *|while read dupe; do fi done cd .. -find -size 0 -print0 | xargs -0 --no-run-if-empty rm +find -type f -size 0 -delete mkdir -p %{buildroot}%{_libdir}/gettext mv %{buildroot}/%{_datadir}/gettext/gettext.jar %{buildroot}%{_libdir}/gettext/ # Create scripts that will launch the tools diff --git a/gettext-needlessly_init_vars.patch b/gettext-needlessly_init_vars.patch deleted file mode 100644 index ea7e434..0000000 --- a/gettext-needlessly_init_vars.patch +++ /dev/null @@ -1,22 +0,0 @@ -Index: gettext-tools/gnulib-lib/gl_array_list.c -=================================================================== ---- gettext-tools/gnulib-lib/gl_array_list.c.orig 2010-12-20 18:47:23.871101502 +0100 -+++ gettext-tools/gnulib-lib/gl_array_list.c 2010-12-20 18:47:37.666063318 +0100 -@@ -454,7 +454,7 @@ gl_array_iterator (gl_list_t list) - result.count = list->count; - result.p = list->elements + 0; - result.q = list->elements + list->count; --#ifdef lint -+#if defined(lint) || defined(gcc_is_lint) - result.i = 0; - result.j = 0; - #endif -@@ -475,7 +475,7 @@ gl_array_iterator_from_to (gl_list_t lis - result.count = list->count; - result.p = list->elements + start_index; - result.q = list->elements + end_index; --#ifdef lint -+#if defined(lint) || defined(gcc_is_lint) - result.i = 0; - result.j = 0; - #endif diff --git a/gettext-po-mode.diff b/gettext-po-mode.diff index 10a32a6..a5e13ea 100644 --- a/gettext-po-mode.diff +++ b/gettext-po-mode.diff @@ -1,7 +1,7 @@ -Index: gettext-tools/misc/po-mode.el +Index: gettext-tools/emacs/po-mode.el =================================================================== ---- gettext-tools/misc/po-mode.el.orig 2010-06-06 14:49:57.000000000 +0200 -+++ gettext-tools/misc/po-mode.el 2010-12-20 18:47:11.963132483 +0100 +--- gettext-tools/emacs/po-mode.el.orig 2010-06-06 14:49:57.000000000 +0200 ++++ gettext-tools/emacs/po-mode.el 2010-12-20 18:47:11.963132483 +0100 @@ -1242,6 +1242,7 @@ all reachable through 'M-x customize', i ;; mode-line-format usually contains global-mode-string, but some ;; people customize this variable. As a last resort, append at the end. diff --git a/gettext-runtime-mini.changes b/gettext-runtime-mini.changes index 88aaeb2..4d9bf68 100644 --- a/gettext-runtime-mini.changes +++ b/gettext-runtime-mini.changes @@ -1,8 +1,102 @@ +------------------------------------------------------------------- +Wed Jan 15 08:35:10 UTC 2020 - Dominique Leuenberger + +- Add libtextstyle0 to baselibs.conf: gettext-runtime-32bit has a + dependency on it, so we also need the library built as -32bit. + +------------------------------------------------------------------- +Sat Dec 21 17:23:21 UTC 2019 - Stefan Brüns + +- Add missing Requires: libtextstyle0 in corresponding devel package, + drop gettext-runtime Requires. +- Skip creation of shared libtextstyle in -mini flavor. +- Statically link to libtextstyle in -mini flavor, fixes + broken bootstrap of gettext. + +------------------------------------------------------------------- +Tue Dec 17 10:16:04 UTC 2019 - Christian Vögl + +- Add -lm to LDFLAGS (boo#1138806) + +------------------------------------------------------------------- +Tue Nov 26 16:04:25 UTC 2019 - Christian Vögl + +- Added xz to requires (boo#1141380) +- The previous update to 0.20.1 also fixes (boo#1113719) + +------------------------------------------------------------------- +Wed Oct 30 19:05:13 UTC 2019 - Stefan Brüns + +- Remove autoreconf call (not required), and drop the no longer + required libtool build dependency. + +------------------------------------------------------------------- +Fri Aug 23 16:56:05 UTC 2019 - Jan Engelhardt + +- Heed SLPP by placing libtextstyle.so.0 in the right package. +- Drop documentation from libtextstyle0, no one will read it there. +- Drop static library. +- Remove pointless ldconfig calls for libtextstyle-devel. +- Avoid pointless sh invocation of libtextstyle0 scriptlets. +- Avoid unnecessary |xargs rm. +- Remove redundant %clean section. + ------------------------------------------------------------------- Thu Jun 20 09:56:30 UTC 2019 - Martin Liška - Disable LTO (boo#1138806). +------------------------------------------------------------------- +Tue Jun 11 12:34:24 UTC 2019 - Christian Vögl + +- Updatetd to 0.20.1 + + msgfmt now eliminates the POT-Creation-Date header field from .mo files. + + update-po target in Makefile.in.in now uses msgmerge --previous. + + msgmerge now has an option --for-msgfmt, that produces a PO file meant + for use by msgfmt only. This option saves processing time, in particular + by omitting fuzzy matching that is not useful in this situation. + + The .pot file in a 'po' directory is now erased by "make maintainer-clean". + + It is now possible to override xgettext options from the po/Makefile.in.in + through options in XGETTEXT_OPTIONS (declared in po/Makevars). + + The --intl option of the gettextize program (deprecated since 2010) is + no longer available. Instead of including the intl sources in your package, + we suggest making the libintl library an optional prerequisite of your + package. This will simplify the build system of your package. + + Accordingly, the Autoconf macro AM_GNU_GETTEXT_INTL_SUBDIR is gone as well. + + C, C++: + * xgettext now supports strings in u8"..." syntax, as specified in C11 + and C++11. + * xgettext now supports 'p'/'P' exponent markers in number tokens, as + specified in C99 and C++17. + + C++: + * xgettext now supports single-quotes in number tokens, as specified in + C++14. + + Shell: + * The programs 'gettext', 'ngettext' now support a --context argument. + * gettext.sh contains new function eval_pgettext and eval_npgettext + for producing translations of messages with context. + + Perl: + * Native support for context functions (pgettext, dpgettext, dcpgettext, + npgettext, dnpgettext, dcnpgettext). + * better detection of question mark and slash as operators (as opposed + to regular expression delimiters). + + Scheme: + * xgettext now parses the syntax for specialized byte vectors (#u8(...), + #vu8(...), etc.) correctly. + + Pascal: + * xgettext can now extract strings from .rsj files, produced by the + Free Pascal compiler version 3.0.0 or newer. + + Vala: + * xgettext now parses escape sequences in strings more accurately. + + JavaScript: + * xgettext now parses template literals correctly. +- Rebased gettext-dont-test-gnulib.patch +- Removed gettext-needlessly_init_vars.patch (now in upstream) +- Rebased gettext-po-mode.diff +- Removed msgfmt-remove-pot-creation-date.patch (now in upstream) +- Removed msgfmt-reset-msg-length-after-remove.patch (now in upstream) +- Removed parts of reproducible.patch (now in upstream) + ------------------------------------------------------------------- Sat May 25 11:53:33 UTC 2019 - Marcus Meissner diff --git a/gettext-runtime-mini.spec b/gettext-runtime-mini.spec index 34f7e7c..55e6176 100644 --- a/gettext-runtime-mini.spec +++ b/gettext-runtime-mini.spec @@ -1,7 +1,7 @@ # -# spec file for package gettext-runtime-mini +# spec file for package gettext-runtime # -# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2019 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,15 +17,14 @@ %define pacname gettext -# datadir was not changed in 0.19.8.1 patch release -%define dataversion 0.19.8 +# datadir was not changed in 0.20.1 patch release +%define dataversion 0.20 %bcond_without mini Name: gettext-runtime-mini -Version: 0.19.8.1 +Version: 0.20.1 Release: 0 BuildRequires: gcc-c++ -BuildRequires: libtool # To get an updated linkdupes.sh (in case there are new dupes), temproarily enable: #BuildRequires: fdupes %if %{without mini} @@ -34,7 +33,6 @@ BuildRequires: libcroco-devel BuildRequires: libxml2-devel BuildRequires: perl-libintl-perl BuildRequires: tcl -BuildRequires: xz # bug437293 %ifarch ppc64 Obsoletes: gettext-64bit @@ -54,29 +52,25 @@ Provides: gettext-runtime = %{version} Summary: Tools for Native Language Support (NLS) License: GPL-3.0-or-later AND LGPL-2.0-or-later Group: Development/Tools/Other -Url: http://www.gnu.org/software/gettext/ +URL: http://www.gnu.org/software/gettext/ BuildRoot: %{_tmppath}/%{name}-%{version}-build -Source0: http://ftp.gnu.org/gnu/gettext/gettext-%{version}.tar.xz +Source0: http://ftp.gnu.org/gnu/gettext/gettext-%{version}.tar.gz Source1: gettext-rpmlintrc Source2: suse-start-po-mode.el Source3: gettext-linkdupes.sh Source4: baselibs.conf -Source5: http://ftp.gnu.org/gnu/gettext/gettext-%{version}.tar.xz.sig +Source5: http://ftp.gnu.org/gnu/gettext/gettext-%{version}.tar.gz.sig Source6: %name.keyring Patch: gettext-0.12.1-sigfpe.patch Patch1: gettext-0.19.3-fix-bashisms.patch Patch2: gettext-0.12.1-gettextize.patch Patch4: gettext-po-mode.diff Patch5: gettext-initialize_vars.patch -# PATCH-FIX-OPENSUSE gettext-dont-test-gnulib.patch -- coolo@suse.de +# PATCH-FIX-OPENSUSE gettext-dont-test-gnulib.patch -- coolo@suse.de Patch6: gettext-dont-test-gnulib.patch -Patch9: gettext-needlessly_init_vars.patch -# PATCH-FIX-UPSTREAM https://savannah.gnu.org/bugs/?49654 -- bmwiedemann@opensuse.org -Patch10: msgfmt-remove-pot-creation-date.patch # PATCH-FIX-UPSTREAM boo#941629 -- pth@suse.com Patch11: boo941629-unnessary-rpath-on-standard-path.patch -# PATCH-FIX-SUSE Bug boo#1106843 -Patch12: msgfmt-reset-msg-length-after-remove.patch +# PATCH-FIX-SUSE Bug boo#1106843 Patch13: reproducible.patch %description @@ -92,6 +86,7 @@ Summary: Tools for Native Language Support (NLS) License: LGPL-2.1-or-later Group: Development/Tools/Other Requires: %{name} = %{version} +Requires: xz %if %{without mini} Requires(post): info Requires(preun): info @@ -133,6 +128,28 @@ BuildArch: noarch This subpackage contains the HTML version of the gettext documentation as well as project examples. +%if %{without mini} +%package -n libtextstyle0 +Summary: Provides textstyling for console output +License: LGPL-2.1-or-later +Group: Development/Tools/Other + +%description -n libtextstyle0 +GNU libtextstyle provides an easy way to add styling to programs that produce output to a console or terminal emulator window. +It does this in a way that allows the end user to customize the styling using the industry standard, namely Cascading Style Sheets (CSS). + + + +%package -n libtextstyle-devel +Summary: Devel package for libtextstyle +License: LGPL-2.1-or-later +Group: Development/Tools/Other +Requires: libtextstyle0 = %{version} + +%description -n libtextstyle-devel +This package provides headers and static libraries for libtextstyle +%endif + %prep %setup -q -n %{pacname}-%{version} %patch @@ -141,23 +158,25 @@ as well as project examples. %patch4 %patch5 %patch6 -p1 -%patch9 -%patch10 -p1 %patch11 -p1 -%patch12 -p0 %patch13 -p1 %build %define _lto_cflags %{nil} -# expect a couple "You should update your `aclocal.m4' by running aclocal." -autoreconf -fiv #sh autogen.sh export CFLAGS="%{optflags} -pipe -W -Wall -Dgcc_is_lint" export CXXFLAGS="$CFLAGS -Dgcc_is_lint" +export LDFLAGS="-lm" %if 0%{?qemu_user_space_build:1} OPTS="--disable-openmp" %endif -%configure --enable-shared $OPTS +%configure --disable-static $OPTS +%if %{with mini} +# Link statically to libtextstyle from libgettextlib.so +export CFLAGS="${CFLAGS} -fPIC" +export CXXFLAGS="${CXXFLAGS} -fPIC" +(cd libtextstyle; %configure --enable-static --disable-shared ${OPTS}) +%endif make %{?_smp_mflags} GMSGFMT=../src/msgfmt V=1 # use texinfo.tex supplied by the system (texinfo) # make -C gettext-tools/doc gettext.pdf @@ -165,14 +184,14 @@ make %{?_smp_mflags} GMSGFMT=../src/msgfmt V=1 %install %define my_docdir %{_defaultdocdir}/%{name} export LC_CTYPE=ISO-8859-15 -make install DESTDIR=%{buildroot} docdir=%{my_docdir} +%make_install docdir=%{my_docdir} cp -pr AUTHORS NEWS README* %{buildroot}/%{my_docdir} mkdir -p %{buildroot}/usr/share/emacs/site-lisp install -m 644 %SOURCE2 %{buildroot}/usr/share/emacs/site-lisp -install -m 644 gettext-tools/misc/po-compat.el %{buildroot}/usr/share/emacs/site-lisp -install -m 644 gettext-tools/misc/po-mode.el %{buildroot}/usr/share/emacs/site-lisp -install -m 644 gettext-tools/misc/start-po.el %{buildroot}/usr/share/emacs/site-lisp -#make -C gettext-tools/doc docdir=%{buildroot}/%{my_docdir} install-pdf +install -m 644 gettext-tools/emacs/po-compat.el %{buildroot}/usr/share/emacs/site-lisp +install -m 644 gettext-tools/emacs/po-mode.el %{buildroot}/usr/share/emacs/site-lisp +install -m 644 gettext-tools/emacs/start-po.el %{buildroot}/usr/share/emacs/site-lisp +#make -C gettext-tools/doc docdir=%%{buildroot}/%%{my_docdir} install-pdf if [ -e %{buildroot}/%{_libdir}/preloadable_libintl.so ];then chmod 755 %{buildroot}/%{_libdir}/preloadable_libintl.so fi @@ -183,7 +202,15 @@ rm -rf %{buildroot}/%_datadir/locale/en@{bold,}quot #remove unwanted stuff rm -f %{buildroot}/usr/share/doc/packages/gettext/README.{mingw,vms,woe32} rm -f %_datadir/%name/gettext.jar -#find %{buildroot} -maxdepth 2 -name '*html' | xargs rm -f +rm -f %{buildroot}/%_libdir/libtextstyle.la +%if %{with mini} + rm -f %{buildroot}/usr/include/textstyle.h + rm -rf %{buildroot}/usr/include/textstyle + rm -rf %{buildroot}/usr/share/doc/packages/gettext-runtime-mini/libtextstyle_*.html + rm -f %{buildroot}/%_libdir/libtextstyle.a + rm -f %{buildroot}/%{_infodir}/libtextstyle.info +%endif +#find %%{buildroot} -maxdepth 2 -name '*html' -delete # hardlink the dupes in the documentation: cd %{buildroot}/%{my_docdir}/examples sh %{SOURCE3} @@ -197,7 +224,7 @@ echo ".so man3/dgettext.3" > dcgettext.3 %if %{without mini} %check -# s390s fails this test, +# s390s fails this test, # Starting test_recursive_lock ...test-lock: pthread_mutex_lock.c:66: __pthread_mutex_lock: Assertion `mutex->__data.__owner == 0' failed. # These fails randomly, remove them from Makefile @@ -217,9 +244,6 @@ make check || { } %endif -%clean -rm -rf %{buildroot} - %post -p /sbin/ldconfig %postun -p /sbin/ldconfig @@ -232,6 +256,11 @@ rm -rf %{buildroot} %install_info_delete --info-dir=%{_infodir} %{_infodir}/gettext.info.gz %install_info_delete --info-dir=%{_infodir} %{_infodir}/autosprintf.info.gz +%if %{without mini} +%post -n libtextstyle0 -p /sbin/ldconfig +%postun -n libtextstyle0 -p /sbin/ldconfig +%endif + %files -f gettext-runtime.lang %defattr(-,root,root) %license COPYING @@ -292,7 +321,6 @@ rm -rf %{buildroot} %_libdir/preloadable_libintl.so %_libdir/gettext %_datadir/%pacname/config.rpath -%_datadir/%pacname/intl %_datadir/%pacname/po %_datadir/%pacname/projects %_datadir/%pacname/gettext.h @@ -300,7 +328,7 @@ rm -rf %{buildroot} %_datadir/%pacname/javaversion.class %_datadir/%pacname/styles %_datadir/%pacname/archive.dir.tar.xz -%_datadir/aclocal/* +%_datadir/aclocal %dir %{_datadir}/%{pacname}-%{dataversion} %{_datadir}/%{pacname}-%{dataversion}/its @@ -316,4 +344,22 @@ rm -rf %{buildroot} %doc %_docdir/%name/xgettext*.html %doc %_docdir/%name/recode-sr-latin.1.html +%if %{without mini} +%files -n libtextstyle0 +%defattr(-,root,root) +%_libdir/libtextstyle.so.0 +%_libdir/libtextstyle.so.0.0.0 + +%files -n libtextstyle-devel +%defattr(-,root,root) +%dir %_includedir/textstyle +%_includedir/textstyle.h +%_includedir/textstyle/stdbool.h +%_includedir/textstyle/version.h +%_includedir/textstyle/woe32dll.h +%_libdir/libtextstyle.so +%doc %_docdir/gettext-runtime%{?with_mini:-mini}/libtextstyle*.html +%doc %_infodir/libtextstyle.info.gz +%endif + %changelog diff --git a/gettext-runtime.changes b/gettext-runtime.changes index 88aaeb2..4d9bf68 100644 --- a/gettext-runtime.changes +++ b/gettext-runtime.changes @@ -1,8 +1,102 @@ +------------------------------------------------------------------- +Wed Jan 15 08:35:10 UTC 2020 - Dominique Leuenberger + +- Add libtextstyle0 to baselibs.conf: gettext-runtime-32bit has a + dependency on it, so we also need the library built as -32bit. + +------------------------------------------------------------------- +Sat Dec 21 17:23:21 UTC 2019 - Stefan Brüns + +- Add missing Requires: libtextstyle0 in corresponding devel package, + drop gettext-runtime Requires. +- Skip creation of shared libtextstyle in -mini flavor. +- Statically link to libtextstyle in -mini flavor, fixes + broken bootstrap of gettext. + +------------------------------------------------------------------- +Tue Dec 17 10:16:04 UTC 2019 - Christian Vögl + +- Add -lm to LDFLAGS (boo#1138806) + +------------------------------------------------------------------- +Tue Nov 26 16:04:25 UTC 2019 - Christian Vögl + +- Added xz to requires (boo#1141380) +- The previous update to 0.20.1 also fixes (boo#1113719) + +------------------------------------------------------------------- +Wed Oct 30 19:05:13 UTC 2019 - Stefan Brüns + +- Remove autoreconf call (not required), and drop the no longer + required libtool build dependency. + +------------------------------------------------------------------- +Fri Aug 23 16:56:05 UTC 2019 - Jan Engelhardt + +- Heed SLPP by placing libtextstyle.so.0 in the right package. +- Drop documentation from libtextstyle0, no one will read it there. +- Drop static library. +- Remove pointless ldconfig calls for libtextstyle-devel. +- Avoid pointless sh invocation of libtextstyle0 scriptlets. +- Avoid unnecessary |xargs rm. +- Remove redundant %clean section. + ------------------------------------------------------------------- Thu Jun 20 09:56:30 UTC 2019 - Martin Liška - Disable LTO (boo#1138806). +------------------------------------------------------------------- +Tue Jun 11 12:34:24 UTC 2019 - Christian Vögl + +- Updatetd to 0.20.1 + + msgfmt now eliminates the POT-Creation-Date header field from .mo files. + + update-po target in Makefile.in.in now uses msgmerge --previous. + + msgmerge now has an option --for-msgfmt, that produces a PO file meant + for use by msgfmt only. This option saves processing time, in particular + by omitting fuzzy matching that is not useful in this situation. + + The .pot file in a 'po' directory is now erased by "make maintainer-clean". + + It is now possible to override xgettext options from the po/Makefile.in.in + through options in XGETTEXT_OPTIONS (declared in po/Makevars). + + The --intl option of the gettextize program (deprecated since 2010) is + no longer available. Instead of including the intl sources in your package, + we suggest making the libintl library an optional prerequisite of your + package. This will simplify the build system of your package. + + Accordingly, the Autoconf macro AM_GNU_GETTEXT_INTL_SUBDIR is gone as well. + + C, C++: + * xgettext now supports strings in u8"..." syntax, as specified in C11 + and C++11. + * xgettext now supports 'p'/'P' exponent markers in number tokens, as + specified in C99 and C++17. + + C++: + * xgettext now supports single-quotes in number tokens, as specified in + C++14. + + Shell: + * The programs 'gettext', 'ngettext' now support a --context argument. + * gettext.sh contains new function eval_pgettext and eval_npgettext + for producing translations of messages with context. + + Perl: + * Native support for context functions (pgettext, dpgettext, dcpgettext, + npgettext, dnpgettext, dcnpgettext). + * better detection of question mark and slash as operators (as opposed + to regular expression delimiters). + + Scheme: + * xgettext now parses the syntax for specialized byte vectors (#u8(...), + #vu8(...), etc.) correctly. + + Pascal: + * xgettext can now extract strings from .rsj files, produced by the + Free Pascal compiler version 3.0.0 or newer. + + Vala: + * xgettext now parses escape sequences in strings more accurately. + + JavaScript: + * xgettext now parses template literals correctly. +- Rebased gettext-dont-test-gnulib.patch +- Removed gettext-needlessly_init_vars.patch (now in upstream) +- Rebased gettext-po-mode.diff +- Removed msgfmt-remove-pot-creation-date.patch (now in upstream) +- Removed msgfmt-reset-msg-length-after-remove.patch (now in upstream) +- Removed parts of reproducible.patch (now in upstream) + ------------------------------------------------------------------- Sat May 25 11:53:33 UTC 2019 - Marcus Meissner diff --git a/gettext-runtime.spec b/gettext-runtime.spec index adeca2a..078eaa5 100644 --- a/gettext-runtime.spec +++ b/gettext-runtime.spec @@ -1,7 +1,7 @@ # # spec file for package gettext-runtime # -# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2019 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,15 +17,14 @@ %define pacname gettext -# datadir was not changed in 0.19.8.1 patch release -%define dataversion 0.19.8 +# datadir was not changed in 0.20.1 patch release +%define dataversion 0.20 %bcond_with mini Name: gettext-runtime -Version: 0.19.8.1 +Version: 0.20.1 Release: 0 BuildRequires: gcc-c++ -BuildRequires: libtool # To get an updated linkdupes.sh (in case there are new dupes), temproarily enable: #BuildRequires: fdupes %if %{without mini} @@ -34,7 +33,6 @@ BuildRequires: libcroco-devel BuildRequires: libxml2-devel BuildRequires: perl-libintl-perl BuildRequires: tcl -BuildRequires: xz # bug437293 %ifarch ppc64 Obsoletes: gettext-64bit @@ -54,29 +52,25 @@ Provides: gettext-runtime = %{version} Summary: Tools for Native Language Support (NLS) License: GPL-3.0-or-later AND LGPL-2.0-or-later Group: Development/Tools/Other -Url: http://www.gnu.org/software/gettext/ +URL: http://www.gnu.org/software/gettext/ BuildRoot: %{_tmppath}/%{name}-%{version}-build -Source0: http://ftp.gnu.org/gnu/gettext/gettext-%{version}.tar.xz +Source0: http://ftp.gnu.org/gnu/gettext/gettext-%{version}.tar.gz Source1: gettext-rpmlintrc Source2: suse-start-po-mode.el Source3: gettext-linkdupes.sh Source4: baselibs.conf -Source5: http://ftp.gnu.org/gnu/gettext/gettext-%{version}.tar.xz.sig +Source5: http://ftp.gnu.org/gnu/gettext/gettext-%{version}.tar.gz.sig Source6: %name.keyring Patch: gettext-0.12.1-sigfpe.patch Patch1: gettext-0.19.3-fix-bashisms.patch Patch2: gettext-0.12.1-gettextize.patch Patch4: gettext-po-mode.diff Patch5: gettext-initialize_vars.patch -# PATCH-FIX-OPENSUSE gettext-dont-test-gnulib.patch -- coolo@suse.de +# PATCH-FIX-OPENSUSE gettext-dont-test-gnulib.patch -- coolo@suse.de Patch6: gettext-dont-test-gnulib.patch -Patch9: gettext-needlessly_init_vars.patch -# PATCH-FIX-UPSTREAM https://savannah.gnu.org/bugs/?49654 -- bmwiedemann@opensuse.org -Patch10: msgfmt-remove-pot-creation-date.patch # PATCH-FIX-UPSTREAM boo#941629 -- pth@suse.com Patch11: boo941629-unnessary-rpath-on-standard-path.patch -# PATCH-FIX-SUSE Bug boo#1106843 -Patch12: msgfmt-reset-msg-length-after-remove.patch +# PATCH-FIX-SUSE Bug boo#1106843 Patch13: reproducible.patch %description @@ -92,6 +86,7 @@ Summary: Tools for Native Language Support (NLS) License: LGPL-2.1-or-later Group: Development/Tools/Other Requires: %{name} = %{version} +Requires: xz %if %{without mini} Requires(post): info Requires(preun): info @@ -133,6 +128,28 @@ BuildArch: noarch This subpackage contains the HTML version of the gettext documentation as well as project examples. +%if %{without mini} +%package -n libtextstyle0 +Summary: Provides textstyling for console output +License: LGPL-2.1-or-later +Group: Development/Tools/Other + +%description -n libtextstyle0 +GNU libtextstyle provides an easy way to add styling to programs that produce output to a console or terminal emulator window. +It does this in a way that allows the end user to customize the styling using the industry standard, namely Cascading Style Sheets (CSS). + + + +%package -n libtextstyle-devel +Summary: Devel package for libtextstyle +License: LGPL-2.1-or-later +Group: Development/Tools/Other +Requires: libtextstyle0 = %{version} + +%description -n libtextstyle-devel +This package provides headers and static libraries for libtextstyle +%endif + %prep %setup -q -n %{pacname}-%{version} %patch @@ -141,23 +158,25 @@ as well as project examples. %patch4 %patch5 %patch6 -p1 -%patch9 -%patch10 -p1 %patch11 -p1 -%patch12 -p0 %patch13 -p1 %build %define _lto_cflags %{nil} -# expect a couple "You should update your `aclocal.m4' by running aclocal." -autoreconf -fiv #sh autogen.sh export CFLAGS="%{optflags} -pipe -W -Wall -Dgcc_is_lint" export CXXFLAGS="$CFLAGS -Dgcc_is_lint" +export LDFLAGS="-lm" %if 0%{?qemu_user_space_build:1} OPTS="--disable-openmp" %endif -%configure --enable-shared $OPTS +%configure --disable-static $OPTS +%if %{with mini} +# Link statically to libtextstyle from libgettextlib.so +export CFLAGS="${CFLAGS} -fPIC" +export CXXFLAGS="${CXXFLAGS} -fPIC" +(cd libtextstyle; %configure --enable-static --disable-shared ${OPTS}) +%endif make %{?_smp_mflags} GMSGFMT=../src/msgfmt V=1 # use texinfo.tex supplied by the system (texinfo) # make -C gettext-tools/doc gettext.pdf @@ -165,14 +184,14 @@ make %{?_smp_mflags} GMSGFMT=../src/msgfmt V=1 %install %define my_docdir %{_defaultdocdir}/%{name} export LC_CTYPE=ISO-8859-15 -make install DESTDIR=%{buildroot} docdir=%{my_docdir} +%make_install docdir=%{my_docdir} cp -pr AUTHORS NEWS README* %{buildroot}/%{my_docdir} mkdir -p %{buildroot}/usr/share/emacs/site-lisp install -m 644 %SOURCE2 %{buildroot}/usr/share/emacs/site-lisp -install -m 644 gettext-tools/misc/po-compat.el %{buildroot}/usr/share/emacs/site-lisp -install -m 644 gettext-tools/misc/po-mode.el %{buildroot}/usr/share/emacs/site-lisp -install -m 644 gettext-tools/misc/start-po.el %{buildroot}/usr/share/emacs/site-lisp -#make -C gettext-tools/doc docdir=%{buildroot}/%{my_docdir} install-pdf +install -m 644 gettext-tools/emacs/po-compat.el %{buildroot}/usr/share/emacs/site-lisp +install -m 644 gettext-tools/emacs/po-mode.el %{buildroot}/usr/share/emacs/site-lisp +install -m 644 gettext-tools/emacs/start-po.el %{buildroot}/usr/share/emacs/site-lisp +#make -C gettext-tools/doc docdir=%%{buildroot}/%%{my_docdir} install-pdf if [ -e %{buildroot}/%{_libdir}/preloadable_libintl.so ];then chmod 755 %{buildroot}/%{_libdir}/preloadable_libintl.so fi @@ -183,7 +202,15 @@ rm -rf %{buildroot}/%_datadir/locale/en@{bold,}quot #remove unwanted stuff rm -f %{buildroot}/usr/share/doc/packages/gettext/README.{mingw,vms,woe32} rm -f %_datadir/%name/gettext.jar -#find %{buildroot} -maxdepth 2 -name '*html' | xargs rm -f +rm -f %{buildroot}/%_libdir/libtextstyle.la +%if %{with mini} + rm -f %{buildroot}/usr/include/textstyle.h + rm -rf %{buildroot}/usr/include/textstyle + rm -rf %{buildroot}/usr/share/doc/packages/gettext-runtime-mini/libtextstyle_*.html + rm -f %{buildroot}/%_libdir/libtextstyle.a + rm -f %{buildroot}/%{_infodir}/libtextstyle.info +%endif +#find %%{buildroot} -maxdepth 2 -name '*html' -delete # hardlink the dupes in the documentation: cd %{buildroot}/%{my_docdir}/examples sh %{SOURCE3} @@ -197,7 +224,7 @@ echo ".so man3/dgettext.3" > dcgettext.3 %if %{without mini} %check -# s390s fails this test, +# s390s fails this test, # Starting test_recursive_lock ...test-lock: pthread_mutex_lock.c:66: __pthread_mutex_lock: Assertion `mutex->__data.__owner == 0' failed. # These fails randomly, remove them from Makefile @@ -217,9 +244,6 @@ make check || { } %endif -%clean -rm -rf %{buildroot} - %post -p /sbin/ldconfig %postun -p /sbin/ldconfig @@ -232,6 +256,11 @@ rm -rf %{buildroot} %install_info_delete --info-dir=%{_infodir} %{_infodir}/gettext.info.gz %install_info_delete --info-dir=%{_infodir} %{_infodir}/autosprintf.info.gz +%if %{without mini} +%post -n libtextstyle0 -p /sbin/ldconfig +%postun -n libtextstyle0 -p /sbin/ldconfig +%endif + %files -f gettext-runtime.lang %defattr(-,root,root) %license COPYING @@ -292,7 +321,6 @@ rm -rf %{buildroot} %_libdir/preloadable_libintl.so %_libdir/gettext %_datadir/%pacname/config.rpath -%_datadir/%pacname/intl %_datadir/%pacname/po %_datadir/%pacname/projects %_datadir/%pacname/gettext.h @@ -300,7 +328,7 @@ rm -rf %{buildroot} %_datadir/%pacname/javaversion.class %_datadir/%pacname/styles %_datadir/%pacname/archive.dir.tar.xz -%_datadir/aclocal/* +%_datadir/aclocal %dir %{_datadir}/%{pacname}-%{dataversion} %{_datadir}/%{pacname}-%{dataversion}/its @@ -316,4 +344,22 @@ rm -rf %{buildroot} %doc %_docdir/%name/xgettext*.html %doc %_docdir/%name/recode-sr-latin.1.html +%if %{without mini} +%files -n libtextstyle0 +%defattr(-,root,root) +%_libdir/libtextstyle.so.0 +%_libdir/libtextstyle.so.0.0.0 + +%files -n libtextstyle-devel +%defattr(-,root,root) +%dir %_includedir/textstyle +%_includedir/textstyle.h +%_includedir/textstyle/stdbool.h +%_includedir/textstyle/version.h +%_includedir/textstyle/woe32dll.h +%_libdir/libtextstyle.so +%doc %_docdir/gettext-runtime%{?with_mini:-mini}/libtextstyle*.html +%doc %_infodir/libtextstyle.info.gz +%endif + %changelog diff --git a/msgfmt-remove-pot-creation-date.patch b/msgfmt-remove-pot-creation-date.patch deleted file mode 100644 index 9c13dc2..0000000 --- a/msgfmt-remove-pot-creation-date.patch +++ /dev/null @@ -1,759 +0,0 @@ -commit d13f165b83701dffc14f7151419e0c00c00c0d1b -Author: John Darrington -Date: Thu Dec 15 21:56:44 2016 +0100 - - msgfmt: Remove POT-Creation-Date field from the header in the output. - - This helps reproducible builds. - Reported at . - * gettext-tools/src/msgl-header.h (message_list_delete_header_field): New - declaration. - * gettext-tools/src/msgl-header.c (known_fields): New variable, extracted from - msgdomain_list_set_header_field. - (message_list_delete_header_field): New function. - * gettext-tools/src/write-mo.c: Include msgl-header.h. - (msgdomain_write_mo): Delete the POT-Creation-Date field. - * gettext-tools/src/write-java.c: Include msgl-header.h. - (msgdomain_write_java): Delete the POT-Creation-Date field. - * gettext-tools/src/write-csharp.c: Include msgl-header.h. - (msgdomain_write_csharp): Delete the POT-Creation-Date field. - * gettext-tools/src/write-resources.c: Include msgl-header.h. - (msgdomain_write_csharp_resources): Delete the POT-Creation-Date field. - * gettext-tools/src/write-tcl.c: Include msgl-header.h. - (msgdomain_write_tcl): Delete the POT-Creation-Date field. - * gettext-tools/src/write-qt.c: Include msgl-header.h. - (msgdomain_write_qt): Delete the POT-Creation-Date field. - * gettext-tools/src/write-desktop.c: Include msgl-header.h. - (msgdomain_write_desktop): Delete the POT-Creation-Date field. - * gettext-tools/src/write-xml.c: Include msgl-header.h. - (msgdomain_write_xml): Delete the POT-Creation-Date field. - * gettext-tools/tests/msgfmt-19: New file, based on - gettext-tools/tests/msgfmt-18. - * gettext-tools/tests/Makefile.am (TESTS): Add it. - -diff --git a/gettext-tools/src/msgl-header.c b/gettext-tools/src/msgl-header.c -index 987c1c47e..25ae33af3 100644 ---- a/gettext-tools/src/msgl-header.c -+++ b/gettext-tools/src/msgl-header.c -@@ -30,16 +30,12 @@ - #define SIZEOF(a) (sizeof(a) / sizeof(a[0])) - - --void --msgdomain_list_set_header_field (msgdomain_list_ty *mdlp, -- const char *field, const char *value) -+/* The known fields in their usual order. */ -+static const struct - { -- /* The known fields in their usual order. */ -- static const struct -- { -- const char *name; -- size_t len; -- } -+ const char *name; -+ size_t len; -+} - known_fields[] = - { - { "Project-Id-Version:", sizeof ("Project-Id-Version:") - 1 }, -@@ -54,6 +50,11 @@ msgdomain_list_set_header_field (msgdomain_list_ty *mdlp, - { "Content-Transfer-Encoding:", - sizeof ("Content-Transfer-Encoding:") - 1 } - }; -+ -+void -+msgdomain_list_set_header_field (msgdomain_list_ty *mdlp, -+ const char *field, const char *value) -+{ - size_t field_len; - int field_index; - size_t k, i; -@@ -168,3 +169,71 @@ msgdomain_list_set_header_field (msgdomain_list_ty *mdlp, - } - } - } -+ -+ -+void -+message_list_delete_header_field (message_list_ty *mlp, -+ const char *field) -+{ -+ size_t j; -+ int field_index; -+ size_t k; -+ -+ /* Search the field in known_fields[]. */ -+ field_index = -1; -+ for (k = 0; k < SIZEOF (known_fields); k++) -+ if (strcmp (known_fields[k].name, field) == 0) -+ { -+ field_index = k; -+ break; -+ } -+ -+ size_t field_len; -+ field_len = strlen (field); -+ -+ /* Search the header entry. */ -+ for (j = 0; j < mlp->nitems; j++) -+ if (is_header (mlp->item[j]) && !mlp->item[j]->obsolete) -+ { -+ message_ty *mp = mlp->item[j]; -+ -+ /* Modify the header entry. */ -+ const char *header = mp->msgstr; -+ char *new_header = -+ XCALLOC (strlen (header) + 1, -+ char); -+ -+ /* Test whether the field already occurs in the header entry. */ -+ const char *h; -+ -+ for (h = header; *h != '\0'; ) -+ { -+ if (strncmp (h, field, field_len) == 0) -+ break; -+ h = strchr (h, '\n'); -+ if (h == NULL) -+ break; -+ h++; -+ } -+ if (h != NULL && *h != '\0') -+ { -+ /* Replace the field. */ -+ char *p = new_header; -+ memcpy (p, header, h - header); -+ p += h - header; -+ h = strchr (h, '\n'); -+ if (h != NULL) -+ { -+ h++; -+ stpcpy (p, h); -+ } -+ } -+ else -+ { -+ char *p = new_header; -+ p = stpcpy (p, header); -+ } -+ -+ mp->msgstr = new_header; -+ } -+} -diff --git a/gettext-tools/src/msgl-header.h b/gettext-tools/src/msgl-header.h -index 968515711..34726e7b0 100644 ---- a/gettext-tools/src/msgl-header.h -+++ b/gettext-tools/src/msgl-header.h -@@ -34,6 +34,9 @@ extern void - msgdomain_list_set_header_field (msgdomain_list_ty *mdlp, - const char *field, const char *value); - -+extern void -+ message_list_delete_header_field (message_list_ty *mlp, const char *field); -+ - - #ifdef __cplusplus - } -diff --git a/gettext-tools/src/write-csharp.c b/gettext-tools/src/write-csharp.c -index 5cf573a0f..30e8411cc 100644 ---- a/gettext-tools/src/write-csharp.c -+++ b/gettext-tools/src/write-csharp.c -@@ -78,6 +78,7 @@ - #include "message.h" - #include "msgfmt.h" - #include "msgl-iconv.h" -+#include "msgl-header.h" - #include "plural-exp.h" - #include "po-charset.h" - #include "xalloc.h" -@@ -645,6 +646,8 @@ msgdomain_write_csharp (message_list_ty *mlp, const char *canon_encoding, - /* Convert the messages to Unicode. */ - iconv_message_list (mlp, canon_encoding, po_charset_utf8, NULL); - -+ message_list_delete_header_field (mlp, "POT-Creation-Date:"); -+ - /* Create a temporary directory where we can put the C# file. - A simple temporary file would also be possible but would require us to - define our own variant of mkstemp(): On one hand the functions mktemp(), -diff --git a/gettext-tools/src/write-desktop.c b/gettext-tools/src/write-desktop.c -index 898ac3024..e568d47fb 100644 ---- a/gettext-tools/src/write-desktop.c -+++ b/gettext-tools/src/write-desktop.c -@@ -29,6 +29,7 @@ - #include - #include "error.h" - #include "msgl-iconv.h" -+#include "msgl-header.h" - #include "po-charset.h" - #include "read-catalog.h" - #include "read-po.h" -@@ -203,6 +204,8 @@ msgdomain_write_desktop (message_list_ty *mlp, - /* Convert the messages to Unicode. */ - iconv_message_list (mlp, canon_encoding, po_charset_utf8, NULL); - -+ message_list_delete_header_field (mlp, "POT-Creation-Date:"); -+ - /* Create a single-element operands and run the bulk operation on it. */ - operand.language = (char *) locale_name; - operand.mlp = mlp; -diff --git a/gettext-tools/src/write-java.c b/gettext-tools/src/write-java.c -index eef8c79d2..039ed94d9 100644 ---- a/gettext-tools/src/write-java.c -+++ b/gettext-tools/src/write-java.c -@@ -61,6 +61,7 @@ - #include "message.h" - #include "msgfmt.h" - #include "msgl-iconv.h" -+#include "msgl-header.h" - #include "plural-exp.h" - #include "po-charset.h" - #include "xalloc.h" -@@ -1066,6 +1067,8 @@ msgdomain_write_java (message_list_ty *mlp, const char *canon_encoding, - /* Convert the messages to Unicode. */ - iconv_message_list (mlp, canon_encoding, po_charset_utf8, NULL); - -+ message_list_delete_header_field (mlp, "POT-Creation-Date:"); -+ - if (output_source) - { - tmpdir = NULL; -diff --git a/gettext-tools/src/write-mo.c b/gettext-tools/src/write-mo.c -index b4a789494..b99dece02 100644 ---- a/gettext-tools/src/write-mo.c -+++ b/gettext-tools/src/write-mo.c -@@ -48,6 +48,9 @@ - #include "binary-io.h" - #include "fwriteerror.h" - #include "gettext.h" -+#include "read-catalog.h" -+#include "read-stringtable.h" -+#include "msgl-header.h" - - #define _(str) gettext (str) - -@@ -804,6 +807,7 @@ msgdomain_write_mo (message_list_ty *mlp, - - if (output_file != NULL) - { -+ message_list_delete_header_field (mlp, "POT-Creation-Date:"); - write_table (output_file, mlp); - - /* Make sure nothing went wrong. */ -diff --git a/gettext-tools/src/write-qt.c b/gettext-tools/src/write-qt.c -index 978bf0938..4a47d241f 100644 ---- a/gettext-tools/src/write-qt.c -+++ b/gettext-tools/src/write-qt.c -@@ -35,6 +35,7 @@ - #include "message.h" - #include "po-charset.h" - #include "msgl-iconv.h" -+#include "msgl-header.h" - #include "hash-string.h" - #include "unistr.h" - #include "xalloc.h" -@@ -742,6 +743,7 @@ strings, not in the untranslated strings\n"))); - - if (output_file != NULL) - { -+ message_list_delete_header_field (mlp, "POT-Creation-Date:"); - write_qm (output_file, mlp); - - /* Make sure nothing went wrong. */ -diff --git a/gettext-tools/src/write-resources.c b/gettext-tools/src/write-resources.c -index e5103c4b0..ec74eadcd 100644 ---- a/gettext-tools/src/write-resources.c -+++ b/gettext-tools/src/write-resources.c -@@ -38,6 +38,7 @@ - #include "message.h" - #include "msgfmt.h" - #include "msgl-iconv.h" -+#include "msgl-header.h" - #include "po-charset.h" - #include "xalloc.h" - #include "concat-filename.h" -@@ -114,6 +115,8 @@ msgdomain_write_csharp_resources (message_list_ty *mlp, - const char *domain_name, - const char *file_name) - { -+ message_list_delete_header_field (mlp, "POT-Creation-Date:"); -+ - /* If no entry for this domain don't even create the file. */ - if (mlp->nitems != 0) - { -diff --git a/gettext-tools/src/write-tcl.c b/gettext-tools/src/write-tcl.c -index 0dbe3aa88..04b62d9c8 100644 ---- a/gettext-tools/src/write-tcl.c -+++ b/gettext-tools/src/write-tcl.c -@@ -34,6 +34,7 @@ - #include "xerror.h" - #include "message.h" - #include "msgl-iconv.h" -+#include "msgl-header.h" - #include "po-charset.h" - #include "xalloc.h" - #include "xmalloca.h" -@@ -216,6 +217,7 @@ but the Tcl message catalog format doesn't support plural handling\n"))); - return 1; - } - -+ message_list_delete_header_field (mlp, "POT-Creation-Date:"); - write_msg (output_file, mlp, frobbed_locale_name); - - /* Make sure nothing went wrong. */ -diff --git a/gettext-tools/src/write-xml.c b/gettext-tools/src/write-xml.c -index 79b7b5dbc..f6cd6c003 100644 ---- a/gettext-tools/src/write-xml.c -+++ b/gettext-tools/src/write-xml.c -@@ -29,6 +29,7 @@ - #include - #include "error.h" - #include "msgl-iconv.h" -+#include "msgl-header.h" - #include "po-charset.h" - #include "read-catalog.h" - #include "read-po.h" -@@ -94,6 +95,8 @@ msgdomain_write_xml (message_list_ty *mlp, - /* Convert the messages to Unicode. */ - iconv_message_list (mlp, canon_encoding, po_charset_utf8, NULL); - -+ message_list_delete_header_field (mlp, "POT-Creation-Date:"); -+ - /* Create a single-element operands and run the bulk operation on it. */ - operand.language = (char *) locale_name; - operand.mlp = mlp; -diff --git a/gettext-tools/tests/Makefile.am b/gettext-tools/tests/Makefile.am -index 0dfb4d867..38b47b922 100644 ---- a/gettext-tools/tests/Makefile.am -+++ b/gettext-tools/tests/Makefile.am -@@ -46,7 +46,7 @@ TESTS = gettext-1 gettext-2 gettext-3 gettext-4 gettext-5 gettext-6 gettext-7 \ - msgfilter-sr-latin-1 msgfilter-quote-1 \ - msgfmt-1 msgfmt-2 msgfmt-3 msgfmt-4 msgfmt-5 msgfmt-6 msgfmt-7 \ - msgfmt-8 msgfmt-9 msgfmt-10 msgfmt-11 msgfmt-12 msgfmt-13 msgfmt-14 \ -- msgfmt-15 msgfmt-16 msgfmt-17 msgfmt-18 \ -+ msgfmt-15 msgfmt-16 msgfmt-17 msgfmt-18 msgfmt-19 \ - msgfmt-properties-1 \ - msgfmt-qt-1 msgfmt-qt-2 \ - msgfmt-desktop-1 msgfmt-desktop-2 \ -diff --git a/gettext-tools/tests/msgfmt-19 b/gettext-tools/tests/msgfmt-19 -new file mode 100755 -index 000000000..88574c817 ---- /dev/null -+++ b/gettext-tools/tests/msgfmt-19 -@@ -0,0 +1,66 @@ -+#! /bin/sh -+. "${srcdir=.}/init.sh"; path_prepend_ . ../src -+ -+# Test accelerators. -+ -+cat <<\EOF > mf-19-1.po -+# SOME DESCRIPTIVE TITLE. -+# Copyright (C) YEAR Free Software Foundation, Inc. -+# FIRST AUTHOR , YEAR. -+# -+msgid "" -+msgstr "" -+"Project-Id-Version: GNU bison\n" -+"POT-Creation-Date: 2017-04-05 19:47+0200\n" -+"PO-Revision-Date: 2017-06-07 09:07+0000\n" -+"Last-Translator: ABC DEF \n" -+"Language-Team: test \n" -+"Language: test\n" -+"MIME-Version: 1.0\n" -+"Content-Type: text/plain; charset=UTF-8\n" -+"Content-Transfer-Encoding: 8bit\n" -+ -+msgid "pen &File" -+msgstr "pen File" -+ -+msgid "how _Help" -+msgstr "how Help" -+EOF -+ -+ -+cat <<\EOF > mf-19-2.po -+# SOME DESCRIPTIVE TITLE. -+# Copyright (C) YEAR Free Software Foundation, Inc. -+# FIRST AUTHOR , YEAR. -+# -+msgid "" -+msgstr "" -+"Project-Id-Version: GNU bison\n" -+"POT-Creation-Date: 2016-03-04 18:46+0100\n" -+"PO-Revision-Date: 2017-06-07 09:07+0000\n" -+"Last-Translator: ABC DEF \n" -+"Language-Team: test \n" -+"Language: test\n" -+"MIME-Version: 1.0\n" -+"Content-Type: text/plain; charset=UTF-8\n" -+"Content-Transfer-Encoding: 8bit\n" -+ -+msgid "pen &File" -+msgstr "pen File" -+ -+msgid "how _Help" -+msgstr "how Help" -+EOF -+ -+ -+: ${MSGFMT=msgfmt} -+${MSGFMT} -o mf-19-1.mo mf-19-1.po 2>/dev/null -+test $? = 0 || { Exit 1; } -+ -+: ${MSGFMT=msgfmt} -+${MSGFMT} -o mf-19-2.mo mf-19-2.po 2>/dev/null -+test $? = 0 || { Exit 1; } -+ -+: ${DIFF=diff} -+${DIFF} mf-19-1.mo mf-19-2.mo -+test $? = 0 || { Exit 1; } -commit dea676293993e16ae50119ce1edfcc18e586c3f7 -Author: Bruno Haible -Date: Thu Dec 15 22:51:00 2016 +0100 - - Polish the last commit. - -diff --git a/gettext-tools/src/msgl-header.c b/gettext-tools/src/msgl-header.c -index 25ae33af3..219b412ab 100644 ---- a/gettext-tools/src/msgl-header.c -+++ b/gettext-tools/src/msgl-header.c -@@ -36,20 +36,20 @@ static const struct - const char *name; - size_t len; - } -- known_fields[] = -- { -- { "Project-Id-Version:", sizeof ("Project-Id-Version:") - 1 }, -- { "Report-Msgid-Bugs-To:", sizeof ("Report-Msgid-Bugs-To:") - 1 }, -- { "POT-Creation-Date:", sizeof ("POT-Creation-Date:") - 1 }, -- { "PO-Revision-Date:", sizeof ("PO-Revision-Date:") - 1 }, -- { "Last-Translator:", sizeof ("Last-Translator:") - 1 }, -- { "Language-Team:", sizeof ("Language-Team:") - 1 }, -- { "Language:", sizeof ("Language:") - 1 }, -- { "MIME-Version:", sizeof ("MIME-Version:") - 1 }, -- { "Content-Type:", sizeof ("Content-Type:") - 1 }, -- { "Content-Transfer-Encoding:", -- sizeof ("Content-Transfer-Encoding:") - 1 } -- }; -+known_fields[] = -+ { -+ { "Project-Id-Version:", sizeof ("Project-Id-Version:") - 1 }, -+ { "Report-Msgid-Bugs-To:", sizeof ("Report-Msgid-Bugs-To:") - 1 }, -+ { "POT-Creation-Date:", sizeof ("POT-Creation-Date:") - 1 }, -+ { "PO-Revision-Date:", sizeof ("PO-Revision-Date:") - 1 }, -+ { "Last-Translator:", sizeof ("Last-Translator:") - 1 }, -+ { "Language-Team:", sizeof ("Language-Team:") - 1 }, -+ { "Language:", sizeof ("Language:") - 1 }, -+ { "MIME-Version:", sizeof ("MIME-Version:") - 1 }, -+ { "Content-Type:", sizeof ("Content-Type:") - 1 }, -+ { "Content-Transfer-Encoding:", sizeof ("Content-Transfer-Encoding:") - 1 } -+ }; -+ - - void - msgdomain_list_set_header_field (msgdomain_list_ty *mdlp, -@@ -175,21 +175,8 @@ void - message_list_delete_header_field (message_list_ty *mlp, - const char *field) - { -+ size_t field_len = strlen (field); - size_t j; -- int field_index; -- size_t k; -- -- /* Search the field in known_fields[]. */ -- field_index = -1; -- for (k = 0; k < SIZEOF (known_fields); k++) -- if (strcmp (known_fields[k].name, field) == 0) -- { -- field_index = k; -- break; -- } -- -- size_t field_len; -- field_len = strlen (field); - - /* Search the header entry. */ - for (j = 0; j < mlp->nitems; j++) -@@ -199,11 +186,8 @@ message_list_delete_header_field (message_list_ty *mlp, - - /* Modify the header entry. */ - const char *header = mp->msgstr; -- char *new_header = -- XCALLOC (strlen (header) + 1, -- char); - -- /* Test whether the field already occurs in the header entry. */ -+ /* Test whether the field occurs in the header entry. */ - const char *h; - - for (h = header; *h != '\0'; ) -@@ -217,7 +201,9 @@ message_list_delete_header_field (message_list_ty *mlp, - } - if (h != NULL && *h != '\0') - { -- /* Replace the field. */ -+ /* Delete the field. */ -+ char *new_header = XCALLOC (strlen (header) + 1, char); -+ - char *p = new_header; - memcpy (p, header, h - header); - p += h - header; -@@ -225,15 +211,12 @@ message_list_delete_header_field (message_list_ty *mlp, - if (h != NULL) - { - h++; -- stpcpy (p, h); -+ strcpy (p, h); - } -+ else -+ *p = '\0'; -+ -+ mp->msgstr = new_header; - } -- else -- { -- char *p = new_header; -- p = stpcpy (p, header); -- } -- -- mp->msgstr = new_header; - } - } -diff --git a/gettext-tools/src/msgl-header.h b/gettext-tools/src/msgl-header.h -index 34726e7b0..35524a37f 100644 ---- a/gettext-tools/src/msgl-header.h -+++ b/gettext-tools/src/msgl-header.h -@@ -34,8 +34,11 @@ extern void - msgdomain_list_set_header_field (msgdomain_list_ty *mdlp, - const char *field, const char *value); - -+/* Remove the given field from the header. -+ The FIELD name ends in a colon. */ - extern void -- message_list_delete_header_field (message_list_ty *mlp, const char *field); -+ message_list_delete_header_field (message_list_ty *mlp, -+ const char *field); - - - #ifdef __cplusplus -diff --git a/gettext-tools/src/write-csharp.c b/gettext-tools/src/write-csharp.c -index 30e8411cc..161cd4f45 100644 ---- a/gettext-tools/src/write-csharp.c -+++ b/gettext-tools/src/write-csharp.c -@@ -646,8 +646,10 @@ msgdomain_write_csharp (message_list_ty *mlp, const char *canon_encoding, - /* Convert the messages to Unicode. */ - iconv_message_list (mlp, canon_encoding, po_charset_utf8, NULL); - -+ /* Support for "reproducible builds": Delete information that may vary -+ between builds in the same conditions. */ - message_list_delete_header_field (mlp, "POT-Creation-Date:"); -- -+ - /* Create a temporary directory where we can put the C# file. - A simple temporary file would also be possible but would require us to - define our own variant of mkstemp(): On one hand the functions mktemp(), -diff --git a/gettext-tools/src/write-desktop.c b/gettext-tools/src/write-desktop.c -index e568d47fb..657620dcb 100644 ---- a/gettext-tools/src/write-desktop.c -+++ b/gettext-tools/src/write-desktop.c -@@ -204,8 +204,10 @@ msgdomain_write_desktop (message_list_ty *mlp, - /* Convert the messages to Unicode. */ - iconv_message_list (mlp, canon_encoding, po_charset_utf8, NULL); - -+ /* Support for "reproducible builds": Delete information that may vary -+ between builds in the same conditions. */ - message_list_delete_header_field (mlp, "POT-Creation-Date:"); -- -+ - /* Create a single-element operands and run the bulk operation on it. */ - operand.language = (char *) locale_name; - operand.mlp = mlp; -diff --git a/gettext-tools/src/write-java.c b/gettext-tools/src/write-java.c -index 039ed94d9..9ddfac868 100644 ---- a/gettext-tools/src/write-java.c -+++ b/gettext-tools/src/write-java.c -@@ -1067,6 +1067,8 @@ msgdomain_write_java (message_list_ty *mlp, const char *canon_encoding, - /* Convert the messages to Unicode. */ - iconv_message_list (mlp, canon_encoding, po_charset_utf8, NULL); - -+ /* Support for "reproducible builds": Delete information that may vary -+ between builds in the same conditions. */ - message_list_delete_header_field (mlp, "POT-Creation-Date:"); - - if (output_source) -diff --git a/gettext-tools/src/write-mo.c b/gettext-tools/src/write-mo.c -index b99dece02..69196550c 100644 ---- a/gettext-tools/src/write-mo.c -+++ b/gettext-tools/src/write-mo.c -@@ -45,12 +45,10 @@ - #include "xsize.h" - #include "xalloc.h" - #include "xmalloca.h" -+#include "msgl-header.h" - #include "binary-io.h" - #include "fwriteerror.h" - #include "gettext.h" --#include "read-catalog.h" --#include "read-stringtable.h" --#include "msgl-header.h" - - #define _(str) gettext (str) - -@@ -789,6 +787,10 @@ msgdomain_write_mo (message_list_ty *mlp, - /* If no entry for this domain don't even create the file. */ - if (mlp->nitems != 0) - { -+ /* Support for "reproducible builds": Delete information that may vary -+ between builds in the same conditions. */ -+ message_list_delete_header_field (mlp, "POT-Creation-Date:"); -+ - if (strcmp (domain_name, "-") == 0) - { - output_file = stdout; -@@ -807,7 +809,6 @@ msgdomain_write_mo (message_list_ty *mlp, - - if (output_file != NULL) - { -- message_list_delete_header_field (mlp, "POT-Creation-Date:"); - write_table (output_file, mlp); - - /* Make sure nothing went wrong. */ -diff --git a/gettext-tools/src/write-qt.c b/gettext-tools/src/write-qt.c -index 4a47d241f..b3cca5a8e 100644 ---- a/gettext-tools/src/write-qt.c -+++ b/gettext-tools/src/write-qt.c -@@ -725,6 +725,10 @@ strings, not in the untranslated strings\n"))); - } - } - -+ /* Support for "reproducible builds": Delete information that may vary -+ between builds in the same conditions. */ -+ message_list_delete_header_field (mlp, "POT-Creation-Date:"); -+ - if (strcmp (domain_name, "-") == 0) - { - output_file = stdout; -@@ -743,7 +747,6 @@ strings, not in the untranslated strings\n"))); - - if (output_file != NULL) - { -- message_list_delete_header_field (mlp, "POT-Creation-Date:"); - write_qm (output_file, mlp); - - /* Make sure nothing went wrong. */ -diff --git a/gettext-tools/src/write-resources.c b/gettext-tools/src/write-resources.c -index ec74eadcd..8cc33cc13 100644 ---- a/gettext-tools/src/write-resources.c -+++ b/gettext-tools/src/write-resources.c -@@ -115,8 +115,6 @@ msgdomain_write_csharp_resources (message_list_ty *mlp, - const char *domain_name, - const char *file_name) - { -- message_list_delete_header_field (mlp, "POT-Creation-Date:"); -- - /* If no entry for this domain don't even create the file. */ - if (mlp->nitems != 0) - { -@@ -161,6 +159,10 @@ but the C# .resources format doesn't support plural handling\n"))); - /* Convert the messages to Unicode. */ - iconv_message_list (mlp, canon_encoding, po_charset_utf8, NULL); - -+ /* Support for "reproducible builds": Delete information that may vary -+ between builds in the same conditions. */ -+ message_list_delete_header_field (mlp, "POT-Creation-Date:"); -+ - /* Execute the WriteResource program. */ - { - const char *args[2]; -diff --git a/gettext-tools/src/write-tcl.c b/gettext-tools/src/write-tcl.c -index 04b62d9c8..b61608e76 100644 ---- a/gettext-tools/src/write-tcl.c -+++ b/gettext-tools/src/write-tcl.c -@@ -185,6 +185,10 @@ but the Tcl message catalog format doesn't support plural handling\n"))); - /* Convert the messages to Unicode. */ - iconv_message_list (mlp, canon_encoding, po_charset_utf8, NULL); - -+ /* Support for "reproducible builds": Delete information that may vary -+ between builds in the same conditions. */ -+ message_list_delete_header_field (mlp, "POT-Creation-Date:"); -+ - /* Now create the file. */ - { - size_t len; -@@ -217,7 +221,6 @@ but the Tcl message catalog format doesn't support plural handling\n"))); - return 1; - } - -- message_list_delete_header_field (mlp, "POT-Creation-Date:"); - write_msg (output_file, mlp, frobbed_locale_name); - - /* Make sure nothing went wrong. */ -diff --git a/gettext-tools/src/write-xml.c b/gettext-tools/src/write-xml.c -index f6cd6c003..5c719f92e 100644 ---- a/gettext-tools/src/write-xml.c -+++ b/gettext-tools/src/write-xml.c -@@ -95,8 +95,10 @@ msgdomain_write_xml (message_list_ty *mlp, - /* Convert the messages to Unicode. */ - iconv_message_list (mlp, canon_encoding, po_charset_utf8, NULL); - -+ /* Support for "reproducible builds": Delete information that may vary -+ between builds in the same conditions. */ - message_list_delete_header_field (mlp, "POT-Creation-Date:"); -- -+ - /* Create a single-element operands and run the bulk operation on it. */ - operand.language = (char *) locale_name; - operand.mlp = mlp; -diff --git a/gettext-tools/tests/msgfmt-19 b/gettext-tools/tests/msgfmt-19 -index 88574c817..76d4a739d 100755 ---- a/gettext-tools/tests/msgfmt-19 -+++ b/gettext-tools/tests/msgfmt-19 -@@ -1,7 +1,8 @@ - #! /bin/sh - . "${srcdir=.}/init.sh"; path_prepend_ . ../src - --# Test accelerators. -+# Test that PO files that differ only in the POT-Creation-Date yield the -+# exact same .mo file. - - cat <<\EOF > mf-19-1.po - # SOME DESCRIPTIVE TITLE. -@@ -20,14 +21,13 @@ msgstr "" - "Content-Type: text/plain; charset=UTF-8\n" - "Content-Transfer-Encoding: 8bit\n" - --msgid "pen &File" --msgstr "pen File" -+msgid "Open &File" -+msgstr "Open File" - --msgid "how _Help" --msgstr "how Help" -+msgid "Show _Help" -+msgstr "Show Help" - EOF - -- - cat <<\EOF > mf-19-2.po - # SOME DESCRIPTIVE TITLE. - # Copyright (C) YEAR Free Software Foundation, Inc. -@@ -45,14 +45,13 @@ msgstr "" - "Content-Type: text/plain; charset=UTF-8\n" - "Content-Transfer-Encoding: 8bit\n" - --msgid "pen &File" --msgstr "pen File" -+msgid "Open &File" -+msgstr "Open File" - --msgid "how _Help" --msgstr "how Help" -+msgid "Show _Help" -+msgstr "Show Help" - EOF - -- - : ${MSGFMT=msgfmt} - ${MSGFMT} -o mf-19-1.mo mf-19-1.po 2>/dev/null - test $? = 0 || { Exit 1; } diff --git a/msgfmt-reset-msg-length-after-remove.patch b/msgfmt-reset-msg-length-after-remove.patch deleted file mode 100644 index 100e617..0000000 --- a/msgfmt-reset-msg-length-after-remove.patch +++ /dev/null @@ -1,20 +0,0 @@ -Bug 1106843 -- msgfmt crashes when writing java source code and the .po file has a POT-Creation-Date header - -Due d13f165b83701dffc14f7151419e0c00c00c0d1b there will be the -line with the POT-Creation-Date: tag removed but the lenght of -the changed message string does also change with this. - ---- - gettext-tools/src/msgl-header.c | 1 + - 1 file changed, 1 insertion(+) - ---- gettext-tools/src/msgl-header.c -+++ gettext-tools/src/msgl-header.c 2018-09-19 08:05:54.340122157 +0000 -@@ -217,6 +217,7 @@ message_list_delete_header_field (messag - *p = '\0'; - - mp->msgstr = new_header; -+ mp->msgstr_len = strlen (new_header) + 1; - } - } - } diff --git a/reproducible.patch b/reproducible.patch index 8e2a2b6..e94f64c 100644 --- a/reproducible.patch +++ b/reproducible.patch @@ -1,31 +1,6 @@ merged upstream -Index: gettext-0.19.8.1/gettext-runtime/man/help2man -=================================================================== ---- gettext-0.19.8.1.orig/gettext-runtime/man/help2man -+++ gettext-0.19.8.1/gettext-runtime/man/help2man -@@ -179,7 +179,7 @@ my ($help_text, $version_text) = map { - or die "$this_program: can't get `--$_' info from $ARGV[0]\n" - } qw(help version); - --my $date = strftime "%B %Y", localtime; -+my $date = strftime "%B %Y", gmtime($ENV{SOURCE_DATE_EPOCH} || time); - (my $program = $ARGV[0]) =~ s!.*/!!; - my $package = $program; - my $version; -Index: gettext-0.19.8.1/gettext-tools/man/help2man -=================================================================== ---- gettext-0.19.8.1.orig/gettext-tools/man/help2man -+++ gettext-0.19.8.1/gettext-tools/man/help2man -@@ -179,7 +179,7 @@ my ($help_text, $version_text) = map { - or die "$this_program: can't get `--$_' info from $ARGV[0]\n" - } qw(help version); - --my $date = strftime "%B %Y", localtime; -+my $date = strftime "%B %Y", gmtime($ENV{SOURCE_DATE_EPOCH} || time); - (my $program = $ARGV[0]) =~ s!.*/!!; - my $package = $program; - my $version; + Index: gettext-0.19.8.1/gettext-tools/src/xgettext.c =================================================================== --- gettext-0.19.8.1.orig/gettext-tools/src/xgettext.c