%define opt %(test -x %{_bindir}/ocamlopt && echo 1 || echo 0) %define debug_package %{nil} Name: ocaml-p3l Version: 2.03 Release: 8%{?dist} Summary: OCaml compiler for parallel programs Group: Development/Libraries License: LGPLv2+ with exceptions BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) ExcludeArch: sparc64 s390 s390x URL: http://ocamlp3l.inria.fr/ Source0: http://ocamlp3l.inria.fr/ocamlp3l-2.03.tgz Source1: README.Fedora # These patches come from Debian: Patch0: debian-01-correct-href-to-gz-doc.patch Patch1: debian-02-install-mli.patch BuildRequires: ocaml >= 3.10.0 BuildRequires: ocaml-ocamldoc %define _use_internal_dependency_generator 0 %define __find_requires /usr/lib/rpm/ocaml-find-requires.sh %define __find_provides /usr/lib/rpm/ocaml-find-provides.sh %description OCamlP3l is a compiler for Caml parallel programs. The OCamlP3l programming paradigm is skeleton programming. The skeletons encapsulate basic parallel programming patterns in a well understood and structured approach. Based on P3L, the Pisa Parallel Programming Language, OCamlP3l skeleton algebra is embedded in a full-fledged functional programming language, namely Objective Caml. The skeleton programming approach used in OCamlP3l allows three different operational interpretations of the same source program: * the sequential interpretation which is deterministic, hence easy to understand and debug, * the parallel interpretation using a network of computing nodes run in parallel to speed up the computation, * the graphical interpretation, which is run to obtain a drawing of the parallel computing network deployed at run-time by the parallel interpretation. %package devel Summary: Development files for %{name} Group: Development/Libraries Requires: %{name} = %{version}-%{release} %description devel The %{name}-devel package contains libraries and signature files for developing applications that use %{name}. %package doc Summary: User manual and other documentation for %{name} Group: Development/Libraries Requires: %{name} = %{version}-%{release} %description doc The %{name}-doc package contains the user manual and other documentation for %{name}. %prep %setup -q -n ocamlp3l-%{version} %patch0 -p1 %patch1 -p1 %build make configure make %install rm -rf $RPM_BUILD_ROOT mkdir -p $RPM_BUILD_ROOT%{_libdir}/ocaml mkdir -p $RPM_BUILD_ROOT%{_bindir} make install \ CAMLLIBDIR=$RPM_BUILD_ROOT%{_libdir}/ocaml \ PREFIX=$RPM_BUILD_ROOT%{_prefix} strip $RPM_BUILD_ROOT%{_bindir}/ocamlp3l* # Zero-length file - remove it. rm doc/favicon.ico cp %{SOURCE1} README.Fedora %clean rm -rf $RPM_BUILD_ROOT %files %defattr(-,root,root,-) %doc doc/LICENSE %{_libdir}/ocaml/ocamlp3l %if %opt %exclude %{_libdir}/ocaml/ocamlp3l/vprocess/*.cmx %exclude %{_libdir}/ocaml/ocamlp3l/vthread/*.cmx %endif %exclude %{_libdir}/ocaml/ocamlp3l/vprocess/*.mli %exclude %{_libdir}/ocaml/ocamlp3l/vthread/*.mli %{_bindir}/ocamlp3lc %{_bindir}/ocamlp3lopt %{_bindir}/ocamlp3ltop %files devel %defattr(-,root,root,-) %doc README.Fedora %if %opt %{_libdir}/ocaml/ocamlp3l/vprocess/*.cmx %{_libdir}/ocaml/ocamlp3l/vthread/*.cmx %endif %{_libdir}/ocaml/ocamlp3l/vprocess/*.mli %{_libdir}/ocaml/ocamlp3l/vthread/*.mli %files doc %defattr(-,root,root,-) %doc doc/* %changelog * Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.03-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild * Fri Jan 07 2011 Richard W.M. Jones <rjones@redhat.com> - 2.03-7 - Rebuild for OCaml 3.12 (http://fedoraproject.org/wiki/Features/OCaml3.12). * Tue Jan 12 2010 Richard W.M. Jones <rjones@redhat.com> - 2.03-6 - Fix URL & Source URL. * Wed Dec 30 2009 Richard W.M. Jones <rjones@redhat.com> - 2.03-5 - Rebuild for OCaml 3.11.2. * Sat Jul 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.03-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild * Sat May 23 2009 Richard W.M. Jones <rjones@redhat.com> - 2.03-3 - Rebuild for OCaml 3.11.1 * Thu Apr 16 2009 S390x secondary arch maintainer <fedora-s390x@lists.fedoraproject.org> - ExcludeArch sparc64, s390, s390x as we don't have OCaml on those archs (added sparc64 per request from the sparc maintainer) * Mon Mar 16 2009 Richard W.M. Jones <rjones@redhat.com> - 2.03-2 - Don't duplicate the LICENSE and README.Fedora files. * Sat Dec 20 2008 Richard W.M. Jones <rjones@redhat.com> - 2.03-1 - Initial RPM release.