diff options
author | Liliana Marie Prikler <liliana.prikler@gmail.com> | 2024-02-24 07:56:54 +0100 |
---|---|---|
committer | Liliana Marie Prikler <liliana.prikler@gmail.com> | 2024-03-02 08:00:13 +0100 |
commit | d1ecd3c67cddb31ab8bbe3a20529d7dc825157fc (patch) | |
tree | 55926395711d834218982e79f97bbbde59364038 /gnu | |
parent | 9038a46751c5090246e64b63ff752064833c435b (diff) |
gnu: Add wide-integer.
* gnu/packages/cpp.scm (wide-integer): New variable.
Diffstat (limited to 'gnu')
-rw-r--r-- | gnu/packages/cpp.scm | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm index a4b2b9351c..3b65ce9f4a 100644 --- a/gnu/packages/cpp.scm +++ b/gnu/packages/cpp.scm @@ -2704,6 +2704,37 @@ addition and subtraction for all combinations of signed and unsigned 32-bit and 64-bit integers.") (license license:expat))) +(define-public wide-integer + (let ((commit "22b8428746248e682d5276f8e8b7fb52af73ea47") + (revision "1314")) ; commit count + (package + (name "wide-integer") + (version (git-version "0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/ckormanyos/wide-integer") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0bhjnbdcphv5kddddh8kpwjpjix23m12vmfsz0r6wjc5d27md33z")) + (modules '((guix build utils))) + (snippet #~(substitute* "CMakeLists.txt" + (("WideIntegerTargets") "wide-integer-targets") + (("WideIntegerConfig") "wide-integer-config") + (("WideInteger") "wide-integer"))))) + (build-system cmake-build-system) + (native-inputs (list boost)) + (home-page "https://github.com/ckormanyos/wide-integer") + (synopsis "C++ template for arbitrary-precision integers") + (description "This package implements a generic template for extended +width signed and unsigned integral types. Up to 63 limbs of any built-in +integer type are supported, and can be used to build powers of two like +int128_t, uint256_t, but also somewhat esoteric types such as int24_t, +uint80_t, or uint1536_t. The provided types can be used in much the same +way as basic integer types.") + (license license:boost1.0)))) + (define-public wdl ;; No tag is available. (let ((commit "da86a62d11e46e4ecd8b16f9775cb5188340a0e2") |