From d4d4c80b63d3f51a11f955fa20f6eefa7e9a1000 Mon Sep 17 00:00:00 2001
From: Greg Hogan <code@greghogan.com>
Date: Tue, 23 Feb 2021 14:11:06 +0000
Subject: [PATCH] gnu: Add pcg-cpp.

* gnu/packages/cpp.scm (pcg-cpp): New variable.
---
 gnu/packages/cpp.scm | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm
index 685dc02fca..53f20e46af 100644
--- a/gnu/packages/cpp.scm
+++ b/gnu/packages/cpp.scm
@@ -954,3 +954,32 @@ conversions to and from strings, iteration and related functionality.")
 feature set with a simple and intuitive interface.")
     (home-page "https://cliutils.github.io/CLI11/book/")
     (license license:bsd-3)))
+
+(define-public pcg-cpp
+  (let ((commit "5b5cac8d61339e810c5dbb4692d868a1d7ca1b2d")
+        (revision "1"))
+    (package
+      (name "pcg-cpp")
+      (version (git-version "0.98.1" revision commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/imneme/pcg-cpp")
+                      (commit commit)))
+                (file-name (git-file-name name version))
+                (sha256
+                 (base32
+                  "1s9dcd4iydlc1xj9m6f7c52nlyx99klk043sk7arqy6kp7gdaa33"))))
+      (build-system gnu-build-system)
+      (arguments
+       `(#:test-target "test"
+         #:phases
+          (modify-phases %standard-phases
+            (delete 'configure))
+         #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))))
+      (synopsis "C++11 header only library for random number generation")
+      (description "The Permuted Congruential Generator (PCG) extends the
+Linear Congruential Generator (LCG) with a permutation function to increase
+output randomness while retaining speed, simplicity, and conciseness.")
+      (home-page "http://www.pcg-random.org")
+      (license (list license:expat license:asl2.0))))) ; dual licensed
--
2.30.1