%global pre_tag beta5 Name: opam Version: 2.0.0 Release: 0.4.%{pre_tag}%{?dist} Summary: Source-based package manager for OCaml # Standard "OCaml linking exception", see included file. License: LGPLv2 with exceptions URL: https://github.com/ocaml/opam Source0: https://github.com/ocaml/opam/archive/%{version}-%{pre_tag}/%{name}-%{version}-%{pre_tag}.tar.gz # Fix license headers of a few files that should have been LGPLv2, # not LGPLv3. See https://github.com/ocaml/opam/issues/3125 Patch0: https://github.com/ocaml/opam/commit/e3b5576d2cab0b44ec146f5da706b762bcb538b4.patch BuildRequires: ocaml > 4.02.3 BuildRequires: ocaml-findlib-devel BuildRequires: ocaml-ocamlbuild BuildRequires: ocaml-cmdliner-devel BuildRequires: ocaml-ocamlgraph-devel BuildRequires: ocaml-re-devel BuildRequires: ocaml-cudf-devel BuildRequires: ocaml-opam-file-format-devel BuildRequires: ocaml-dose3-devel BuildRequires: ocaml-extlib-devel BuildRequires: ocaml-mccs-devel BuildRequires: ocaml-zip-devel BuildRequires: ocaml-result-devel BuildRequires: glpk-devel BuildRequires: zlib-devel BuildRequires: jbuilder BuildRequires: git Requires: opam-installer%{?_isa} = %{version}-%{release} %description Opam is a source-based package manager for OCaml. It supports multiple simultaneous compiler installations, flexible package constraints, and a Git-friendly development workflow. %package installer Summary: Standalone script for opam install files %description installer Standalone script for working with opam .install files, see the opam package for more information. %prep %autosetup -p1 -n %{name}-%{version}-%{pre_tag} %build %configure sed 's/OPAMINSTALLER_FLAGS=/OPAMINSTALLER_FLAGS+=/g' -i Makefile # Parallel build does not succeed. make make man %install # The makefile looks like it tries to invoke ocamlfind but only if DESTDIR # isn't set. If it is set (which it is) LIBINSTALLDIR must be set too # for installing opam-installer metadata. %make_install LIBINSTALL_DIR=%{buildroot}/%{_libdir}/ocaml # However it looks like some (extra) documentation gets # installed in the wrong place so... delete it. rm -rf %{buildroot}%{_prefix}/doc # It seems that some tests fail under mock. # I am not sure why at the moment. So for now I'll just turn them off. #%check #make tests %files %license LICENSE %{_bindir}/opam %exclude %{_mandir}/man1/opam-installer.1* %{_mandir}/man1/*.1* %files installer %license LICENSE # Upstream puts this documentation under opam-installer, not opam. # Since I have opam require opam-installer anyway, this seems reasonable. # (And there are lots of man pages in the opam package, so it has docs). %doc README.md CHANGES AUTHORS CONTRIBUTING.md %{_bindir}/opam-installer %{_libdir}/ocaml/opam-installer %{_mandir}/man1/opam-installer.1* %changelog * Mon Dec 04 2017 Ben Rosser - 2.0.0-0.4.beta5 - Add upstream patch correctly indicating LGPLv2 license of a few files. * Tue Nov 28 2017 Ben Rosser - 2.0.0-0.3.beta5 - Updated to latest upstream release. - Split opam-installer out as a subpackage. * Mon Oct 02 2017 Ben Rosser - 2.0.0-0.2.beta4 - Updated to latest upstream release. * Tue Aug 15 2017 Ben Rosser 2.0.0-0.1.beta31 - Initial package.