%global extraver 2c Name: ocaml-mccs Version: 1.1 Release: 1.%{extraver}%{?dist} Summary: Multi Criteria CUDF Solver with OCaml bindings %global libname %(echo %{name} | sed -e 's/^ocaml-//') # Original C/C++ code is BSD, OCaml bindings are LGPL. # Linking exception, see included COPYING file. License: BSD and LGPLv3+ with exceptions URL: https://github.com/AltGr/ocaml-mccs # Upstream's use of a '+' instead of a '.' makes this hard to use a macro. Source0: https://github.com/AltGr/ocaml-mccs/archive/%{version}+%{extraver}/%{name}-%{version}.tar.gz BuildRequires: ocaml BuildRequires: jbuilder BuildRequires: gcc BuildRequires: ocaml-findlib-devel BuildRequires: ocaml-cudf-devel BuildRequires: glpk-devel %description mccs (which stands for Multi Criteria CUDF Solver) is a CUDF problem solver developed at UNS during the European MANCOOSI project. This project contains a stripped-down version of the mccs solver, taken from snapshot 1.1, with a binding as an OCaml library, and building with jbuilder. The binding enables interoperation with binary CUDF data from the OCaml CUDF library, and removes the native C++ parsers and printers. %package devel Summary: Development files for %{name} Requires: %{name} = %{version}-%{release} %description devel The %{name}-devel package contains libraries and signature files for developing applications that use %{name}. %prep %autosetup -n %{name}-%{version}-%{extraver} %build jbuilder build -p mccs %{?_smp_mflags} %install # This is an opam dependency. Tragically it means we must manually install, # since the jbuilder install command only works with opam-installer. mkdir -p %{buildroot}%{_libdir}/ocaml cp -aLr _build/install/default/lib/* %{buildroot}%{_libdir}/ocaml/ %files %license LICENCE %doc README.md %{_libdir}/ocaml/%{libname} %ifarch %{ocaml_native_compiler} %exclude %{_libdir}/ocaml/*/*.a %exclude %{_libdir}/ocaml/*/*.cmx %exclude %{_libdir}/ocaml/*/*.cmxa %endif %exclude %{_libdir}/ocaml/*/*.mli %{_libdir}/ocaml/stublibs/*.so %files devel %ifarch %{ocaml_native_compiler} %{_libdir}/ocaml/*/*.a %{_libdir}/ocaml/*/*.cmx %{_libdir}/ocaml/*/*.cmxa %endif %{_libdir}/ocaml/*/*.mli %changelog * Sat Sep 02 2017 Ben Rosser 1.1-1.2c - Initial package.