- add buildjava switch to allow turning off the java bits completely

- add buildcheck to allow turning off make check
- drop cvs requires for autopoint (Karl Lattimer, #469555)
- add upstream gettext-xgettext-python-unicode-surrogate-473946.patch by
    Bruno Haible to fix xgettext handling of utf16 surrogates in python
    (#473946)
This commit is contained in:
Jens Petersen 2009-02-12 06:40:02 +00:00
parent 4f7c5a5f31
commit ff88f624b3
2 changed files with 56 additions and 12 deletions

View File

@ -0,0 +1,23 @@
2008-08-03 Bruno Haible <bruno@clisp.org>
* x-python.c (mixed_string_buffer_append): Replace a lone high
surrogate with U+FFFD.
Reported by Yann <asterix@lagaule.org>
via Santiago Vila <sanvila@unex.es>.
*** gettext-tools/src/x-python.c 20 Apr 2008 05:23:52 -0000 1.32
--- gettext-tools/src/x-python.c 3 Aug 2008 19:56:58 -0000
***************
*** 930,935 ****
--- 930,940 ----
if (c >= UNICODE (0xd800) && c < UNICODE (0xdc00))
bp->utf16_surr = UNICODE_VALUE (c);
+ else if (c >= UNICODE (0xdc00) && c < UNICODE (0xe000))
+ {
+ /* A half surrogate is invalid, therefore use U+FFFD instead. */
+ mixed_string_buffer_append_unicode (bp, 0xfffd);
+ }
else
mixed_string_buffer_append_unicode (bp, UNICODE_VALUE (c));
}

View File

@ -1,10 +1,12 @@
# libintl.jar requires gcj >= 4.3 to build # libintl.jar requires gcj >= 4.3 to build
%define buildjar 1 %define buildjar 1
%define buildjava 1
%define buildcheck 1
Summary: GNU libraries and utilities for producing multi-lingual messages Summary: GNU libraries and utilities for producing multi-lingual messages
Name: gettext Name: gettext
Version: 0.17 Version: 0.17
Release: 8%{?dist} Release: 9%{?dist}
License: GPLv3 and LGPLv2+ License: GPLv3 and LGPLv2+
Group: Development/Tools Group: Development/Tools
URL: http://www.gnu.org/software/gettext/ URL: http://www.gnu.org/software/gettext/
@ -16,22 +18,24 @@ Requires(preun): /sbin/install-info
BuildRequires: automake >= 1.8 BuildRequires: automake >= 1.8
%endif %endif
BuildRequires: autoconf >= 2.5 BuildRequires: autoconf >= 2.5
BuildRequires: libtool, bison, gcc-c++, gcc-java, libgcj BuildRequires: libtool, bison, gcc-c++
%if %{buildjava}
BuildRequires: gcc-java, libgcj
# For javadoc # For javadoc
BuildRequires: java-1.6.0-openjdk-devel BuildRequires: java-1.6.0-openjdk-devel
# need expat for xgettext on glade
Buildrequires: expat-devel
%if %{buildjar} %if %{buildjar}
BuildRequires: %{_bindir}/fastjar BuildRequires: %{_bindir}/fastjar
# require zip and unzip for brp-java-repack-jars # require zip and unzip for brp-java-repack-jars
BuildRequires: zip, unzip BuildRequires: zip, unzip
%endif %endif
# for autopoint %endif
Requires: cvs # need expat for xgettext on glade
Buildrequires: expat-devel
Buildroot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) Buildroot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
Patch5: gettext-0.17-open-args.patch Patch5: gettext-0.17-open-args.patch
Patch6: gettext-0.17-autopoint-CVS-441481.patch Patch6: gettext-0.17-autopoint-CVS-441481.patch
Patch7: gettext-0.17-rpathFix.patch Patch7: gettext-0.17-rpathFix.patch
Patch8: gettext-xgettext-python-unicode-surrogate-473946.patch
%description %description
The GNU gettext package provides a set of tools and documentation for The GNU gettext package provides a set of tools and documentation for
@ -77,18 +81,26 @@ This package contains libraries used internationalization support.
%patch5 -p0 -b .5-open-args~ %patch5 -p0 -b .5-open-args~
%patch6 -p0 -b .6-autopoint~ %patch6 -p0 -b .6-autopoint~
%patch7 -p0 -b .rpathFix~ %patch7 -p0 -b .rpathFix~
%patch8 -p0 -b .unicode~
%build %build
[ -f %{_datadir}/automake/depcomp ] && cp -f %{_datadir}/automake/{depcomp,ylwrap} . [ -f %{_datadir}/automake/depcomp ] && cp -f %{_datadir}/automake/{depcomp,ylwrap} .
%if %{buildjava}
export JAVAC=gcj export JAVAC=gcj
%if %{buildjar} %if %{buildjar}
export JAR=fastjar export JAR=fastjar
%endif %endif
%endif
%configure --without-included-gettext --enable-nls --disable-static \ %configure --without-included-gettext --enable-nls --disable-static \
--enable-shared --with-pic-=yes --disable-csharp --enable-java \ --enable-shared --with-pic-=yes --disable-csharp \
--disable-rpatha %if %{buildjava}
--enable-java \
%else
--disable-java \
%endif
--disable-rpath
make %{?_smp_mflags} GCJFLAGS="-findirect-dispatch" make %{?_smp_mflags} GCJFLAGS="-findirect-dispatch"
# For generating gettext-tools/src/gnu.gettext.* # For generating gettext-tools/src/gnu.gettext.*
@ -157,14 +169,16 @@ cat %{name}-*.lang > %{name}.lang
rm -rf ${RPM_BUILD_ROOT} rm -rf ${RPM_BUILD_ROOT}
%if %{buildcheck}
%check %check
## For Koji build problem ## For Koji build problem
cp ${RPM_BUILD_ROOT}%{_libdir}/libgettext*-%{version}.so ${RPM_BUILD}gettext-tools/src/.libs cp ${RPM_BUILD_ROOT}%{_libdir}/libgettext*-%{version}.so ${RPM_BUILD}gettext-tools/src/.libs
cp ${RPM_BUILD_ROOT}%{_libdir}/libgettext*-%{version}.so ${RPM_BUILD}gettext-tools/tests/.libs cp ${RPM_BUILD_ROOT}%{_libdir}/libgettext*-%{version}.so ${RPM_BUILD}gettext-tools/tests/.libs
cp ${RPM_BUILD_ROOT}%{_libdir}/libasprintf.so* ${RPM_BUILD}gettext-tools/src/.libs cp ${RPM_BUILD_ROOT}%{_libdir}/libasprintf.so* ${RPM_BUILD}gettext-tools/src/.libs
cp ${RPM_BUILD_ROOT}%{_libdir}/libasprintf.so* ${RPM_BUILD}gettext-tools/tests/.libs cp ${RPM_BUILD_ROOT}%{_libdir}/libasprintf.so* ${RPM_BUILD}gettext-tools/tests/.libs
# this takes quite a lot of time to run
make check make check
%endif
%define install_info /sbin/install-info %define install_info /sbin/install-info
@ -216,7 +230,9 @@ fi
%{_infodir}/gettext* %{_infodir}/gettext*
%{_mandir}/man1/* %{_mandir}/man1/*
%{_libdir}/%{name} %{_libdir}/%{name}
%if %{buildjava}
%exclude %{_libdir}/%{name}/gnu.gettext.* %exclude %{_libdir}/%{name}/gnu.gettext.*
%endif
%dir %{_datadir}/%{name} %dir %{_datadir}/%{name}
%{_datadir}/%{name}/archive.tar.gz %{_datadir}/%{name}/archive.tar.gz
%{_datadir}/%{name}/styles %{_datadir}/%{name}/styles
@ -246,8 +262,9 @@ fi
%{_mandir}/man3/* %{_mandir}/man3/*
%{_datadir}/%{name}/javaversion.class %{_datadir}/%{name}/javaversion.class
%doc gettext-runtime/intl-java/javadoc* %doc gettext-runtime/intl-java/javadoc*
%if %{buildjava}
%{_libdir}/%{name}/gnu.gettext.* %{_libdir}/%{name}/gnu.gettext.*
%endif
%files libs %files libs
%defattr(-,root,root,-) %defattr(-,root,root,-)
@ -257,8 +274,12 @@ fi
%changelog %changelog
* Wed Nov 5 2008 Jens Petersen <petersen@redhat.com> * Thu Feb 12 2009 Jens Petersen <petersen@redhat.com> - 0.17-9
- move cvs Requires for autopoint to base package (Karl Lattimer, #469555) - add buildjava switch to allow turning off the java bits completely
- add buildcheck to allow turning off make check
- drop cvs requires for autopoint (Karl Lattimer, #469555)
- add upstream gettext-xgettext-python-unicode-surrogate-473946.patch by
Bruno Haible to fix xgettext handling of utf16 surrogates in python (#473946)
* Fri Aug 29 2008 Ding-Yi Chen <dchen at redhat dot com> - 0.17-8 * Fri Aug 29 2008 Ding-Yi Chen <dchen at redhat dot com> - 0.17-8
- Fix the build failure with koji. - Fix the build failure with koji.