-#%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}
+# Built-in strip corrupts binaries, so use the mingw32 strip instead:
+%define __strip %{_mingw32_strip}
+%define __objdump %{_mingw32_objdump}
%define debug_package %{nil}
Name: mingw32-ocaml
Version: 3.11.0+beta1
-Release: 9%{?dist}
+Release: 13%{?dist}
Summary: Objective Caml MinGW cross-compiler and programming environment
License: QPL and (LGPLv2+ with exceptions)
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
# Is it noarch? (XXX)
+# Answer: yes and no. In theory it should be, but because we install
+# Windows binaries in %{_libdir}, the path is different if built on
+# 32 and 64 bit platforms. We should probably install the binaries
+# in /usr/share.
BuildArch: noarch
BuildRequires: mingw32-filesystem >= 30
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
-bindir %{_bindir} \
-libdir %{_libdir}/ocaml \
-mandir %{_mandir}/man1 \
- -cc "gcc -m32" -host i386-pc-linux -x11lib /usr/lib
+ -cc "gcc -m32" -host i386-pc-linux -x11lib /usr/lib -verbose
make world
# Now move the working ocamlrun, ocamlc into the boot/ directory,
%changelog
-* Sun Nov 16 2008 Richard W.M. Jones <rjones@redhat.com> - 3.11.0+beta1-9
+* Sun Nov 16 2008 Richard W.M. Jones <rjones@redhat.com> - 3.11.0+beta1-13
- 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.
+- Use mingw32 strip to avoid corrupting binaries.
* Sun Nov 16 2008 Richard W.M. Jones <rjones@redhat.com> - 3.11.0+beta1-8
- Install ocamlc.