diff options
Diffstat (limited to 'gnu/packages/cpp.scm')
-rw-r--r-- | gnu/packages/cpp.scm | 52 |
1 files changed, 45 insertions, 7 deletions
diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm index ed6ae69198..bb1f216e2a 100644 --- a/gnu/packages/cpp.scm +++ b/gnu/packages/cpp.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2017 Ethan R. Jones <doubleplusgood23@gmail.com> ;;; Copyright © 2018–2021 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com> -;;; Copyright © 2018, 2021 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2018, 2021, 2023 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2019, 2020, 2022 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz> ;;; Copyright © 2019 Jan Wielkiewicz <tona_kosmicznego_smiecia@interia.pl> @@ -1048,6 +1048,11 @@ point and then, after each tween step, plugging back the result.") "-DCMAKE_EXE_LINKER_FLAGS=-lgtest -lpthread -lgmock") #:phases (modify-phases %standard-phases + (add-after 'unpack 'fix-max + (lambda _ + (substitute* "absl/debugging/failure_signal_handler.cc" + (("std::max\\(SIGSTKSZ, 65536\\)") + "std::max<size_t>(SIGSTKSZ, 65536)")))) (add-before 'configure 'remove-gtest-check ;; The CMakeLists fails to find our googletest for some reason, but ;; it works nonetheless. @@ -1065,6 +1070,29 @@ augment the C++ standard library. The Abseil library code is collected from Google's C++ code base.") (license license:asl2.0))) +;; This is for grpc-for-python-grpcio; keep this in sync with its actual +;; requirements. +(define-public abseil-cpp-20211102.0 + (let ((base abseil-cpp-20200923.3)) + (package + (inherit base) + (name "abseil-cpp") + (version "20211102.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/abseil/abseil-cpp") + (commit "215105818dfde3174fe799600bb0f3cae233d0bf"))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "028vlxpmh65kb7s0cpba38qcwk1abyn5br0ffhvvjjh97vld69di")))) + (arguments + (substitute-keyword-arguments (package-arguments base) + ((#:tests? _ #false) #false) + ((#:configure-flags flags) + #~(cons* "-DCMAKE_CXX_STANDARD=11" #$flags))))))) + (define-public abseil-cpp (let ((base abseil-cpp-20200923.3)) (package @@ -1083,17 +1111,25 @@ Google's C++ code base.") (arguments (substitute-keyword-arguments (package-arguments base) ((#:configure-flags flags) - `(cons* "-DBUILD_TESTING=ON" + `(cons* "-DABSL_BUILD_TESTING=ON" (delete "-DABSL_RUN_TESTS=ON" ,flags)))))))) -(define-public abseil-cpp-cxxstd17 +(define (abseil-cpp-for-c++-standard version) (let ((base abseil-cpp)) (hidden-package (package/inherit base (arguments (substitute-keyword-arguments (package-arguments base) ((#:configure-flags flags) - #~(cons* "-DCMAKE_CXX_STANDARD=17" #$flags)))))))) + #~(cons* #$(string-append "-DCMAKE_CXX_STANDARD=" + (number->string version)) + #$flags)))))))) + +(define-public abseil-cpp-cxxstd17 + (abseil-cpp-for-c++-standard 17)) ;XXX: the default with GCC 11? + +(define-public abseil-cpp-cxxstd11 + (abseil-cpp-for-c++-standard 11)) (define-public pegtl (package @@ -1642,6 +1678,8 @@ almost every type of file containing key/value pairs.") (inputs (list ;;("boost ,boost) expat)) + (native-inputs + (list gcc-10)) ;does not build with gcc-12 (home-page "https://www.codesynthesis.com/projects/libcutl/") (synopsis "C++ utility library with generic and independent components") (description "libcutl is a C++ utility library. It contains a collection @@ -1686,7 +1724,7 @@ pointers, containers, compiler building blocks, etc.") #:include-regexp ("\\.so$"))) args)))))) (native-inputs - (list build)) + (list build gcc-10)) (inputs `(("libcutl" ,libcutl) ("libxerces-c" ,xerces-c))) @@ -1734,7 +1772,7 @@ and a traversal mechanism.") (string-append "edge_dispatcher::" all))))) (delete 'configure)))) (native-inputs - (list build)) + (list build gcc-10)) (inputs (list libcutl)) (synopsis "C++ Command Line Interface (CLI) definition language") @@ -1777,7 +1815,7 @@ documentation.") ,version))))) (delete 'configure)))) (native-inputs - (list build cli)) + (list build cli gcc-10)) (inputs (list libcutl libnsl libxsd-frontend)) (propagated-inputs |