%ifnarch %{ocaml_native_compiler} %global debug_package %{nil} %endif %global srcname ounit # -doc subpackage requires ocaml-odoc which has rather a lot of # dependencies. This flag allows the non-essential subpackage to be # enabled. %bcond_with doc Name: ocaml-ounit Version: 2.2.6 Release: %mkrel 1 Summary: Unit test framework for OCaml Group: Development/OCaml License: MIT URL: https://github.com/gildor478/ounit Source0: %{url}/releases/download/v%{version}/%{srcname}-%{version}.tbz # Remove stdlib-shims downstream. Not needed in Fedora. Patch0001: 0001-Remove-stdlib-shims.patch #Project: http://forge.ocamlcore.org/scm/browser.php?group_id=162&repo_name=ounit BuildRequires: ocaml >= 4.02.3 BuildRequires: ocaml-dune >= 1.11.0 BuildRequires: ocaml-findlib BuildRequires: ocaml-lwt-devel BuildRequires: ocaml-mmap-devel BuildRequires: ocaml-ocplib-endian-devel %if %{with doc} BuildRequires: ocaml-odoc %endif BuildRequires: ocaml-result-devel # The ounit name is now just an alias for ounit2 Provides: %{name}2 = %{version}-%{release} %description OUnit is a unit test framework for OCaml. It allows one to easily create unit-tests for OCaml code. It is loosely based on HUnit, a unit testing framework for Haskell. It is similar to JUnit, and other xUnit testing frameworks. %package devel Summary: Development files for %{name} Group: Development/OCaml Requires: %{name} = %{version}-%{release} Provides: %{name}2-devel = %{version}-%{release} %description devel The %{name}-devel package contains libraries and signature files for developing applications that use %{name}. %package lwt Summary: Helper functions for building Lwt tests using OUnit Requires: %{name} = %{version}-%{release} Provides: %{name}2-lwt = %{version}-%{release} %description lwt This package contains helper functions for building Lwt tests using OUnit. %package lwt-devel Summary: Development files for %{name}-lwt Requires: %{name}-devel = %{version}-%{release} Requires: %{name}-lwt = %{version}-%{release} Requires: ocaml-lwt-devel%{?_isa} Provides: %{name}2-lwt-devel = %{version}-%{release} %description lwt-devel The %{name}-lwt-devel package contains libraries and signature files for developing applications that use %{name}-lwt. %package doc Summary: Documentation for %{name} BuildArch: noarch %description doc Documentation for %{name}. %prep %autosetup -n %{srcname}-%{version} -p1 %build dune build --release %{?_smp_mflags} %if %{with doc} dune build %{?_smp_mflags} @doc %endif %check dune runtest --release %install dune install --destdir=%{buildroot} %if %{with doc} # We do not want the dune markers find _build/default/_doc/_html -name .dune-keep -delete %endif # We install the documentation with the doc macro rm -fr %{buildroot}%{_prefix}/doc %ifarch %{ocaml_native_compiler} # Add missing executable bits find %{buildroot}%{_libdir}/ocaml -name \*.cmxs -exec chmod a+x {} \+ %endif %files %doc CHANGES.md README.md %license LICENSE.txt %dir %{_libdir}/ocaml/%{srcname}/ %dir %{_libdir}/ocaml/%{srcname}2/ %dir %{_libdir}/ocaml/%{srcname}2/advanced/ %dir %{_libdir}/ocaml/%{srcname}2/threads/ %{_libdir}/ocaml/%{srcname}2/threads/.private/ %{_libdir}/ocaml/%{srcname}/META %{_libdir}/ocaml/%{srcname}2/META %{_libdir}/ocaml/%{srcname}2/*.cma %{_libdir}/ocaml/%{srcname}2/*.cmi %{_libdir}/ocaml/%{srcname}2/*/*.cma %{_libdir}/ocaml/%{srcname}2/*/*.cmi %ifarch %{ocaml_native_compiler} %{_libdir}/ocaml/%{srcname}2/*.cmxs %{_libdir}/ocaml/%{srcname}2/*/*.cmxs %endif %files devel %{_libdir}/ocaml/%{srcname}/dune-package %{_libdir}/ocaml/%{srcname}/opam %{_libdir}/ocaml/%{srcname}2/dune-package %{_libdir}/ocaml/%{srcname}2/opam %ifarch %{ocaml_native_compiler} %{_libdir}/ocaml/%{srcname}2/*.a %{_libdir}/ocaml/%{srcname}2/*.cmx %{_libdir}/ocaml/%{srcname}2/*.cmxa %{_libdir}/ocaml/%{srcname}2/*/*.a %{_libdir}/ocaml/%{srcname}2/*/*.cmx %{_libdir}/ocaml/%{srcname}2/*/*.cmxa %endif %{_libdir}/ocaml/%{srcname}2/*.cmt %{_libdir}/ocaml/%{srcname}2/*.cmti %{_libdir}/ocaml/%{srcname}2/*.ml %{_libdir}/ocaml/%{srcname}2/*.mli %{_libdir}/ocaml/%{srcname}2/*/*.cmt %{_libdir}/ocaml/%{srcname}2/*/*.cmti %{_libdir}/ocaml/%{srcname}2/*/*.ml %{_libdir}/ocaml/%{srcname}2/*/*.mli %files lwt %dir %{_libdir}/ocaml/%{srcname}-lwt/ %dir %{_libdir}/ocaml/%{srcname}2-lwt/ %{_libdir}/ocaml/%{srcname}-lwt/META %{_libdir}/ocaml/%{srcname}2-lwt/META %{_libdir}/ocaml/%{srcname}2-lwt/oUnitLwt.cma %{_libdir}/ocaml/%{srcname}2-lwt/oUnitLwt.cmi %ifarch %{ocaml_native_compiler} %{_libdir}/ocaml/%{srcname}2-lwt/oUnitLwt.cmxs %endif %files lwt-devel %{_libdir}/ocaml/%{srcname}-lwt/dune-package %{_libdir}/ocaml/%{srcname}-lwt/opam %{_libdir}/ocaml/%{srcname}2-lwt/dune-package %{_libdir}/ocaml/%{srcname}2-lwt/opam %ifarch %{ocaml_native_compiler} %{_libdir}/ocaml/%{srcname}2-lwt/oUnitLwt.a %{_libdir}/ocaml/%{srcname}2-lwt/oUnitLwt.cmx %{_libdir}/ocaml/%{srcname}2-lwt/oUnitLwt.cmxa %endif %{_libdir}/ocaml/%{srcname}2-lwt/oUnitLwt.cmt %{_libdir}/ocaml/%{srcname}2-lwt/oUnitLwt.ml %if %{with doc} %files doc %doc _build/default/_doc/_html/ %doc _build/default/_doc/_mlds/ %doc _build/default/_doc/_odoc/ %license LICENSE.txt %endif %changelog * Sun Oct 09 2022 pterjan <pterjan> 2.2.6-1.mga9 + Revision: 1895773 - Update to 2.2.6 * Fri May 20 2022 pterjan <pterjan> 2.2.4-4.mga9 + Revision: 1859395 - Build with --release to make deprecation warning non fatal - Rebuild for OCaml 4.14 * Tue May 17 2022 pterjan <pterjan> 2.2.4-3.mga9 + Revision: 1858526 - Rebuild for new ocaml-lwt * Wed Oct 13 2021 tv <tv> 2.2.4-2.mga9 + Revision: 1751149 - Rebuild for ocaml 4.13.1 * Sat Mar 20 2021 tv <tv> 2.2.4-1.mga9 + Revision: 1705035 - 2.2.4 * Sun Jan 10 2021 pterjan <pterjan> 2.0.8-9.mga8 + Revision: 1670472 - Rebuild to generate ocamlx provides * Fri Feb 28 2020 umeabot <umeabot> 2.0.8-8.mga8 + Revision: 1551365 - Rebuild for ocaml 4.10.0 final * Wed Feb 19 2020 umeabot <umeabot> 2.0.8-7.mga8 + Revision: 1543232 - Mageia 8 Mass Rebuild * Sun Jan 19 2020 tv <tv> 2.0.8-6.mga8 + Revision: 1481516 - rebuild for ocaml-4.10 * Tue Oct 23 2018 tv <tv> 2.0.8-5.mga7 + Revision: 1324160 - rebuild with ocaml-4.07.1 - rebuild with ocaml-4.07.1 - rebuild with ocaml-4.07.1 * Sun Sep 23 2018 umeabot <umeabot> 2.0.8-2.mga7 + Revision: 1299912 - Mageia 7 Mass Rebuild * Sat Apr 07 2018 daviddavid <daviddavid> 2.0.8-1.mga7 + Revision: 1215858 - new version: 2.0.8 * Sat Mar 24 2018 daviddavid <daviddavid> 2.0.7-1.mga7 + Revision: 1211808 - new version: 2.0.7 * Sat Nov 25 2017 tv <tv> 2.0.6-1.mga7 + Revision: 1179281 - fix filelist - new release * Mon Sep 26 2016 pterjan <pterjan> 2.0.0-6.mga6 + Revision: 1056430 - Rebuild for fix in ocaml * Fri Jan 29 2016 pterjan <pterjan> 2.0.0-5.mga6 + Revision: 928990 - Rebuild for new ocaml * Wed Oct 15 2014 umeabot <umeabot> 2.0.0-4.mga5 + Revision: 739549 - Second Mageia 5 Mass Rebuild * Tue Sep 16 2014 umeabot <umeabot> 2.0.0-3.mga5 + Revision: 683081 - Mageia 5 Mass Rebuild * Mon Oct 21 2013 umeabot <umeabot> 2.0.0-2.mga4 + Revision: 538609 - Mageia 4 Mass Rebuild * Tue Oct 01 2013 blue_prawn <blue_prawn> 2.0.0-1.mga4 + Revision: 489990 - updated to last version 2.0.0 * Sat Sep 07 2013 blue_prawn <blue_prawn> 1.1.2-8.mga4 + Revision: 475754 - rebuild for ocaml-4.01.0 * Sun Jan 13 2013 umeabot <umeabot> 1.1.2-7.mga3 + Revision: 361546 - Mass Rebuild - https://wiki.mageia.org/en/Feature:Mageia3MassRebuild * Sat Nov 24 2012 blue_prawn <blue_prawn> 1.1.2-6.mga3 + Revision: 321442 - just a rebuild * Mon Oct 01 2012 blue_prawn <blue_prawn> 1.1.2-5.mga3 + Revision: 301078 - rebuild for ocaml-4.00.0 * Sun Sep 30 2012 malo <malo> 1.1.2-4.mga3 + Revision: 301012 - rebuild for new ocaml - fix BR to ocaml-compiler * Sat Sep 29 2012 blue_prawn <blue_prawn> 1.1.2-3.mga3 + Revision: 300084 - new rpm group for ocaml * Tue Aug 21 2012 blue_prawn <blue_prawn> 1.1.2-2.mga3 + Revision: 282969 - generate and include the ocamldoc html api documentation - include the examples and tests * Sun Jun 24 2012 blue_prawn <blue_prawn> 1.1.2-1.mga3 + Revision: 262891 - updated to last version 1.1.2 * Wed Jan 18 2012 malo <malo> 1.1.1-1.mga2 + Revision: 197975 - new version 1.1.1 * Sun Oct 02 2011 shlomif <shlomif> 1.1.0-3.mga2 + Revision: 151027 - Rebuild for the new ocaml. Thanks to Malo * Sun Sep 25 2011 shlomif <shlomif> 1.1.0-2.mga2 + Revision: 147743 - Add a missing BuildRequires - thanks to Malo. - New version - thanks to Malo. * Sat Apr 30 2011 pterjan <pterjan> 1.0.3-5.mga1 + Revision: 93944 - Bump release higher than Mandriva * Mon Mar 07 2011 saispo <saispo> 1.0.3-1.mga1 + Revision: 66234 - imported package ocaml-ounit