| |
@@ -1,14 +1,9 @@
|
| |
- # We need the ocaml bz2 bindings to run the unit tests via ounit.
|
| |
# There is also a separate test data repository for a different set of tests
|
| |
# that is distributed separately.
|
| |
|
| |
- # Currently packaging a snapshot to build with newer ocaml.
|
| |
- %global commit0 24316fe8532a529bf53703902d679a0cc3fea934
|
| |
- %global shortcommit0 %(c=%{commit0}; echo ${c:0:7})
|
| |
-
|
| |
Name: ocaml-dose3
|
| |
- Version: 5.0.1
|
| |
- Release: 32.20200502git%{shortcommit0}%{?dist}
|
| |
+ Version: 6.1
|
| |
+ Release: 1%{?dist}
|
| |
Summary: Framework for managing distribution packages and dependencies
|
| |
|
| |
%global libname %(echo %{name} | sed -e 's/^ocaml-//')
|
| |
@@ -17,30 +12,24 @@
|
| |
License: LGPLv3+ with exceptions
|
| |
URL: http://www.mancoosi.org/software/
|
| |
|
| |
- #Source0: https://gforge.inria.fr/frs/download.php/file/36063/dose3-{version}.tar.gz
|
| |
- Source0: https://scm.gforge.inria.fr/anonscm/gitweb?p=dose/dose.git;a=snapshot;h=%{commit0};sf=tgz#/dose-%{shortcommit0}.tar.gz
|
| |
-
|
| |
- # Patches.
|
| |
- # All sent upstream 2021-01-21.
|
| |
- Patch1: 0001-Enable-use-of-ocaml-base64-to-provide-Base64-functio.patch
|
| |
- Patch2: 0002-Enable-debuginfo-generation.patch
|
| |
- Patch3: 0003-Use-ounit2.patch
|
| |
- Patch4: 0004-Makefile.config.in-Disable-runtime-variant-pic.patch
|
| |
+ Source0: https://gitlab.com/irill/dose3/-/archive/%{version}/%{libname}-%{version}.tar.gz
|
| |
|
| |
- BuildRequires: make
|
| |
- BuildRequires: autoconf, automake
|
| |
+ # Use oUnit2 instead of oUnit
|
| |
+ Patch0: 0001-Use-ounit2.patch
|
| |
+ # We do not need stdlib-shims, which provides backwards compatibility
|
| |
+ Patch1: 0002-Do-not-depend-on-stdlib-shims.patch
|
| |
|
| |
BuildRequires: ocaml
|
| |
- BuildRequires: ocaml-ocamlbuild
|
| |
- BuildRequires: ocaml-ocamldoc
|
| |
+ BuildRequires: ocaml-dune
|
| |
+ BuildRequires: ocaml-odoc
|
| |
BuildRequires: ocaml-ocamlgraph-devel
|
| |
- BuildRequires: ocaml-findlib-devel
|
| |
+ BuildRequires: ocaml-findlib
|
| |
BuildRequires: ocaml-extlib-devel
|
| |
- BuildRequires: ocaml-expat-devel
|
| |
BuildRequires: ocaml-re-devel
|
| |
- BuildRequires: ocaml-seq-devel
|
| |
BuildRequires: ocaml-cudf-devel
|
| |
+ BuildRequires: ocaml-parmap-devel
|
| |
BuildRequires: ocaml-cppo
|
| |
+ BuildRequires: ocaml-camlbz2-devel
|
| |
BuildRequires: ocaml-zip-devel
|
| |
BuildRequires: ocaml-ounit-devel
|
| |
BuildRequires: ocaml-base64-devel >= 3.4.0-1
|
| |
@@ -50,11 +39,19 @@
|
| |
|
| |
BuildRequires: perl, perl-generators
|
| |
|
| |
+ # Test dependencies
|
| |
+ BuildRequires: dpkg
|
| |
+ BuildRequires: %{py3_dist pyyaml}
|
| |
+
|
| |
# Needs latex for documentation.
|
| |
- BuildRequires: texlive
|
| |
- BuildRequires: texlive-comment
|
| |
- BuildRequires: hevea
|
| |
+ BuildRequires: tex(latex)
|
| |
+ BuildRequires: tex(comment.sty)
|
| |
+ BuildRequires: pandoc
|
| |
BuildRequires: graphviz
|
| |
+ BuildRequires: poetry
|
| |
+ BuildRequires: %{py3_dist sphinx}
|
| |
+ BuildRequires: %{py3_dist sphinx_rtd_theme}
|
| |
+ BuildRequires: %{py3_dist wheel}
|
| |
|
| |
# Depend on pod2man, pod2html.
|
| |
BuildRequires: /usr/bin/pod2man
|
| |
@@ -94,30 +91,28 @@
|
| |
for manipulating packages of various formats.
|
| |
|
| |
%prep
|
| |
- %autosetup -p1 -n dose-%{shortcommit0} #dose3-%{version}
|
| |
- # Patches touch configure.ac.
|
| |
- autoreconf -i
|
| |
+ %autosetup -p1 -n %{libname}-%{version}
|
| |
|
| |
- # I think we want to package the .cmx files if possible.
|
| |
- sed "s/*.cmx /*.cmxignore /g" -i Makefile
|
| |
- sed "s,*.cmxs,*.cmxs _build/doselibs/*.cmx,g" -i Makefile
|
| |
- sed "s,cmxa cmxs,cmx cmxa cmxs,g" -i Makefile.config.in
|
| |
-
|
| |
- # Fix an issue with re 1.7.3+
|
| |
- sed "s/module Str = Re_str/module Str = Re.Str/g" -i rpm/version.ml
|
| |
+ # Do not run linkcheck; the koji builders have no network access
|
| |
+ sed -i 's/html linkcheck/html/' doc/rtd/Makefile
|
| |
|
| |
%build
|
| |
- %configure --with-zip --with-oUnit --with-rpm4 --with-xml
|
| |
-
|
| |
- # Build fails when built with %{?_smp_mflags} and thus we can't use the magic macro.
|
| |
- make
|
| |
- make doc man
|
| |
+ dune build %{?_smp_mflags} --display=verbose @install
|
| |
+ dune build %{?_smp_mflags} @doc
|
| |
+ # FIXME: parallel build does not work
|
| |
+ make -C doc
|
| |
|
| |
%install
|
| |
- # Apparently, the make_install macro doesn't work on rawhide?
|
| |
- # fails with something like: install -- invalid option a
|
| |
- # So...
|
| |
- make install DESTDIR=%{buildroot}
|
| |
+ dune install --destdir=%{buildroot}
|
| |
+
|
| |
+ # We do not want the dune markers
|
| |
+ find _build/default/_doc/_html -name .dune-keep -delete
|
| |
+
|
| |
+ # 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
|
| |
|
| |
# Install manpages.
|
| |
mkdir -p %{buildroot}%{_mandir}/man1/
|
| |
@@ -127,35 +122,42 @@
|
| |
cp -a doc/manpages/*.5 %{buildroot}%{_mandir}/man5/
|
| |
cp -a doc/manpages/*.1 %{buildroot}%{_mandir}/man1/
|
| |
|
| |
- # Rewrite symlinks.
|
| |
- rm -f %{buildroot}%{_bindir}/rpmcheck
|
| |
- rm -f %{buildroot}%{_bindir}/debcheck
|
| |
- rm -f %{buildroot}%{_bindir}/eclipsecheck
|
| |
- ln -s %{_bindir}/distcheck %{buildroot}%{_bindir}/rpmcheck
|
| |
- ln -s %{_bindir}/distcheck %{buildroot}%{_bindir}/debcheck
|
| |
- ln -s %{_bindir}/distcheck %{buildroot}%{_bindir}/eclipsecheck
|
| |
+ %check
|
| |
+ dune runtest
|
| |
|
| |
%files
|
| |
%license COPYING
|
| |
- %doc README.architecture
|
| |
- %{_libdir}/ocaml/%{libname}
|
| |
+ %doc CHANGES CREDITS README.architecture
|
| |
+ %dir %{_libdir}/ocaml/%{libname}/
|
| |
+ %dir %{_libdir}/ocaml/%{libname}/algo/
|
| |
+ %dir %{_libdir}/ocaml/%{libname}/common/
|
| |
+ %dir %{_libdir}/ocaml/%{libname}/debian/
|
| |
+ %dir %{_libdir}/ocaml/%{libname}/doseparse/
|
| |
+ %dir %{_libdir}/ocaml/%{libname}/npm/
|
| |
+ %dir %{_libdir}/ocaml/%{libname}/opam2/
|
| |
+ %dir %{_libdir}/ocaml/%{libname}/opencsw/
|
| |
+ %dir %{_libdir}/ocaml/%{libname}/pef/
|
| |
+ %dir %{_libdir}/ocaml/%{libname}/versioning/
|
| |
+ %{_libdir}/ocaml/%{libname}/META
|
| |
+ %{_libdir}/ocaml/%{libname}/*/*.cma
|
| |
+ %{_libdir}/ocaml/%{libname}/*/*.cmi
|
| |
%ifarch %{ocaml_native_compiler}
|
| |
- %exclude %{_libdir}/ocaml/*/*.a
|
| |
- %exclude %{_libdir}/ocaml/*/*.cmx
|
| |
- %exclude %{_libdir}/ocaml/*/*.cmxa
|
| |
+ %{_libdir}/ocaml/%{libname}/*/*.cmxs
|
| |
%endif
|
| |
- %exclude %{_libdir}/ocaml/*/*.cmi
|
| |
- %{_libdir}/ocaml/stublibs/*.so
|
| |
- %{_libdir}/ocaml/stublibs/*.so.owner
|
| |
|
| |
%files devel
|
| |
%license COPYING
|
| |
+ %doc _build/default/_doc/_html/*
|
| |
+ %{_libdir}/ocaml/%{libname}/dune-package
|
| |
+ %{_libdir}/ocaml/%{libname}/opam
|
| |
%ifarch %{ocaml_native_compiler}
|
| |
- %{_libdir}/ocaml/*/*.a
|
| |
- %{_libdir}/ocaml/*/*.cmx
|
| |
- %{_libdir}/ocaml/*/*.cmxa
|
| |
+ %{_libdir}/ocaml/%{libname}/*/*.a
|
| |
+ %{_libdir}/ocaml/%{libname}/*/*.cmx
|
| |
+ %{_libdir}/ocaml/%{libname}/*/*.cmxa
|
| |
%endif
|
| |
- %{_libdir}/ocaml/*/*.cmi
|
| |
+ %{_libdir}/ocaml/%{libname}/*/*.cmt
|
| |
+ %{_libdir}/ocaml/%{libname}/*/*.cmti
|
| |
+ %{_libdir}/ocaml/%{libname}/*/*.mli
|
| |
|
| |
%files -n dose3-tools
|
| |
%license COPYING
|
| |
@@ -163,20 +165,29 @@
|
| |
%doc doc/apt-external-solvers.primer/*.pdf
|
| |
%doc doc/apt-cudf/
|
| |
%{_bindir}/apt-cudf
|
| |
- %{_bindir}/ceve
|
| |
- %{_bindir}/challenged
|
| |
- %{_bindir}/deb-buildcheck
|
| |
- %{_bindir}/deb-coinstall
|
| |
- %{_bindir}/debcheck
|
| |
- %{_bindir}/eclipsecheck
|
| |
- %{_bindir}/distcheck
|
| |
- %{_bindir}/outdated
|
| |
- %{_bindir}/rpmcheck
|
| |
+ %{_bindir}/dose-builddebcheck
|
| |
+ %{_bindir}/dose-ceve
|
| |
+ %{_bindir}/dose-challenged
|
| |
+ %{_bindir}/dose-deb-coinstall
|
| |
+ %{_bindir}/dose-distcheck
|
| |
+ %{_bindir}/dose-outdated
|
| |
%{_mandir}/man1/*.1*
|
| |
%{_mandir}/man5/*.5*
|
| |
%{_mandir}/man8/*.8*
|
| |
|
| |
%changelog
|
| |
+ * Tue May 4 2021 Jerry James <loganjerry@gmail.com> - 6.1-1
|
| |
+ - Version 6.1
|
| |
+ - Drop upstreamed patches 0001, 0002, and 0004
|
| |
+ - Rename patch 0003 to 0001
|
| |
+ - Add 0002-Do-not-depend-on-stdlib-shims.patch
|
| |
+ - Remove unneeded BRs: autoconf, automake, make, ocaml-ocamlbuild,
|
| |
+ ocaml-ocamldoc, ocaml-expat-devel, ocaml-seq-devel, hevea
|
| |
+ - Add BRs: ocaml-dune, ocaml-odoc, ocaml-parmap-devel, ocaml-camlbz2-devel,
|
| |
+ dpkg, pandoc, poetry, and python3 packages poetry, sphinx, sphinx_rtd_theme,
|
| |
+ and wheel
|
| |
+ - Build, install, and test with dune
|
| |
+
|
| |
* Mon Mar 1 21:40:04 GMT 2021 Richard W.M. Jones <rjones@redhat.com> - 5.0.1-32.20200502git24316fe
|
| |
- OCaml 4.12.0 build
|
| |
|
| |
I would like to update ocaml-ocamlgraph to version 2.0.0. The frama-c package is ready to go; the current version works with both ocamlgraph 1.8.8 and 2.0.0. This pull request is to update ocaml-dose3 to a version that supports ocamlgraph 2.0.0. If you merge this request, do not build until I get the new ocamlgraph version built in Rawhide. I am happy to do the build for you, if you prefer.
For a look at all of the builds involved, see https://copr.fedorainfracloud.org/coprs/jjames/ocamlgraph/.