diff --git a/.fmf/version b/.fmf/version deleted file mode 100644 index d00491f..0000000 --- a/.fmf/version +++ /dev/null @@ -1 +0,0 @@ -1 diff --git a/ocaml-dune-debuginfo.patch b/ocaml-dune-debuginfo.patch index 906cec4..8917c71 100644 --- a/ocaml-dune-debuginfo.patch +++ b/ocaml-dune-debuginfo.patch @@ -1,8 +1,8 @@ ---- dune-3.20.0/src/dune_lang/dune_project.ml.orig 2025-08-19 00:28:44.000000000 -0600 -+++ dune-3.20.0/src/dune_lang/dune_project.ml 2025-08-21 20:42:51.793195598 -0600 -@@ -425,7 +425,7 @@ let interpret_lang_and_extensions ~(lang - let filename = "dune-project" +--- dune-3.11.0/src/dune_rules/dune_project.ml.orig 2023-09-23 19:52:10.552217543 -0600 ++++ dune-3.11.0/src/dune_rules/dune_project.ml 2023-09-23 22:03:32.641347776 -0600 +@@ -455,7 +455,7 @@ let filename = "dune-project" let opam_file_location_default ~lang:_ = `Relative_to_project + let implicit_transitive_deps_default ~lang:_ = true let wrapped_executables_default ~(lang : Lang.Instance.t) = lang.version >= (2, 0) -let map_workspace_root_default ~(lang : Lang.Instance.t) = lang.version >= (3, 0) +let map_workspace_root_default ~(lang : Lang.Instance.t) = false diff --git a/ocaml-dune.spec b/ocaml-dune.spec index 9409c70..9ac6569 100644 --- a/ocaml-dune.spec +++ b/ocaml-dune.spec @@ -13,15 +13,14 @@ %global giturl https://github.com/ocaml/dune Name: ocaml-dune -Version: 3.20.2 -Release: 2%{?dist} +Version: 3.17.2 +Release: 1%{?dist} Summary: Composable build system for OCaml and Reason # Dune itself is MIT. Some bundled libraries have a different license: -# BSD-2-Clause: -# - vendor/ocaml-blake3-mini # ISC: # - vendor/cmdliner +# - vendor/fmt # - vendor/notty # - vendor/sha # - vendor/uutf @@ -32,23 +31,20 @@ Summary: Composable build system for OCaml and Reason # - vendor/opam # - vendor/opam-file-format # - vendor/re -# LGPL-2.1-or-later -# - src/dune_pkg/opam_solver.* -# - src/sat/hash_set.* -# - src/sat/sat.* # MIT: # - vendor/build_path_prefix_map +# - vendor/fiber # - vendor/lwd # - vendor/spawn -License: MIT AND BSD-2-Clause AND ISC AND LGPL-2.1-only AND LGPL-2.1-only WITH OCaml-LGPL-linking-exception AND LGPL-2.1-or-later +License: MIT AND ISC AND LGPL-2.1-only AND LGPL-2.1-only WITH OCaml-LGPL-linking-exception URL: https://dune.build VCS: git:%{giturl}.git Source: %{giturl}/archive/%{version}/dune-%{version}.tar.gz # When building without lwt, remove libraries that need it -Patch0: %{name}-no-lwt.patch +Patch: %{name}-no-lwt.patch # Temporary workaround for broken debuginfo (rhbz#2168932) # See https://github.com/ocaml/dune/issues/6929 -Patch1: %{name}-debuginfo.patch +Patch: %{name}-debuginfo.patch # OCaml packages not built on i686 since OCaml 5 / Fedora 39. ExcludeArch: %{ix86} @@ -80,12 +76,13 @@ BuildRequires: ocaml-lwt-devel >= 5.6.0 # See https://github.com/ocaml/dune/issues/220 Provides: bundled(ocaml-build-path-prefix-map) = 0.3 Provides: bundled(ocaml-cmdliner) = 1.2.0 +Provides: bundled(ocaml-fiber) = 3.7.0 +Provides: bundled(ocaml-fmt) = 0.8.10 Provides: bundled(ocaml-incremental-cycles) = 1e2030a5d5183d84561cde142eecca40e03db2a3 Provides: bundled(ocaml-inotify) = 2.3 Provides: bundled(ocaml-lwd) = 0.3 Provides: bundled(ocaml-notty) = 0.2.3 -Provides: bundled(ocaml-blake3-mini) = c6aa40e5f1973c2e6b736660ce2c8dcd3b3f9c9f -Provides: bundled(ocaml-opam) = 2.2.0 +Provides: bundled(ocaml-opam) = 2.2.0~alpha2 Provides: bundled(ocaml-opam-file-format) = 2.1.6 Provides: bundled(ocaml-re) = 1.11.0 Provides: bundled(ocaml-sha) = 1.15.4 @@ -169,11 +166,8 @@ system, a mode to edit dune files, and flymake support for dune files. %package action-plugin Summary: API for writing dynamic dune actions License: MIT +Requires: %{name}%{?_isa} = %{version}-%{release} Requires: %{name}-glob%{?_isa} = %{version}-%{release} -Requires: %{name}-rpc%{?_isa} = %{version}-%{release} -Requires: ocaml-dyn%{?_isa} = %{version}-%{release} -Requires: ocaml-ordering%{?_isa} = %{version}-%{release} -Requires: ocaml-stdune%{?_isa} = %{version}-%{release} %description action-plugin This experimental library provides an API for writing dynamic Dune @@ -186,14 +180,6 @@ Summary: Development files for %{name}-action-plugin License: MIT Requires: %{name}-action-plugin%{?_isa} = %{version}-%{release} Requires: %{name}-glob-devel%{?_isa} = %{version}-%{release} -Requires: %{name}-rpc-devel%{?_isa} = %{version}-%{release} -Requires: ocaml-dyn-devel%{?_isa} = %{version}-%{release} -Requires: ocaml-ordering-devel%{?_isa} = %{version}-%{release} -Requires: ocaml-stdune-devel%{?_isa} = %{version}-%{release} -%if !0%{?rhel} -Requires: ocaml-csexp-devel%{?_isa} -Requires: ocaml-pp-devel%{?_isa} -%endif %description action-plugin-devel The ocaml-dune-action-plugin-devel package contains libraries and @@ -203,6 +189,7 @@ ocaml-dune-action-plugin. %package build-info Summary: Embed build information in an executable License: MIT +Requires: %{name}%{?_isa} = %{version}-%{release} %description build-info The build-info library allows access to information about how an @@ -223,6 +210,7 @@ files for developing applications that use ocaml-dune-build-info. %package configurator Summary: Helper library for gathering system configuration License: MIT +Requires: %{name}%{?_isa} = %{version}-%{release} Requires: ocaml-stdune%{?_isa} = %{version}-%{release} %description configurator @@ -241,9 +229,10 @@ Summary: Development files for %{name}-configurator License: MIT Requires: %{name}-configurator%{?_isa} = %{version}-%{release} Requires: ocaml-stdune-devel%{?_isa} = %{version}-%{release} -%if !0%{?rhel} -Requires: ocaml-csexp-devel%{?_isa} -%endif + +# This can be removed when F40 reaches EOL +Obsoletes: %{name}-devel < 2.9.1-4 +Provides: %{name}-devel = %{version}-%{release} %description configurator-devel The ocaml-dune-configurator-devel package contains libraries and @@ -253,9 +242,8 @@ ocaml-dune-configurator. %package glob Summary: Parser and interpreter for dune language globs License: MIT +Requires: %{name}%{?_isa} = %{version}-%{release} Requires: %{name}-private-libs%{?_isa} = %{version}-%{release} -Requires: ocaml-dyn%{?_isa} = %{version}-%{release} -Requires: ocaml-ordering%{?_isa} = %{version}-%{release} Requires: ocaml-stdune%{?_isa} = %{version}-%{release} %description glob @@ -267,12 +255,7 @@ Summary: Development files for %{name}-glob License: MIT Requires: %{name}-glob%{?_isa} = %{version}-%{release} Requires: %{name}-private-libs-devel%{?_isa} = %{version}-%{release} -Requires: ocaml-dyn-devel%{?_isa} = %{version}-%{release} -Requires: ocaml-ordering-devel%{?_isa} = %{version}-%{release} Requires: ocaml-stdune-devel%{?_isa} = %{version}-%{release} -%if !0%{?rhel} -Requires: ocaml-pp-devel%{?_isa} -%endif %description glob-devel The ocaml-dune-glob-devel package contains libraries and signature files @@ -281,6 +264,8 @@ for developing applications that use ocaml-dune-glob. %package private-libs Summary: Private dune libraries License: MIT +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: ocaml-stdune%{?_isa} = %{version}-%{release} %description private-libs This package contains code that is shared between various dune-xxx @@ -291,6 +276,7 @@ no stability guarantee. Summary: Development files for %{name}-private-libs License: MIT Requires: %{name}-private-libs%{?_isa} = %{version}-%{release} +Requires: ocaml-dyn-devel%{?_isa} = %{version}-%{release} %description private-libs-devel The ocaml-dune-private-libs-devel package contains libraries and @@ -299,8 +285,7 @@ signature files for other dune packages. Do not use. %package rpc Summary: Communicate with dune using rpc License: MIT -Requires: ocaml-dyn%{?_isa} = %{version}-%{release} -Requires: ocaml-ordering%{?_isa} = %{version}-%{release} +Requires: %{name}%{?_isa} = %{version}-%{release} Requires: ocaml-stdune%{?_isa} = %{version}-%{release} Requires: ocaml-xdg%{?_isa} = %{version}-%{release} @@ -311,14 +296,8 @@ This package contains a library used to communicate with dune over rpc. Summary: Development files for %{name}-rpc License: MIT Requires: %{name}-rpc%{?_isa} = %{version}-%{release} -Requires: ocaml-dyn-devel%{?_isa} = %{version}-%{release} -Requires: ocaml-ordering-devel%{?_isa} = %{version}-%{release} Requires: ocaml-stdune-devel%{?_isa} = %{version}-%{release} Requires: ocaml-xdg-devel%{?_isa} = %{version}-%{release} -%if !0%{?rhel} -Requires: ocaml-csexp-devel%{?_isa} -Requires: ocaml-pp-devel%{?_isa} -%endif %description rpc-devel The ocaml-dune-rpc-devel package contains libraries and signature files @@ -328,6 +307,7 @@ for developing applications that use ocaml-rpc. %package rpc-lwt Summary: Communicate with dune using rpc and Lwt License: MIT +Requires: %{name}%{?_isa} = %{version}-%{release} Requires: %{name}-rpc%{?_isa} = %{version}-%{release} %description rpc-lwt @@ -352,6 +332,7 @@ files for developing applications that use ocaml-rpc-lwt. %package site Summary: Embed location information inside executables and libraries License: MIT +Requires: %{name}%{?_isa} = %{version}-%{release} Requires: %{name}-private-libs%{?_isa} = %{version}-%{release} %description site @@ -371,6 +352,7 @@ for developing applications that use ocaml-dune-site. %package -n ocaml-chrome-trace Summary: Chrome trace event generation library License: MIT +Requires: %{name}%{?_isa} = %{version}-%{release} %description -n ocaml-chrome-trace Library to output trace data to a file in Chrome's trace_event format. @@ -389,6 +371,7 @@ developing applications that use ocaml-dyn. %package -n ocaml-dyn Summary: Dynamic types License: MIT +Requires: %{name}%{?_isa} = %{version}-%{release} Requires: ocaml-ordering%{?_isa} = %{version}-%{release} %description -n ocaml-dyn @@ -399,6 +382,9 @@ Summary: Development files for ocaml-dyn License: MIT Requires: ocaml-dyn%{?_isa} = %{version}-%{release} Requires: ocaml-ordering-devel%{?_isa} = %{version}-%{release} +%if !0%{?rhel} +Requires: ocaml-pp-devel%{?_isa} +%endif %description -n ocaml-dyn-devel The ocaml-dyn-devel package contains libraries and signature files for @@ -407,6 +393,7 @@ developing applications that use ocaml-dyn. %package -n ocaml-ocamlc-loc Summary: Parse OCaml compiler output into structured form License: MIT +Requires: %{name}%{?_isa} = %{version}-%{release} Requires: ocaml-dyn%{?_isa} = %{version}-%{release} %description -n ocaml-ocamlc-loc @@ -425,6 +412,7 @@ for developing applications that use ocaml-ocamlc-loc. %package -n ocaml-ordering Summary: Element ordering License: MIT +Requires: %{name}%{?_isa} = %{version}-%{release} %description -n ocaml-ordering Element ordering in OCaml. @@ -441,8 +429,8 @@ for developing applications that use ocaml-ordering. %package -n ocaml-stdune Summary: Dune's unstable standard library License: MIT +Requires: %{name}%{?_isa} = %{version}-%{release} Requires: ocaml-dyn%{?_isa} = %{version}-%{release} -Requires: ocaml-ordering%{?_isa} = %{version}-%{release} %description -n ocaml-stdune This package contains Dune's unstable standard library. @@ -452,10 +440,8 @@ Summary: Development files for ocaml-stdune License: MIT Requires: ocaml-stdune%{?_isa} = %{version}-%{release} Requires: ocaml-dyn-devel%{?_isa} = %{version}-%{release} -Requires: ocaml-ordering-devel%{?_isa} = %{version}-%{release} %if !0%{?rhel} Requires: ocaml-csexp-devel%{?_isa} -Requires: ocaml-pp-devel%{?_isa} %endif %description -n ocaml-stdune-devel @@ -465,6 +451,7 @@ for developing applications that use ocaml-stdune. %package -n ocaml-xdg Summary: XDG Base Directory Specification License: MIT +Requires: %{name}%{?_isa} = %{version}-%{release} %description -n ocaml-xdg This package contains the XDG Base Directory Specification. @@ -488,7 +475,6 @@ rm -fr otherlibs/dune-rpc-lwt dune-rpc-lwt.opam %build ./configure \ - --prefix %{_prefix} \ --bindir %{_bindir} \ --datadir %{_datadir} \ --docdir %{_prefix}/doc \ @@ -604,44 +590,9 @@ cd - %files -n ocaml-xdg-devel -f .ofiles-xdg-devel %changelog -* Mon Oct 13 2025 Richard W.M. Jones - 3.20.2-2 -- OCaml 5.4.0 rebuild - -* Tue Sep 16 2025 Jerry James - 3.20.2-1 -- Version 3.20.2 - -* Mon Aug 25 2025 Jerry James - 3.20.1-1 -- Version 3.20.1 - -* Fri Aug 22 2025 Jerry James - 3.20.0-1 -- Version 3.20.0 - -* Wed Jul 23 2025 Jerry James - 3.19.1-2 -- Migrate tests from STI to TMT (rhbz#2382985) - -* Wed Jun 11 2025 Jerry James - 3.19.1-1 -- Version 3.19.1 - -* Fri May 23 2025 Jerry James - 3.19.0-1 -- Version 3.19.0 - -* Fri May 02 2025 Jerry James - 3.18.2-1 -- Version 3.18.2 - -* Fri Apr 18 2025 Jerry James - 3.18.1-1 -- Version 3.18.1 - -* Thu Apr 3 2025 Jerry James - 3.18.0-1 -- Version 3.18.0 - -* Thu Jan 23 2025 Jerry James - 3.17.2-1 +* Tue Jan 28 2025 Jerry James - 3.17.2-1 +- OCaml 5.2.1 rebuild for Fedora 41 - Version 3.17.2 - -* Fri Jan 17 2025 Fedora Release Engineering - 3.17.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild - -* Thu Dec 26 2024 Jerry James - 3.17.1-1 -- Version 3.17.1 - Update License field for changes in vendored dependencies - Drop upstreamed furo theme patch diff --git a/plans.fmf b/plans.fmf deleted file mode 100644 index 9337313..0000000 --- a/plans.fmf +++ /dev/null @@ -1,10 +0,0 @@ -summary: Run all tests -discover: - how: fmf -execute: - how: tmt -prepare: - how: install - package: - - ocaml - - ocaml-dune diff --git a/sources b/sources index 828aee6..1650c5e 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (dune-3.20.2.tar.gz) = efb4376e03a3e760ee230c22ba8ac788623382437d9e3551fdd6bacdca1c6aa2db90246feb011d3d0e7ba3afa47161ebd06c80cfb24e357a82f7764bf003e355 +SHA512 (dune-3.17.2.tar.gz) = 8feaf89c5bada83d840e6a1e42ae9308375b07dabc2363015b667bcff638dd78acd526c1a43dd4730ab675b4828f7304e503b97e9f53397e73ed4e644693f260 diff --git a/tests/main.fmf b/tests/main.fmf deleted file mode 100644 index a5f5b31..0000000 --- a/tests/main.fmf +++ /dev/null @@ -1,2 +0,0 @@ -summary: Basic test -test: ./basic-test.sh diff --git a/tests/tests.yml b/tests/tests.yml new file mode 100755 index 0000000..6d126cf --- /dev/null +++ b/tests/tests.yml @@ -0,0 +1,12 @@ +- hosts: localhost + roles: + - role: standard-test-basic + tags: + - classic + required_packages: + - ocaml + - ocaml-dune + tests: + - simple: + dir: . + run: ./basic-test.sh