- Remove sed hack which worked around segfault on ppc64. Now fixed

in OCaml >= 3.12.1-12.
(cherry picked from commit 515bc4a67a)
This commit is contained in:
Richard W.M. Jones 2012-06-06 19:24:51 +01:00
parent 8b57934ea9
commit f79968ca2f
1 changed files with 6 additions and 32 deletions

View File

@ -3,7 +3,7 @@
Name: ocaml-camomile
Version: 0.8.3
Release: 5%{?dist}
Release: 6%{?dist}
Summary: Unicode library for OCaml
Group: Development/Libraries
@ -16,7 +16,7 @@ Source0: http://downloads.sourceforge.net/camomile/camomile-%{version}.ta
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
ExcludeArch: sparc64 s390 s390x
BuildRequires: ocaml >= 3.12.1-9
BuildRequires: ocaml >= 3.12.1-12
BuildRequires: ocaml-findlib-devel
BuildRequires: ocaml-ocamldoc
BuildRequires: ocaml-camlp4-devel
@ -57,36 +57,6 @@ applications that use %{name}.
%prep
%setup -q -n camomile-%{version}
# This is a horrible hack to work around a bug in our ppc64 code
# generator. For some reason which we don't fully understand it barfs
# on the long entry function created by the series of alias commands
# at the end of public/charEncoding.ml:
#
# let () = alias "IANA/csGB2312" "GB2312"
# let () = alias "IANA/GB2312" "GB2312"
# (* etc for 573 lines *)
#
# Use a sed script to change to the equivalent code:
#
# let aliases = [
# "IANA/csGB2312", "GB2312";
# "IANA/GB2312", "GB2312";
# (* etc *)
# ] ;; List.iter (fun (a,b) -> alias a b) aliases
#
# The equivalent code contains just data plus a small entry function
# so it doesn't break the ppc64 generator. It's likely also to be
# more efficient. Since the code is equivalent, we do this
# transformation on all arches, not just ppc64.
#
# - RWMJ 2012-05-30
mv public/charEncoding.ml public/charEncoding.ml.orig
sed -e 's/let () = alias \("[^[:space:]]*"\) \("[^[:space:]]*"\)/\1, \2;/' \
-e 's/(\* IANA \*)/let aliases = [/' \
-e '$ i] ;; List.iter (fun (a,b) -> alias a b) aliases' \
public/charEncoding.ml.orig > public/charEncoding.ml
%build
./configure --prefix=%{_prefix} --datadir=%{_datadir} --libdir=%{_libdir}
@ -147,6 +117,10 @@ rm -rf $RPM_BUILD_ROOT
%changelog
* Wed Jun 6 2012 Richard W.M. Jones <rjones@redhat.com> - 0.8.3-6
- Remove sed hack which worked around segfault on ppc64. Now fixed
in OCaml >= 3.12.1-12.
* Sun Jun 3 2012 Richard W.M. Jones <rjones@redhat.com> - 0.8.3-5
- Remove patch which worked around segfault on ARM. Now fixed
in OCaml >= 3.12.1-9.