diff options
Diffstat (limited to 'gnu/packages/cpp.scm')
-rw-r--r-- | gnu/packages/cpp.scm | 85 |
1 files changed, 83 insertions, 2 deletions
diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm index 003883e1a5..f51e83283f 100644 --- a/gnu/packages/cpp.scm +++ b/gnu/packages/cpp.scm @@ -14,6 +14,7 @@ ;;; Copyright © 2020 Marius Bakke <marius@gnu.org> ;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de> ;;; Copyright © 2020 Alexandros Theodotou <alex@zrythm.org> +;;; Copyright © 2020 Greg Hogan <code@greghogan.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -40,12 +41,22 @@ #:use-module (guix build-system python) #:use-module (gnu packages) #:use-module (gnu packages autotools) + #:use-module (gnu packages boost) #:use-module (gnu packages check) #:use-module (gnu packages code) #:use-module (gnu packages compression) + #:use-module (gnu packages crypto) + #:use-module (gnu packages gcc) + #:use-module (gnu packages libevent) + #:use-module (gnu packages libunwind) + #:use-module (gnu packages linux) #:use-module (gnu packages llvm) + #:use-module (gnu packages logging) + #:use-module (gnu packages maths) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages popt) + #:use-module (gnu packages pretty-print) #:use-module (gnu packages tls) #:use-module (gnu packages web)) @@ -361,7 +372,7 @@ intuitive syntax and trivial integration.") (define-public xtl (package (name "xtl") - (version "0.6.18") + (version "0.6.19") (source (origin (method git-fetch) (uri @@ -370,7 +381,7 @@ intuitive syntax and trivial integration.") (commit version))) (sha256 (base32 - "0s9gnv1wq0cmpw878dmx0lnci86895hhdrwyc9x8lfbc1hr7ypnh")) + "1g98lfrp13fqfqrirg0rw90m7bajmjmy12yhrlj5jzwcby4dfs81")) (file-name (git-file-name name version)))) (native-inputs `(("googletest" ,googletest) @@ -647,3 +658,73 @@ Google's C++ code base.") a zero-dependency C++ header-only parser combinator library for creating parsers according to a Parsing Expression Grammar (PEG).") (license license:expat))) + +(define-public cxxopts + (package + (name "cxxopts") + (version "2.2.1") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/jarro2783/cxxopts") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0d3y747lsh1wkalc39nxd088rbypxigm991lk3j91zpn56whrpha")))) + (build-system cmake-build-system) + (synopsis "Lightweight C++ command line option parser") + (description + "A lightweight header-only C++ option parser library, supporting the +standard GNU style syntax for options.") + (home-page "https://github.com/jarro2783/cxxopts/wiki") + (license license:expat))) + +(define-public folly + (package + (name "folly") + (version "2020.10.05.00") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/facebook/folly") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0q4w4cvjxffc462hvs8h4zryq4965j7015zvkwagcm6cj6wmz3cn")))) + (build-system cmake-build-system) + (arguments + '(;; Tests must be explicitly enabled + ;;#:configure-flags '("-DBUILD_TESTS=ON"))) + ;; Leave tests disabled; see https://github.com/facebook/folly/issues/1456 + #:tests? #f)) + (propagated-inputs + `(("boost" ,boost) + ("gflags" ,gflags) + ("glog" ,glog) + ("liburing" ,liburing))) + (inputs + `(("bzip2" ,bzip2) + ("double-conversion" ,double-conversion) + ("fmt" ,fmt) + ("libaio" ,libaio) + ("libevent" ,libevent) + ("libiberty" ,libiberty) + ("libsodium" ,libsodium) + ("libunwind" ,libunwind) + ("lz4" ,lz4) + ("openssl" ,openssl) + ("snappy" ,snappy) + ("zlib" ,zlib) + ("zstd" ,zstd "lib"))) + (native-inputs + `(("googletest" ,googletest))) + (synopsis "Collection of C++ components complementing the standard library") + (description + "Folly (acronymed loosely after Facebook Open Source Library) is a library +of C++14 components that complements @code{std} and Boost.") + (home-page "https://github.com/facebook/folly/wiki") + ;; 32-bit is not supported: https://github.com/facebook/folly/issues/103 + (supported-systems '("aarch64-linux" "x86_64-linux")) + (license license:asl2.0))) |