diff --git a/.gitignore b/.gitignore index ba78ab2..b228034 100644 --- a/.gitignore +++ b/.gitignore @@ -3,4 +3,3 @@ calendar-2.01.1.tar.gz /calendar-2.03.1.tar.gz /calendar-2.03.2.tar.gz /calendar-2.04.tar.gz -/calendar-3.0.0.tar.gz diff --git a/calendar-2.03.2-enable-debug.patch b/calendar-2.03.2-enable-debug.patch new file mode 100644 index 0000000..6fc0d02 --- /dev/null +++ b/calendar-2.03.2-enable-debug.patch @@ -0,0 +1,11 @@ +--- calendar-2.03.2/Makefile.in.old 2013-09-14 16:15:43.760253519 +0100 ++++ calendar-2.03.2/Makefile.in 2013-09-14 16:16:03.233279962 +0100 +@@ -86,7 +86,7 @@ + + CAMLIBS = $(addprefix -I , $(DIRS)) + +-CAMLFLAGS= $(CAMLIBS) ++CAMLFLAGS= -g $(CAMLIBS) + BYTEFLAGS= $(CAMLFLAGS) + LINK_OPTFLAGS = $(CAMLFLAGS) -noassert + OPTFLAGS = $(LINK_OPTFLAGS) -for-pack CalendarLib diff --git a/gating.yaml b/gating.yaml deleted file mode 100755 index 2c7ed80..0000000 --- a/gating.yaml +++ /dev/null @@ -1,6 +0,0 @@ ---- !Policy -product_versions: - - rhel-* -decision_context: osci_compose_gate -rules: - - !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional} diff --git a/ocaml-calendar-timezone-test.patch b/ocaml-calendar-timezone-test.patch deleted file mode 100644 index ca92b25..0000000 --- a/ocaml-calendar-timezone-test.patch +++ /dev/null @@ -1,33 +0,0 @@ -When the tests are executed in Mountain Standard Time, the timezone test fails: - -ASSERT gap g6 Local = gap g6 UTC + gap UTC Local -File "tests/test_timezone.ml", line 37, character 2: -FAIL gap g6 Local = gap g6 UTC + gap UTC Local - - Expected: `11' - Received: `-13' - ---- calendar-3.0.0/tests/test_timezone.ml.orig 2022-10-11 09:39:06.000000000 -0600 -+++ calendar-3.0.0/tests/test_timezone.ml 2024-12-13 11:20:28.349298798 -0700 -@@ -27,6 +27,12 @@ open Time_Zone;; - - let tz = Alcotest.testable (Fmt.always "timezone") (=) ;; - -+let make_in_bounds x = -+ let y = x mod 24 in -+ if y < -12 then y + 24 -+ else if y > 11 then y - 24 -+ else y -+ - let test () = - change UTC; - Alcotest.(check tz) "current () = UTC" UTC (current ()); -@@ -36,7 +42,7 @@ let test () = - let g6 = UTC_Plus 6 in - Alcotest.(check int) - "gap g6 Local = gap g6 UTC + gap UTC Local" -- (gap g6 Local) (gap g6 UTC + gap UTC Local); -+ (gap g6 Local) (make_in_bounds (gap g6 UTC + gap UTC Local)); - Gen_test.test_exn (lazy (change (UTC_Plus 13))) "change 13"; - Gen_test.test_exn (lazy (change (UTC_Plus (-15)))) "change (-15)"; - change (UTC_Plus 4); diff --git a/ocaml-calendar.spec b/ocaml-calendar.spec index 41b5b2c..b429f75 100644 --- a/ocaml-calendar.spec +++ b/ocaml-calendar.spec @@ -1,37 +1,27 @@ -# OCaml packages not built on i686 since OCaml 5 / Fedora 39. -ExcludeArch: %{ix86} - %ifnarch %{ocaml_native_compiler} %global debug_package %{nil} %endif -# ocaml-alcotest requires ocaml-astring, ocaml-cmdliner, ocaml-fmt, and ocaml-uutf, -# none of which are otherwise needed for building the OCaml-dependent packages -# found in RHEL and ELN. We want to avoid the extra dependencies there. -%bcond tests %[!0%{?rhel}] - -%global giturl https://github.com/ocaml-community/calendar - Name: ocaml-calendar -Epoch: 1 -Version: 3.0.0 -Release: 19%{?dist} +Version: 2.04 +Release: 28%{?dist}.1 Summary: Objective Caml library for managing dates and times -License: LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception +License: LGPLv2 -URL: https://ocaml-community.github.io/calendar/ -VCS: git:%{giturl}.git -Source0: %{giturl}/archive/v%{version}/calendar-%{version}.tar.gz -# Work around https://github.com/ocaml-community/calendar/issues/43 -Patch: %{name}-timezone-test.patch +URL: http://calendar.forge.ocamlcore.org/ +Source0: https://forge.ocamlcore.org/frs/download.php/1481/calendar-2.04.tar.gz -BuildRequires: ocaml >= 4.03 -BuildRequires: ocaml-dune >= 1.0 -BuildRequires: ocaml-re-devel >= 1.7.2 +Patch1: calendar-2.03.2-enable-debug.patch -%if %{with tests} -BuildRequires: ocaml-alcotest-devel -%endif +BuildRequires: ocaml >= 4.00.1 +BuildRequires: ocaml-findlib-devel >= 1.3.3-3 +BuildRequires: ocaml-ocamldoc +BuildRequires: gawk + +# Ignore all generated modules *except* CalendarLib, since everything +# now appears in that namespace. +%global __ocaml_requires_opts -i Calendar_builder -i Calendar_sig -i Date -i Date_sig -i Fcalendar -i Ftime -i Period -i Printer -i Time -i Time_sig -i Time_Zone -i Utils -i Version +%global __ocaml_provides_opts -i Calendar_builder -i Calendar_sig -i Date -i Date_sig -i Fcalendar -i Ftime -i Period -i Printer -i Time -i Time_sig -i Time_Zone -i Utils -i Version %description @@ -40,7 +30,7 @@ Objective Caml library for managing dates and times. %package devel Summary: Development files for %{name} -Requires: %{name}%{?_isa} = %{epoch}:%{version}-%{release} +Requires: %{name} = %{version}-%{release} %description devel @@ -49,147 +39,46 @@ developing applications that use %{name}. %prep -%autosetup -n calendar-%{version} -p1 +%setup -q -n calendar-%{version} +%patch1 -p1 %build -%dune_build +./configure --libdir=%{_libdir} +make +make doc + +mv TODO TODO.old +iconv -f iso-8859-1 -t utf-8 < TODO.old > TODO %install -%dune_install +export DESTDIR=$RPM_BUILD_ROOT +export OCAMLFIND_DESTDIR=$RPM_BUILD_ROOT%{_libdir}/ocaml +mkdir -p $OCAMLFIND_DESTDIR $OCAMLFIND_DESTDIR/stublibs +make install -%if %{with tests} -%check -%dune_check +%files +%doc CHANGES README TODO LGPL COPYING +%{_libdir}/ocaml/calendar +%ifarch %{ocaml_native_compiler} +%exclude %{_libdir}/ocaml/calendar/*.cmx %endif +%exclude %{_libdir}/ocaml/calendar/*.mli -%files -f .ofiles -%doc CHANGES README.md TODO -%license LGPL COPYING - - -%files devel -f .ofiles-devel -%doc CHANGES README.md TODO calendarFAQ-2.6.txt -%license LGPL COPYING +%files devel +%doc CHANGES README TODO LGPL COPYING calendarFAQ-2.6.txt doc/* +%ifarch %{ocaml_native_compiler} +%{_libdir}/ocaml/calendar/*.cmx +%endif +%{_libdir}/ocaml/calendar/*.mli %changelog -* Mon Oct 13 2025 Richard W.M. Jones - 1:3.0.0-19 -- OCaml 5.4.0 rebuild - -* Thu Jul 24 2025 Fedora Release Engineering - 1:3.0.0-18 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild - -* Sat Jul 12 2025 Jerry James - 1:3.0.0-17 -- Rebuild to fix OCaml dependencies - -* Fri Jan 17 2025 Fedora Release Engineering - 1:3.0.0-16 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild - -* Fri Jan 10 2025 Jerry James - 1:3.0.0-15 -- OCaml 5.3.0 rebuild for Fedora 42 -- Add patch for a test failure - -* Thu Oct 03 2024 Richard W.M. Jones - 1:3.0.0-14 -- Rebuild against ocaml-re 1.13.3 (RHBZ#2316105) - -* Thu Jul 18 2024 Fedora Release Engineering - 1:3.0.0-13 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild - -* Wed Jun 19 2024 Richard W.M. Jones - 1:3.0.0-12 -- OCaml 5.2.0 ppc64le fix - -* Thu May 30 2024 Richard W.M. Jones - 3.0.0-11 -- OCaml 5.2.0 for Fedora 41 - -* Thu May 23 2024 Jerry James - 3.0.0-8 -- Simplify with %%bcond -- Add VCS field - -* Thu Jan 25 2024 Fedora Release Engineering - 3.0.0-8 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Sun Jan 21 2024 Fedora Release Engineering - 3.0.0-7 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Mon Dec 18 2023 Richard W.M. Jones - 3.0.0-6 -- OCaml 5.1.1 + s390x code gen fix for Fedora 40 - -* Tue Dec 12 2023 Richard W.M. Jones - 3.0.0-5 -- OCaml 5.1.1 rebuild for Fedora 40 - -* Thu Oct 05 2023 Richard W.M. Jones - 3.0.0-4 -- OCaml 5.1 rebuild for Fedora 40 - -* Thu Jul 20 2023 Fedora Release Engineering - 3.0.0-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Tue Jul 11 2023 Richard W.M. Jones - 3.0.0-2 -- OCaml 5.0 rebuild for Fedora 39 - -* Mon Jul 10 2023 Jerry James - 3.0.0-1 -- Version 3.0.0 -- New project URLs -- Convert License tag to SPDX -- Drop obsolete debuginfo patch -- Build with dune - -* Tue Jan 24 2023 Richard W.M. Jones - 2.04-46 -- Rebuild OCaml packages for F38 - -* Thu Jan 19 2023 Fedora Release Engineering - 2.04-45 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Fri Jul 22 2022 Fedora Release Engineering - 2.04-44 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Sat Jun 18 2022 Richard W.M. Jones - 2.04-43 -- OCaml 4.14.0 rebuild - -* Fri Feb 04 2022 Richard W.M. Jones - 2.04-42 -- Bump release and rebuild. - -* Fri Feb 04 2022 Richard W.M. Jones - 2.04-41 -- OCaml 4.13.1 rebuild to remove package notes - -* Thu Jan 20 2022 Fedora Release Engineering - 2.04-40 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Mon Oct 04 2021 Richard W.M. Jones - 2.04-39 -- OCaml 4.13.1 build - -* Thu Jul 22 2021 Fedora Release Engineering - 2.04-38 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Mon Mar 1 14:31:55 GMT 2021 Richard W.M. Jones - 2.04-37 -- OCaml 4.12.0 build - -* Tue Jan 26 2021 Fedora Release Engineering - 2.04-36 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Tue Sep 01 2020 Richard W.M. Jones - 2.04-35 -- OCaml 4.11.1 rebuild - -* Fri Aug 21 2020 Richard W.M. Jones - 2.04-34 -- OCaml 4.11.0 rebuild - -* Tue Jul 28 2020 Fedora Release Engineering - 2.04-33 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Mon May 04 2020 Richard W.M. Jones - 2.04-32 -- OCaml 4.11.0+dev2-2020-04-22 rebuild - -* Tue Apr 21 2020 Richard W.M. Jones - 2.04-31 -- OCaml 4.11.0 pre-release attempt 2 - -* Fri Apr 17 2020 Richard W.M. Jones - 2.04-30 -- OCaml 4.11.0 pre-release - -* Thu Apr 02 2020 Richard W.M. Jones - 2.04-29 -- Update all OCaml dependencies for RPM 4.16. +* Thu Feb 27 2020 Richard W.M. Jones - 2.04-28.1 +- OCaml 4.10.0 final (Fedora 32). * Wed Feb 26 2020 Richard W.M. Jones - 2.04-28 - OCaml 4.10.0 final. diff --git a/sources b/sources index 6e5b9c6..ed73d34 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (calendar-3.0.0.tar.gz) = cf8a5cfbfb8879da7bcacf765d5461523cbc4f0c13133dfb2f311b051ed95b5f72815af5ca2836294a793d9b57bfc4cc1abbb8b54e17954cb4ecc99e1743bdc3 +625b4f32c9ff447501868fa1c44f4f4f calendar-2.04.tar.gz diff --git a/tests/basic-test.sh b/tests/basic-test.sh deleted file mode 100755 index 3ebee39..0000000 --- a/tests/basic-test.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/bash - -set -e -set -x - -# Compile trivial calendar program. -echo 'CalendarLib.Calendar.Period.make 0 0 0 1 0 0' > caltest.ml -ocamlfind ocamlopt -package calendar caltest.ml -linkpkg -o caltest -./caltest diff --git a/tests/tests.yml b/tests/tests.yml deleted file mode 100755 index a652627..0000000 --- a/tests/tests.yml +++ /dev/null @@ -1,13 +0,0 @@ -- hosts: localhost - roles: - - role: standard-test-basic - tags: - - classic - required_packages: - - ocaml - - ocaml-findlib - - ocaml-calendar-devel - tests: - - simple: - dir: . - run: ./basic-test.sh