# Conditional build:
%bcond_without emacs # emacs subpackage
-%bcond_without x11 # without X11 support
+%bcond_without x # without X11 support
%bcond_without tk # tk support
%bcond_with db3 # use db3 instead of db 4.x
# --without x11 implies --without tk
-%{!?with_x11:%undefine with_tk}
+%{!?with_x:%undefine with_tk}
+
+%define p4ver 3.06
Summary: The Objective Caml compiler and programming environment
Summary(pl): Kompilator OCamla (Objective Caml) oraz ¶rodowisko programistyczne
Name: ocaml
-Version: 3.06
+Version: 3.07
Release: 3
License: distributable
Vendor: Group of implementors <caml-light@inria.fr>
Group: Development/Languages
-Source0: ftp://ftp.inria.fr/INRIA/caml-light/%{name}-%{version}/%{name}-%{version}.tar.gz
-# Source0-md5: 51530ed183b511ce19fed325c8ab1b43
-Source1: ftp://ftp.inria.fr/INRIA/caml-light/%{name}-%{version}/%{name}-%{version}-refman.html.tar.gz
-# Source1-md5: 2b555271d2630698fcd3a9b9acfd1440
-Source2: ftp://ftp.inria.fr/INRIA/caml-light/%{name}-%{version}/%{name}-%{version}-refman.ps.gz
-# Source2-md5: 7a23eb2287e04d359500dcaa8a8b504c
-Source3: ftp://ftp.inria.fr/INRIA/Projects/cristal/camlp4/camlp4-%{version}-manual.html.tar.gz
+Source0: http://caml.inria.fr/distrib/%{name}-%{version}/%{name}-%{version}.tar.gz
+# Source0-md5: 2dd038055f5e1350078ad81270411b78
+Source1: http://caml.inria.fr/distrib/%{name}-%{version}/%{name}-%{version}-refman.html.tar.gz
+# Source1-md5: 9ac1f7e9e381b95504f0e7868d9fbf52
+Source2: http://caml.inria.fr/distrib/%{name}-%{version}/%{name}-%{version}-refman.ps.gz
+# Source2-md5: 09a9ac4bc1ec90ca4d16743ffbe76c78
+Source3: ftp://ftp.inria.fr/INRIA/Projects/cristal/camlp4/camlp4-%{p4ver}-manual.html.tar.gz
# Source3-md5: 21370bae4e7f6435b38aeb21db7ce8bb
-Source4: ftp://ftp.inria.fr/INRIA/Projects/cristal/camlp4/camlp4-%{version}-manual.dvi.gz
+Source4: ftp://ftp.inria.fr/INRIA/Projects/cristal/camlp4/camlp4-%{p4ver}-manual.dvi.gz
# Source4-md5: 035915d1a530aa7ec9b194d9a7d258eb
-Source5: ftp://ftp.inria.fr/INRIA/Projects/cristal/camlp4/camlp4-%{version}-tutorial.html.tar.gz
+Source5: ftp://ftp.inria.fr/INRIA/Projects/cristal/camlp4/camlp4-%{p4ver}-tutorial.html.tar.gz
# Source5-md5: 96d8eb4ca5abd58c9a280ba59f73b192
-Source6: ftp://ftp.inria.fr/INRIA/Projects/cristal/camlp4/camlp4-%{version}-tutorial.dvi.gz
+Source6: ftp://ftp.inria.fr/INRIA/Projects/cristal/camlp4/camlp4-%{p4ver}-tutorial.dvi.gz
# Source6-md5: fcd87c235109364242a0c9ccf176dff8
Source7: http://www.oefai.at/~markus/ocaml_sources/pure-fun-1.0.4.tar.bz2
# Source7-md5: 567bc681b4cc1cfcbbfb6fa5f012019b
Source8: http://www.oefai.at/~markus/ocaml_sources/ds-contrib.tar.gz
# Source8-md5: 77fa1da7375dea1393cc0b6cd802d7e1
Patch0: %{name}-build.patch
-Patch1: %{name}-manlinks.patch
-Patch2: %{name}-db3.patch
-Patch3: %{name}-objinfo.patch
-Patch4: %{name}-opt-symbols.patch
-Patch5: %{name}-mano.patch
-Patch6: %{name}-tk8.4.patch
+Patch1: %{name}-db3.patch
+Patch2: %{name}-objinfo.patch
+Patch3: %{name}-mano.patch
+Patch4: %{name}-unused-var-warning.patch
+Patch5: %{name}-3.07-patch2.diffs
URL: http://caml.inria.fr/
-Requires: ocaml-runtime = %{version}-%{release}
-Obsoletes: ocaml-ocamldoc
-Provides: ocaml-ocamldoc
-%{?with_x11:BuildRequires: XFree86-devel}
+%{?with_x:BuildRequires: XFree86-devel}
%{?with_db3:BuildRequires: db3-devel}
%{!?with_db3:BuildRequires: db-devel >= 4.1}
-%{?with_tk:BuildRequires: tk-devel >= 8.4.3}
+%{?with_tk:BuildRequires: tk-devel}
%if %{with emacs}
+BuildRequires: emacs
BuildRequires: xemacs
BuildRequires: xemacs-common
BuildRequires: xemacs-fsf-compat-pkg
+
%endif
+Requires: ocaml-runtime = %{version}-%{release}
+Provides: ocaml-ocamldoc
+Obsoletes: ocaml-ocamldoc
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
mkdir docs/html
mv htmlman docs/html/ocaml
cp %{SOURCE2} docs/ocaml.ps.gz
-mv camlp4-%{version}-manual.html docs/html/camlp4
+mv camlp4-%{p4ver}-manual.html docs/html/camlp4
cp %{SOURCE4} docs/camlp4.ps.gz
-mv camlp4-%{version}-tutorial.html docs/html/camlp4-tutorial
+mv camlp4-%{p4ver}-tutorial.html docs/html/camlp4-tutorial
cp %{SOURCE6} docs/camlp4-tutorial.ps.gz
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
-#%patch4 -p1
+%patch4 -p1
%patch5 -p1
-%patch6 -p1
%build
./configure \
%install
rm -rf $RPM_BUILD_ROOT
+install -d $RPM_BUILD_ROOT{%{_includedir},%{_examplesdir}/%{name}-{labltk-,}%{version}}
%{__make} install \
BINDIR=$RPM_BUILD_ROOT%{_bindir} \
done
# move includes to the proper place
-install -d $RPM_BUILD_ROOT%{_includedir}
mv -f $RPM_BUILD_ROOT%{_libdir}/%{name}/caml $RPM_BUILD_ROOT%{_includedir}/caml
# but leave compatibility symlink
ln -s ../../include/caml $RPM_BUILD_ROOT%{_libdir}/%{name}/caml
# this isn't installed by default, but is useful
install tools/objinfo $RPM_BUILD_ROOT%{_bindir}/ocamlobjinfo
-
-install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
cp -r examples/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
-
-install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-labltk-%{version}
cp -r otherlibs/labltk/examples* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-labltk-%{version}
-
ln -sf %{_libdir}/%{name}/{scrape,add}labels $RPM_BUILD_ROOT%{_bindir}
# shutup checkfiles
%{_includedir}/caml
%{_libdir}/%{name}/caml
%{_libdir}/%{name}/threads
+%dir %{_libdir}/%{name}/vmthreads
+%dir %{_libdir}/%{name}/vmthreads/*.cm*
+%dir %{_libdir}/%{name}/vmthreads/*.a
%{_libdir}/%{name}/*.a
%{_libdir}/%{name}/*.o
%{_libdir}/%{name}/*.cm*
%{_libdir}/%{name}/camlheader
%{_libdir}/%{name}/camlheader_ur
%dir %{_libdir}/%{name}/ocamldoc
-%{_libdir}/%{name}/ocamldoc/*.sty
%{_libdir}/%{name}/ocamldoc/*.hva
%attr(755,root,root) %{_libdir}/%{name}/expunge
%attr(755,root,root) %{_libdir}/%{name}/extract_crc
%defattr(644,root,root,755)
%{_libdir}/%{name}/*.ml
%{_libdir}/%{name}/*.mli
+%{_libdir}/%{name}/*/*.mli
%files examples
%defattr(644,root,root,755)