## START: Set by rpmautospec ## (rpmautospec version 0.6.0) ## RPMAUTOSPEC: autorelease, autochangelog %define autorelease(e:s:pb:n) %{?-p:0.}%{lua: release_number = 27; base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}")); print(release_number + base_release_number - 1); }%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}} ## END: Set by rpmautospec # OCaml packages not built on i686 since OCaml 5 / Fedora 39. ExcludeArch: %{ix86} # There is also a separate test data repository for a different set of tests # that is distributed separately. %global giturl https://gitlab.com/irill/dose3 Name: ocaml-dose3 Version: 7.0.0 Release: %autorelease Summary: Framework for managing distribution packages and dependencies License: LGPL-3.0-or-later WITH OCaml-LGPL-linking-exception URL: http://www.mancoosi.org/software/ VCS: git:%{giturl}.git Source: %{giturl}/-/archive/%{version}/dose3-%{version}.tar.gz # Use oUnit2 instead of oUnit Patch: 0001-Use-ounit2.patch # We do not need stdlib-shims, which provides forward compatibility Patch: 0002-Do-not-depend-on-stdlib-shims.patch # Expose a dependency on the math library so RPM can see it Patch: 0003-Depend-on-the-math-library.patch # Changes for OCaml 5 compatibility Patch: 0004-OCaml-5-compatibility.patch # ocamlgraph 2.1.0 adds a blank line to the end of its output, breaking tests Patch: 0005-OCamlgraph-2.1.0-adds-a-newline.patch BuildRequires: ocaml BuildRequires: ocaml-dune BuildRequires: ocaml-base64-devel >= 3.4.0-1 BuildRequires: ocaml-camlbz2-devel BuildRequires: ocaml-camlp-streams-devel BuildRequires: ocaml-cudf-devel BuildRequires: ocaml-extlib-devel BuildRequires: ocaml-ocamlgraph-devel BuildRequires: ocaml-ounit-devel BuildRequires: ocaml-parmap-devel BuildRequires: ocaml-re-devel BuildRequires: ocaml-zip-devel BuildRequires: zlib-devel BuildRequires: perl, perl-generators # Test dependencies BuildRequires: dpkg BuildRequires: %{py3_dist pyyaml} # Needs latex for documentation. BuildRequires: tex(latex) BuildRequires: tex(comment.sty) BuildRequires: pandoc BuildRequires: graphviz BuildRequires: poetry BuildRequires: python3 BuildRequires: %{py3_dist sphinx} BuildRequires: %{py3_dist sphinx_rtd_theme} BuildRequires: %{py3_dist wheel} # Depend on pod2man, pod2html. BuildRequires: /usr/bin/pod2man BuildRequires: /usr/bin/pod2html %description Dose3 is a framework made of several OCaml libraries for managing distribution packages and their dependencies. Though not tied to any particular distribution, dose3 constitutes a pool of libraries which enable analyzing packages coming from various distributions. Besides basic functionalities for querying and setting package properties, dose3 also implements algorithms for solving more complex problems (monitoring package evolutions, correct and complete dependency resolution, repository-wide uninstallability checks). %package devel Summary: Development files for %{name} Requires: %{name} = %{version}-%{release} Requires: ocaml-base64-devel%{?_isa} Requires: ocaml-camlbz2-devel%{?_isa} Requires: ocaml-cudf-devel%{?_isa} Requires: ocaml-extlib-devel%{?_isa} Requires: ocaml-ocamlgraph-devel%{?_isa} Requires: ocaml-re-devel%{?_isa} Requires: ocaml-zip-devel%{?_isa} %description devel The %{name}-devel package contains libraries and signature files for developing applications that use %{name}. # Since these are applications, I think the correct name is "dose3-tools" # and not "ocaml-dose3-tools", but I'm happy to change it if necessary. %package -n dose3-tools Summary: Tools suite from the dose3 framework %description -n dose3-tools Dose3 is a framework made of several OCaml libraries for managing distribution packages and their dependencies. This package contains the tools shipped with the dose3 framework for manipulating packages of various formats. %prep %autosetup -p1 -n dose3-%{version} # Do not run linkcheck; the koji builders have no network access sed -i 's/html linkcheck/html/' doc/rtd/Makefile %build %dune_build # FIXME: parallel build does not work make -C doc %install %dune_install sed -i '\@%{_bindir}@d;\@%{_mandir}@d' .ofiles # Install manpages. mkdir -p %{buildroot}%{_mandir}/man1/ mkdir -p %{buildroot}%{_mandir}/man5/ mkdir -p %{buildroot}%{_mandir}/man8/ cp -a doc/manpages/*.8 %{buildroot}%{_mandir}/man8/ cp -a doc/manpages/*.5 %{buildroot}%{_mandir}/man5/ cp -a doc/manpages/*.1 %{buildroot}%{_mandir}/man1/ %check %dune_check %files -f .ofiles %license COPYING %doc CHANGES CREDITS README.architecture %files devel -f .ofiles-devel %license COPYING %files -n dose3-tools %license COPYING %doc doc/debcheck.primer/*.pdf %doc doc/apt-external-solvers.primer/*.pdf %doc doc/apt-cudf/ %{_bindir}/apt-cudf %{_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 ## START: Generated by rpmautospec * Wed Jul 17 2024 Jerry James - 7.0.0-27 - Fix the VCS field - Minor spec file simplifications * Wed Jun 19 2024 Richard W.M. Jones - 7.0.0-26 - OCaml 5.2.0 ppc64le fix * Wed May 29 2024 Richard W.M. Jones - 7.0.0-25 - OCaml 5.2.0 for Fedora 41 * Thu May 23 2024 Jerry James - 7.0.0-24 - Add VCS field * Thu Jan 25 2024 Fedora Release Engineering - 7.0.0-23 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Sun Jan 21 2024 Fedora Release Engineering - 7.0.0-22 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Mon Dec 18 2023 Richard W.M. Jones - 7.0.0-21 - OCaml 5.1.1 + s390x code gen fix for Fedora 40 * Tue Dec 12 2023 Richard W.M. Jones - 7.0.0-20 - OCaml 5.1.1 rebuild for Fedora 40 * Thu Oct 05 2023 Richard W.M. Jones - 7.0.0-19 - OCaml 5.1 rebuild for Fedora 40 * Thu Oct 05 2023 Jerry James - 7.0.0-18 - Drop unused rpm-devel dependency * Sun Sep 10 2023 Jerry James - 7.0.0-17 - Rebuild for ocaml-ocamlgraph 2.1.0 * Thu Jul 20 2023 Fedora Release Engineering - 7.0.0-16 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild * Wed Jul 12 2023 Richard W.M. Jones - 7.0.0-15 - OCaml 5.0 rebuild for Fedora 39 * Tue Jul 11 2023 Richard W.M. Jones - 7.0.0-14 - ExcludeArch i686 (https://lists.fedoraproject.org/archives/list/devel@lis ts.fedoraproject.org/message/SPML7CUBSZNI36NLXGVHEG7DNHU3EWOJ/) * Tue Jul 11 2023 Jerry James - 7.0.0-13 - OCaml 5.0.0 rebuild * Wed Feb 15 2023 Jerry James - 7.0.0-12 - Convert License tag to SPDX * Tue Jan 24 2023 Richard W.M. Jones - 7.0.0-11 - Rebuild OCaml packages for F38 * Thu Jan 19 2023 Fedora Release Engineering - 7.0.0-10 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild * Fri Jul 22 2022 Fedora Release Engineering - 7.0.0-9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild * Sun Jun 19 2022 Richard W.M. Jones - 7.0.0-8 - Use dune --release * Fri Feb 04 2022 Richard W.M. Jones - 7.0.0-7 - local build * Thu Jan 20 2022 Fedora Release Engineering - 7.0.0-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild * Fri Dec 31 2021 Jerry James - 7.0.0-5 - Rebuild for ocaml-zip 1.11 * Tue Oct 05 2021 Richard W.M. Jones - 7.0.0-4 - OCaml 4.13.1 build * Fri Oct 01 2021 Robin Lee - 7.0.0-3 - BR: /usr/bin/python * Fri Aug 27 2021 Jerry James - 7.0.0-1 - Version 7.0.0 * Thu Jul 22 2021 Fedora Release Engineering - 6.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild * Tue May 4 2021 Jerry James - 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 - 5.0.1-32.20200502git24316fe - OCaml 4.12.0 build * Tue Jan 26 2021 Fedora Release Engineering - 5.0.1-31.20200502git24316fe - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild * Thu Jan 21 2021 Richard W.M. Jones - 5.0.1-30.20200502git24316fe - Rebuild for new ocaml-extlib. - Depend on ocaml-base64 for Base64 (instead of ocaml-extlib which removed it). - Move to newer snapshot. * Tue Sep 01 2020 Richard W.M. Jones - 5.0.1-29.20180821git2c1b8df - OCaml 4.11.1 rebuild * Fri Aug 21 2020 Richard W.M. Jones - 5.0.1-28.20180821git2c1b8df - OCaml 4.11.0 rebuild * Tue Jul 28 2020 Fedora Release Engineering - 5.0.1-27.20180821git2c1b8df - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Sat May 30 2020 Richard W.M. Jones - 5.0.1-26.20180821git2c1b8df - Rebuild for updated ocaml-extlib (RHBZ#1837823). * Tue May 05 2020 Richard W.M. Jones - 5.0.1-25.20180821git2c1b8df - OCaml 4.11.0+dev2-2020-04-22 rebuild * Tue Apr 21 2020 Richard W.M. Jones - 5.0.1-24.20180821git2c1b8df - OCaml 4.11.0 pre-release attempt 2 * Sat Apr 04 2020 Richard W.M. Jones - 5.0.1-23.20180821git2c1b8df - Update all OCaml dependencies for RPM 4.16. * Thu Feb 27 2020 Richard W.M. Jones - 5.0.1-22.20180821git2c1b8df - OCaml 4.10.0 final. * Fri Feb 07 2020 Ben Rosser - 5.0.1-21.20180821git2c1b8df - Rebuild against ocamlgraph-1.8.8-14. * Wed Jan 29 2020 Fedora Release Engineering - 5.0.1-20.20180821git2c1b8df - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild * Sun Jan 19 2020 Richard W.M. Jones - 5.0.1-19.20180821git2c1b8df - OCaml 4.10.0+beta1 rebuild. * Fri Aug 16 2019 Richard W.M. Jones - 5.0.1-18.20180821git2c1b8df - OCaml 4.08.1 (final) rebuild. * Sat Aug 10 2019 Richard W.M. Jones - 5.0.1-17.20180821git2c1b8df - Rebuild against new ocaml-lablgtk. * Wed Jul 31 2019 Richard W.M. Jones - 5.0.1-16.20180821git2c1b8df - OCaml 4.08.1 (rc2) rebuild. * Thu Jul 25 2019 Fedora Release Engineering - 5.0.1-15.20180821git2c1b8df - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild * Mon Jun 10 22:13:21 CET 2019 Igor Gnatenko - 5.0.1-14.20180821git2c1b8df - Rebuild for RPM 4.15 * Mon Jun 10 15:42:03 CET 2019 Igor Gnatenko - 5.0.1-13.20180821git2c1b8df - Rebuild for RPM 4.15 * Fri Feb 01 2019 Fedora Release Engineering - 5.0.1-12.20180821git2c1b8df - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild * Wed Aug 22 2018 Ben Rosser - 5.0.1-11.20180821git2c1b8df - Fix build with ocaml-re 1.7.3. * Tue Aug 21 2018 Ben Rosser - 5.0.1-10.20180821git2c1b8df - Update to newer SCM (git) checkout. - Modify Makefile in prep section in order to install cmx files. * Fri Jul 13 2018 Fedora Release Engineering - 5.0.1-9.20171203git09392e2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild * Wed Jul 11 2018 Richard W.M. Jones - 5.0.1-8.20171203git09392e2 - OCaml 4.07.0 (final) rebuild. * Wed Jun 20 2018 Richard W.M. Jones - 5.0.1-7.20171203git09392e2 - Bump release and rebuild. * Wed Jun 20 2018 Richard W.M. Jones - 5.0.1-6.20171203git09392e2 - OCaml 4.07.0-rc1 rebuild. * Thu Feb 08 2018 Fedora Release Engineering - 5.0.1-5.20171203git09392e2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild * Sun Dec 03 2017 Ben Rosser 5.0.1-4.20171203git09392e2 - Update to latest git snapshot and fix safe-string issues (#1520039). * Sat Dec 02 2017 Richard W.M. Jones - 5.0.1-3 - OCaml 4.06.0 rebuild. * Fri Sep 01 2017 Ben Rosser 5.0.1-2 - Use configure macro to avoid specifying prefix, libdir, bindir by hand. - Remove Requires on main package from dose3-tools subpackage. * Tue Aug 15 2017 Ben Rosser 5.0.1-1 - There are far newer versions; package latest release. * Tue Aug 15 2017 Ben Rosser 4.2-2 - Successfully link against ocamlgraph. * Tue Aug 15 2017 Ben Rosser 4.2-1 - Initial package. ## END: Generated by rpmautospec