X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=ocaml%2Fmingw32-ocaml.spec;h=077e48842750139ab7d9d6679438a80a229a205d;hb=ba07918b5104f117e036ec6272893fc1db4e1047;hp=6d1f29b7f5eccd8e8128192dda740a7a582946b3;hpb=430eaabf1d0eacbbb3f3d0bc9f3f2243b0661fb0;p=fedora-mingw.git diff --git a/ocaml/mingw32-ocaml.spec b/ocaml/mingw32-ocaml.spec index 6d1f29b..077e488 100644 --- a/ocaml/mingw32-ocaml.spec +++ b/ocaml/mingw32-ocaml.spec @@ -1,18 +1,10 @@ -#%define __strip %{_mingw32_strip} -#%define __objdump %{_mingw32_objdump} -%define __strip : -%define __objdump : -%define _use_internal_dependency_generator 0 -%define __find_requires %{_mingw32_findrequires} -%define __find_provides %{_mingw32_findprovides} - %define debug_package %{nil} %define otherlibraries win32unix str num dynlink bigarray systhreads win32graph Name: mingw32-ocaml Version: 3.11.0+beta1 -Release: 8%{?dist} +Release: 11%{?dist} Summary: Objective Caml MinGW cross-compiler and programming environment License: QPL and (LGPLv2+ with exceptions) @@ -45,6 +37,11 @@ BuildRequires: mingw32-gcc BuildRequires: mingw32-binutils BuildRequires: mingw32-flexdll +# These are required so we can use gcc -m32 and link to 32 bit X11: +BuildRequires: /lib/libgcc_s.so.1 +BuildRequires: /usr/lib/crt1.o +BuildRequires: /usr/lib/libX11.so + # While we still ship bytecode, this requires a /usr/bin/ocamlrun from # the _identical_ native package. We don't have that at the moment, # which is why this is commented out. @@ -85,13 +82,19 @@ and produces Windows native executables. # Don't run out of memory. ulimit -s unlimited -# Build native ocamlrun and ocamlc which contain the filename-win32-dirsep -# patch. +# Build native ocamlrun and ocamlc which contain the +# filename-win32-dirsep patch. +# +# Note that we must build a 32 bit compiler, even on 64 bit build +# architectures, because this compiler will try to do strength +# reduction optimizations using its internal int type, and that must +# match Windows' int type. (That's what -cc and -host are for). ./configure \ -no-tk \ -bindir %{_bindir} \ -libdir %{_libdir}/ocaml \ - -mandir %{_mandir}/man1 + -mandir %{_mandir}/man1 \ + -cc "gcc -m32" -host i386-pc-linux -x11lib /usr/lib -verbose make world # Now move the working ocamlrun, ocamlc into the boot/ directory, @@ -212,6 +215,15 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sun Nov 16 2008 Richard W.M. Jones - 3.11.0+beta1-11 +- Build the native compiler as 32 bits even on a 64 bit build + architecture (because the target, Windows, is 32 bit). The + compiler does strength reduction and other optimizations + internally so we must ensure it uses the same int type. +- Requires libX11-devel.i386 and libgcc.i386. +- Allow the normal dependency generators to run because this + is a native package. + * Sun Nov 16 2008 Richard W.M. Jones - 3.11.0+beta1-8 - Install ocamlc.