Package: guix-patches;
Reported by: "Lenoci, L. (Leonardo)" <l.lenoci <at> science.leidenuniv.nl>
Date: Tue, 12 Mar 2024 16:06:01 UTC
Severity: normal
Tags: patch
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
From: "Lenoci, L. (Leonardo)" <l.lenoci <at> science.leidenuniv.nl> To: "guix-patches <at> gnu.org" <guix-patches <at> gnu.org> Subject: [PATCH] Added iRODS v4.3.1 Date: Tue, 12 Mar 2024 15:59:21 +0000
gnu: avro-cpp: Added version 1.11 * gnu/packages/serialization.scm (avro-cpp-1.11): Added version 1.11, needed to build iRODS v4.3.1 gnu: irods: Added version 4.3.1 * gnu/packages/irods.scm (irods-4.3.1): Added irods version 4.3.1 * gnu/packages/irods.scm (irods-client-icommands-4.3.1): Added icommands version 4.3.1 --- gnu/packages/irods.scm | 98 ++++++++++++++++++++++++++++++++++ gnu/packages/serialization.scm | 27 ++++++++++ 2 files changed, 125 insertions(+) diff --git a/gnu/packages/irods.scm b/gnu/packages/irods.scm index a14ac87aa2..980824b521 100644 --- a/gnu/packages/irods.scm +++ b/gnu/packages/irods.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2021 Ricardo Wurmus <rekado <at> elephly.net> +;;; Copyright © 2024 Leonardo Lenoci <l.lenoci <at> science.leidenuniv.nl> ;;; ;;; This file is part of GNU Guix. ;;; @@ -166,6 +167,62 @@ (define-public irods stored.") (license license:bsd-3))) + +(define-public irods-4.3.1 + (package + (inherit irods) + (version "4.3.1") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/irods/irods/releases/download/" + version "/irods-" version ".tar.gz")) + (sha256 + (base32 + "1l373izk4v56zb86xn44ab25afbhs0q7h6vp6zkvwnz1xwd17h64")))) + (arguments + (substitute-keyword-arguments (package-arguments irods) + ((#:configure-flags flags #~`()) + #~(append `(,(string-append "- DIRODS_EXTERNALS_FULLPATH_SPDLOG=" + #$(this-package-input "spdlog")) + ;;;(assoc-ref %build-inputs "spdlog") + "-DIRODS_BUILD_WITH_CLANG=ON" + "-DIRODS_BUILD_AGAINST_LIBCXX=FALSE" + ) #$flags)) + ((#:phases phases) + `(modify-phases ,phases + (replace 'remove-FHS-and-prefix-assumptions + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "lib/core/src/irods_default_paths.cpp" + (("path.append\\(\"usr\"\\)") "path") + (("path.remove_filename\\(\\).remove_filename\\(\\).remove_filename\\(\ \)") + "path.remove_filename().remove_filename()")) + (substitute* "scripts/irods/paths.py" + (("'usr', 'lib', 'irods'") "'lib', 'irods'")) + )) + (delete 'adjust-CPLUS_INCLUDE_PATH) + )) + )) + + (inputs + (modify-inputs (package-inputs irods) + (replace "avro-cpp" avro-cpp-1.11) + (replace "boost" boost) + (replace "fmt" fmt-8) + (replace "nanodbc-for-irods" nanodbc) + (append spdlog) + (delete "libcxxabi") + )) + + (native-inputs + (modify-inputs (package-native-inputs irods) + (replace "clang" clang-toolchain-13) + (replace "clang-runtime" clang-runtime-13) + (append curl) + (append nanodbc) + (delete "libcxx+libcxxabi") + )) + )) + (define-public irods-client-icommands (package (name "irods-client-icommands") @@ -266,3 +323,44 @@ (define-public irods-client-icommands take control of their data, regardless of where and on what device the data is stored.") (license license:bsd-3))) + + +(define-public irods-client-icommands-4.3.1 + (package + (inherit irods-client-icommands) + (version "4.3.1") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/irods/irods-client-icommands/archive/refs/tags/" version ".tar.gz")) + (sha256 + (base32 + "0v1yyrq6hy661d1g03mqmr2w8acdli76nly4rwk3qqqavlr75l2c")))) + (arguments + (substitute-keyword-arguments (package-arguments irods-client- icommands) + ((#:configure-flags flags #~`()) + #~(append `(, + "-DCPACK_GENERATOR=TGZ" + "-DIRODS_BUILD_WITH_CLANG=ON" + "-DIRODS_BUILD_AGAINST_LIBCXX=FALSE" + ) #$flags)) + ((#:phases phases) + `(modify-phases ,phases + (delete 'adjust-CPLUS_INCLUDE_PATH) + ) + ))) + + (inputs + (modify-inputs (package-inputs irods-client-icommands) + (replace "avro-cpp" avro-cpp-1.11) + (replace "boost" boost) + (replace "fmt" fmt-8) + (replace "irods" irods-4.3.1) + (delete "libcxxabi") + )) + (native-inputs + (modify-inputs (package-native-inputs irods-client-icommands) + (replace "clang" clang-toolchain-13) + (replace "clang-runtime" clang-runtime-13) + (delete "libcxx+libcxxabi") + )) + )) diff --git a/gnu/packages/serialization.scm b/gnu/packages/serialization.scm index 331fae80cf..194a962d38 100644 --- a/gnu/packages/serialization.scm +++ b/gnu/packages/serialization.scm @@ -19,6 +19,7 @@ ;;; Copyright © 2023 Zheng Junjie <873216071 <at> qq.com> ;;; Copyright © 2024 Paul A. Patience <paul <at> apatience.com> ;;; Copyright © 2024 Arun Isaac <arunisaac <at> systemreboot.net> +;;; Copyright © 2024 Leonardo Lenoci <l.lenoci <at> science.leidenuniv.nl> ;;; ;;; This file is part of GNU Guix. ;;; @@ -102,6 +103,32 @@ (define-public avro-cpp-1.9 implement RPC protocols.") (license license:asl2.0))) +(define-public avro-cpp-1.11 + (package + (inherit avro-cpp-1.9) + (version "1.11.3") + (source (origin + (method url-fetch) + (uri (string-append + "https://archive.apache.org/dist/avro/avro-" version + "/avro-src-" version ".tar.gz")) + (sha256 + (base32 "0d60vi4s8la0c64zfyydfy21690yf0px5bcsi5d1p8b06al8g9vf")))) + (build-system cmake-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'chdir + (lambda _ (chdir "lang/c++"))) + ;;; avoid that deprecation warnings with boost v.1.80.0 + ;;; are treated as errors + (add-after 'chdir 'unset-Werror + (lambda _ + (substitute* "CMakeLists.txt" + (("-Werror") "")))) + ))) + )) + (define-public avro-cpp-1.9-for-irods (package (inherit avro-cpp-1.9) base-commit: bb2703194e1e18e6513472742fdc9b2781b72729 -- 2.34.1
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.