From 7f9711cb4b980843dc6d785dbc342d73d900b140 Mon Sep 17 00:00:00 2001 From: Raghav Gururajan Date: Mon, 4 Jan 2021 23:59:17 -0500 Subject: [PATCH 09/13] gnu: Add range-v3. * gnu/packages/cpp.scm (range-v3): New variable. Signed-off-by: Leo Prikler --- gnu/packages/cpp.scm | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm index 2514af5a84..0d75b9237e 100644 --- a/gnu/packages/cpp.scm +++ b/gnu/packages/cpp.scm @@ -49,6 +49,7 @@ #:use-module (gnu packages compression) #:use-module (gnu packages crypto) #:use-module (gnu packages curl) + #:use-module (gnu packages documentation) #:use-module (gnu packages gcc) #:use-module (gnu packages libevent) #:use-module (gnu packages libunwind) @@ -63,6 +64,45 @@ #:use-module (gnu packages tls) #:use-module (gnu packages web)) +(define-public range-v3 + (package + (name "range-v3") + (version "0.11.0") + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://github.com/ericniebler/range-v3.git") + (commit version))) + (file-name + (git-file-name name version)) + (sha256 + (base32 "18230bg4rq9pmm5f8f65j444jpq56rld4fhmpham8q3vr1c1bdjh")))) + (build-system cmake-build-system) + (native-inputs + `(("doxygen" ,doxygen) + ("perl" ,perl))) + (inputs + `(("boost" ,boost))) + (synopsis "Range library for C++14/17/20") + (description "Range-v3 is an extension of the Standard Template Library that +makes its iterators and algorithms more powerful by making them composable. +Unlike other range-like solutions which, seek to do away with iterators, in +range-v3 ranges are an abstration layer on top of iterators.") + (home-page "https://github.com/ericniebler/range-v3/") + (license + (list + ;; Elements of Programming + (license:x11-style "file:///LICENSE.txt") + ;; SGI STL + license:sgifreeb2.0 + ;;; LibC++ (dual-licensed) + license:expat + license:ncsa + ;; Others + license:boost1.0)))) + (define-public c++-gsl (package (name "c++-gsl") -- 2.30.0