%global opt %(test -x %{_bindir}/ocamlopt && echo 1 || echo 0) %global debug_package %{nil} %define libname %(echo %{name} | sed -e 's/^ocaml-//') Name: ocaml-dtools Version: 0.4.4 Release: 1%{?dist} Summary: TBD License: TBD URL: TBD Source0: %{name}-%{version}.tar.gz BuildRequires: ocaml >= 3.10.0 BuildRequires: ocaml-findlib-devel BuildRequires: ocaml-ocamldoc BuildRequires: chrpath ocaml-dune Patch0: ocaml-dtools-dune-version.patch %description %package devel Summary: Development files for %{name} Requires: %{name} = %{version}-%{release} Provides: %{name} %description devel The %{name}-devel package contains libraries and signature files for developing applications that use %{name}. %prep %autosetup -n ocaml-%{libname}-%{version} %build # You may need a %%configure step here (or ./configure if it doesn't work). dune build --release #make byte #%if %opt #make opt #%endif %install rm -rf $RPM_BUILD_ROOT # These rules work if the library uses 'ocamlfind install' to install itself. export DESTDIR=$RPM_BUILD_ROOT export OCAMLFIND_DESTDIR=$RPM_BUILD_ROOT%{_libdir}/ocaml mkdir -p $OCAMLFIND_DESTDIR $OCAMLFIND_DESTDIR/stublibs dune install --release #make install #strip $OCAMLFIND_DESTDIR/stublibs/dll*.so #chrpath --delete $OCAMLFIND_DESTDIR/stublibs/dll*.so %files %license COPYING %dir %{_libdir}/ocaml/%{libname}/ %if %opt %exclude %{_libdir}/ocaml/*/*.a %exclude %{_libdir}/ocaml/*/*.cmxa %exclude %{_libdir}/ocaml/*/*.cmx %endif %exclude %{_libdir}/ocaml/*/*.mli %files devel %license COPYING %doc README.md %if %opt %{_libdir}/ocaml/*/*.a %{_libdir}/ocaml/*/*.cmxa %{_libdir}/ocaml/*/*.cmx %endif %{_libdir}/ocaml/*/*.mli %doc %{_prefix}/doc/*/* %{_libdir}/ocaml/*/*.cma %{_libdir}/ocaml/*/*.ml %{_libdir}/ocaml/*/*.cmi %{_libdir}/ocaml/*/*.cmt %{_libdir}/ocaml/*/*.cmti %{_libdir}/ocaml/*/*.cmxs %{_libdir}/ocaml/*/META %{_libdir}/ocaml/*/opam %{_libdir}/ocaml/*/dune-package %changelog * Wed Dec 01 2021 tdfischer -