gnu: date: Update to 3.0.1.

* gnu/packages/calendar.scm (date): Update to 3.0.1.
  [arguments]{phases}: Add phase 'skip-failing-test, adapt phase
  'check.
* gnu/packages/patches/date-output-pkg-config-files.patch: Update
patch accordingly.

Change-Id: Ie8b5dff4e8005b2654f2da295a6dd1cc629df001
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
This commit is contained in:
Nicolas Graves 2025-07-03 15:01:48 +02:00 committed by Sharlatan Hellseher
parent e14ccf95b1
commit bc62e66b9b
No known key found for this signature in database
GPG key ID: 76D727BFF62CD2B5
2 changed files with 57 additions and 59 deletions

View file

@ -105,61 +105,59 @@ available in French.")
(license license:gpl2)))) (license license:gpl2))))
(define-public date (define-public date
;; We make the same choice as the Arch package maintainer by choosing a (package
;; recent commit to fix some bugs. (name "date")
;; https://github.com/Alexays/Waybar/issues/565 (version "3.0.1")
(let ((commit "9a0ee2542848ab8625984fc8cdbfb9b5414c0082")) (source
(package (origin
(name "date") (method git-fetch)
(version (string-append "2.4.1-" (string-take commit 8))) (uri (git-reference
(source (url "https://github.com/HowardHinnant/date")
(origin (commit (string-append "v" version))))
(method git-fetch) (file-name (git-file-name name version))
(uri (git-reference (sha256
(url "https://github.com/HowardHinnant/date") (base32 "1qk7pgnk0bpinja28104qha6f7r1xwh5dy3gra7vjkqwl0jdwa35"))
(commit "9a0ee2542848ab8625984fc8cdbfb9b5414c0082"))) (patches
(file-name (git-file-name name version)) ;; Install pkg-config files
(sha256 ;; https://github.com/HowardHinnant/date/pull/538
(base32 "0yxsn0hj22n61bjywysxqgfv7hj5xvsl6isma95fl8xrimpny083")) (search-patches "date-ignore-zonenow.patch"
(patches "date-output-pkg-config-files.patch"))))
;; Install pkg-config files (inputs (list tzdata))
;; https://github.com/HowardHinnant/date/pull/538 (build-system cmake-build-system)
(search-patches "date-ignore-zonenow.patch" (arguments
"date-output-pkg-config-files.patch")))) '(#:configure-flags (list "-DUSE_SYSTEM_TZ_DB=ON"
(inputs (list tzdata)) "-DBUILD_SHARED_LIBS=ON"
(build-system cmake-build-system) "-DBUILD_TZ_LIB=ON"
(arguments "-DENABLE_DATE_TESTING=ON")
'(#:configure-flags (list "-DUSE_SYSTEM_TZ_DB=ON" #:phases
"-DBUILD_SHARED_LIBS=ON" (modify-phases %standard-phases
"-DBUILD_TZ_LIB=ON" (add-after 'unpack 'patch-bin-bash
"-DENABLE_DATE_TESTING=ON") (lambda* (#:key inputs #:allow-other-keys)
#:phases (substitute* "compile_fail.sh"
(modify-phases %standard-phases (("/bin/bash") (which "bash")))
(add-after 'unpack 'patch-bin-bash #t))
(lambda* (#:key inputs #:allow-other-keys) (add-after 'unpack 'patch-zoneinfo-path
(substitute* "compile_fail.sh" (lambda* (#:key inputs #:allow-other-keys)
(("/bin/bash") (which "bash"))) (substitute* "src/tz.cpp"
#t)) (("/usr/share/zoneinfo")
(add-after 'unpack 'patch-zoneinfo-path (search-input-directory inputs
(lambda* (#:key inputs #:allow-other-keys) "share/zoneinfo")))))
(substitute* "src/tz.cpp" (add-after 'unpack 'skip-failing-tests
(("/usr/share/zoneinfo") ;; Disable test that requires checking timezone that
(search-input-directory inputs ;; isn't set in the build environment.
"share/zoneinfo"))))) (lambda _
(replace 'check (for-each delete-file
(lambda _ '("test/solar_hijri_test/parse.pass.cpp"
;; Disable test that requires checking timezone that "test/tz_test/zoned_time_deduction.pass.cpp"))))
;; isn't set in the build environment. (replace 'check
(substitute* "CTestTestfile.cmake" (lambda _
(("add_test.tz_test_pass_zoned_time_deduction_test.*") "") (invoke "make" "testit"))))))
(("set_tests_properties.tz_test_pass_zoned_time_deduction_test.*") "")) (synopsis "Date and time library for C++11 and C++14")
(invoke "make" "testit")))))) (description "Date is a header only C++ library that extends the chrono
(synopsis "Date and time library for C++11 and C++14")
(description "Date is a header only C++ library that extends the chrono
date algorithms library for calendar dates and durations. It also provides date algorithms library for calendar dates and durations. It also provides
the <tz.h> library for handling time zones and leap seconds.") the <tz.h> library for handling time zones and leap seconds.")
(home-page "https://howardhinnant.github.io/date/date.html") (home-page "https://howardhinnant.github.io/date/date.html")
(license license:expat)))) (license license:expat)))
(define-public libical (define-public libical
(package (package

View file

@ -1,4 +1,4 @@
From e56b2dce7e89a92e1b9b35caa13b3e938c4cedea Mon Sep 17 00:00:00 2001 From 13762204d70733b6e7510ccd323b9b1e77c06c0f Mon Sep 17 00:00:00 2001
From: Cole Mickens <cole.mickens@gmail.com> From: Cole Mickens <cole.mickens@gmail.com>
Date: Sun, 26 Jan 2020 01:27:08 -0800 Date: Sun, 26 Jan 2020 01:27:08 -0800
Subject: [PATCH] CMakeLists.txt: output date.pc for pkg-config Subject: [PATCH] CMakeLists.txt: output date.pc for pkg-config
@ -10,16 +10,16 @@ Subject: [PATCH] CMakeLists.txt: output date.pc for pkg-config
create mode 100644 date.pc.in create mode 100644 date.pc.in
diff --git a/CMakeLists.txt b/CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt
index f30c473..fe778e8 100644 index 012512a..5fbea80 100644
--- a/CMakeLists.txt --- a/CMakeLists.txt
+++ b/CMakeLists.txt +++ b/CMakeLists.txt
@@ -128,6 +128,15 @@ if( BUILD_TZ_LIB ) @@ -158,6 +158,15 @@ if( BUILD_TZ_LIB )
endif( ) endif( )
endif( ) endif( )
+if ( BUILD_TZ_LIB ) +if ( BUILD_TZ_LIB )
+ # Cflags: -I${includedir} @TZ_COMPILE_DEFINITIONS@ + # Cflags: -I${includedir} @TZ_COMPILE_DEFINITIONS@
+ set( TZ_COMPILE_DEFINITIONS "$<IF:$<TARGET_EXISTS:tz>,-D$<JOIN:$<TARGET_PROPERTY:tz,INTERFACE_COMPILE_DEFINITIONS>, -D>,>" ) + set( TZ_COMPILE_DEFINITIONS "$<IF:$<TARGET_EXISTS:date-tz>,-D$<JOIN:$<TARGET_PROPERTY:date-tz,INTERFACE_COMPILE_DEFINITIONS>, -D>,>" )
+ configure_file(date.pc.in date.pc.cf @ONLY) + configure_file(date.pc.in date.pc.cf @ONLY)
+ file( GENERATE OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/date.pc" + file( GENERATE OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/date.pc"
+ INPUT "${CMAKE_CURRENT_BINARY_DIR}/date.pc.cf" ) + INPUT "${CMAKE_CURRENT_BINARY_DIR}/date.pc.cf" )
@ -29,7 +29,7 @@ index f30c473..fe778e8 100644
#[===================================================================[ #[===================================================================[
installation installation
#]===================================================================] #]===================================================================]
@@ -171,6 +180,12 @@ install ( @@ -201,6 +210,12 @@ install (
FILES cmake/dateConfig.cmake "${version_config}" FILES cmake/dateConfig.cmake "${version_config}"
DESTINATION ${CONFIG_LOC}) DESTINATION ${CONFIG_LOC})
@ -56,5 +56,5 @@ index 0000000..b9c4623
+Name: date +Name: date
+Description: A date and time library based on the C++11/14/17 <chrono> header +Description: A date and time library based on the C++11/14/17 <chrono> header
+Version: @PACKAGE_VERSION@ +Version: @PACKAGE_VERSION@
+Libs: -L${libdir} -ltz +Libs: -L${libdir} -ldate-tz
+Cflags: -I${includedir} @TZ_COMPILE_DEFINITIONS@ +Cflags: -I${includedir} @TZ_COMPILE_DEFINITIONS@