Use new OCaml macros.

This commit is contained in:
Jerry James 2022-07-20 20:20:34 -06:00
parent 24816c9eaf
commit 7fd4d3a294

View File

@ -1,37 +1,28 @@
%undefine _package_note_flags
%ifnarch %{ocaml_native_compiler}
%global debug_package %{nil}
%endif
# Break a circular dependency on ocaml-odoc
%bcond_with doc
# This package is now a transitive dependency of ocaml-ppx-inline-test, so using
# it to test this package creates a circular dependency.
%bcond_with tests
%bcond_with test
%global srcname ppx-compare
%global upname ppx_compare
Name: ocaml-%{srcname}
Name: ocaml-ppx-compare
Version: 0.15.0
Release: 6%{?dist}
Summary: Generate comparison functions from types
License: MIT
URL: https://github.com/janestreet/%{upname}
Source0: %{url}/archive/v%{version}/%{upname}-%{version}.tar.gz
URL: https://github.com/janestreet/ppx_compare
Source0: %{url}/archive/v%{version}/ppx_compare-%{version}.tar.gz
BuildRequires: ocaml >= 4.08.0
BuildRequires: ocaml-base-devel >= 0.15.0
BuildRequires: ocaml-dune >= 2.0.0
BuildRequires: ocaml-ppxlib-devel >= 0.23.0
%if %{with doc}
BuildRequires: ocaml-odoc
%endif
%if %{with tests}
%if %{with test}
BuildRequires: ocaml-ppx-inline-test-devel
%endif
@ -54,74 +45,32 @@ The %{name}-devel package contains libraries and signature files for
developing applications that use %{name}.
%prep
%autosetup -n %{upname}-%{version} -p1
%autosetup -n ppx_compare-%{version} -p1
%build
dune build %{?_smp_mflags} --verbose --release
%if %{with doc}
dune build %{?_smp_mflags} @doc
%endif
%dune_build
%install
dune install --destdir=%{buildroot}
%dune_install
%if %{with doc}
# We do not want the dune markers
find _build/default/_doc/_html -name .dune-keep -delete
%endif
# We do not want the ml files
find %{buildroot}%{_libdir}/ocaml -name \*.ml -delete
# We install the documentation with the doc macro
rm -fr %{buildroot}%{_prefix}/doc
%if %{with tests}
%if %{with test}
# The tests require a native build.
%ifnarch %{ocaml_native_compiler}
%check
dune runtest --release
%dune_check
%endif
%endif
%files
%files -f .ofiles
%doc CHANGES.md README.md
%license LICENSE.md
%dir %{_libdir}/ocaml/%{upname}/
%dir %{_libdir}/ocaml/%{upname}/expander/
%dir %{_libdir}/ocaml/%{upname}/runtime-lib/
%{_libdir}/ocaml/%{upname}/META
%{_libdir}/ocaml/%{upname}/*.cma
%{_libdir}/ocaml/%{upname}/*.cmi
%{_libdir}/ocaml/%{upname}/*/*.cma
%{_libdir}/ocaml/%{upname}/*/*.cmi
%ifarch %{ocaml_native_compiler}
%{_libdir}/ocaml/%{upname}/*.cmxs
%{_libdir}/ocaml/%{upname}/*/*.cmxs
%endif
%files devel
%if %{with doc}
%doc _build/default/_doc/_html/*
%endif
%{_libdir}/ocaml/%{upname}/dune-package
%{_libdir}/ocaml/%{upname}/opam
%ifarch %{ocaml_native_compiler}
%{_libdir}/ocaml/%{upname}/*.a
%{_libdir}/ocaml/%{upname}/*.cmx
%{_libdir}/ocaml/%{upname}/*.cmxa
%{_libdir}/ocaml/%{upname}/*/*.a
%{_libdir}/ocaml/%{upname}/*/*.cmx
%{_libdir}/ocaml/%{upname}/*/*.cmxa
%endif
%{_libdir}/ocaml/%{upname}/*.cmt
%{_libdir}/ocaml/%{upname}/*.cmti
%{_libdir}/ocaml/%{upname}/*.mli
%{_libdir}/ocaml/%{upname}/*/*.cmt
%{_libdir}/ocaml/%{upname}/*/*.cmti
%{_libdir}/ocaml/%{upname}/*/*.mli
%files devel -f .ofiles-devel
%changelog
* Wed Jul 20 2022 Jerry James <loganjerry@gmail.com> - 0.15.0-6
- Use new OCaml macros
* Sat Jun 18 2022 Richard W.M. Jones <rjones@redhat.com> - 0.15.0-6
- OCaml 4.14.0 rebuild