[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
08/13: gnu: Add safeint.
From: |
guix-commits |
Subject: |
08/13: gnu: Add safeint. |
Date: |
Tue, 15 Nov 2022 06:19:52 -0500 (EST) |
civodul pushed a commit to branch master
in repository guix.
commit 7d1add80b2185176ee017d74522eb663231cbc98
Author: Antero Mejr <antero@mailbox.org>
AuthorDate: Fri Nov 4 20:25:12 2022 +0000
gnu: Add safeint.
* gnu/packages/cpp.scm (safeint): New variable.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
---
gnu/packages/cpp.scm | 39 +++++++++++++++++++++++++++++++++++++++
1 file changed, 39 insertions(+)
diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm
index 928ae5e7e5..c1e98b771d 100644
--- a/gnu/packages/cpp.scm
+++ b/gnu/packages/cpp.scm
@@ -2198,3 +2198,42 @@ parsing with only a single memory allocation.")
command line options. It supports the short and long option formats of
getopt(), getopt_long() and getopt_long_only().")
(license license:expat)))
+
+(define-public safeint
+ (package
+ (name "safeint")
+ (version "3.0.27")
+ (home-page "https://github.com/dcleblanc/SafeInt")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "01d2dpdhyw3lghmamknb6g39w2gg0sv53pgxlrs2la8h694z6x7s"))))
+ (build-system cmake-build-system)
+ (arguments
+ (list #:phases #~(modify-phases %standard-phases
+ (replace 'install
+ (lambda _
+ (let ((include-dir (string-append #$output
+ "/include")))
+ (with-directory-excursion "../source"
+ (install-file "SafeInt.hpp" include-dir)
+ (install-file "safe_math.h" include-dir)
+ (install-file "safe_math_impl.h"
include-dir)))))
+ (add-after 'install 'install-doc
+ (lambda _
+ (let ((doc-dir (string-append #$output
+
"/share/doc/safeint")))
+ (with-directory-excursion "../source"
+ (install-file "helpfile.md" doc-dir))))))))
+ (synopsis "C and C++ library for managing integer overflows")
+ (description
+ "SafeInt is a class library for C++ that manages integer overflows. It
+also includes a C library that checks casting, multiplication, division,
+addition and subtraction for all combinations of signed and unsigned 32-bit and
+64-bit integers.")
+ (license license:expat)))
- branch master updated (de61a0aa4a -> 5b555d639d), guix-commits, 2022/11/15
- 01/13: installer: Warn about hardware support after the welcome page., guix-commits, 2022/11/15
- 03/13: linux-modules: Add 'load-pci-device-database'., guix-commits, 2022/11/15
- 02/13: linux-modules: Add support for listing PCI devices., guix-commits, 2022/11/15
- 07/13: installer: Migrate to 'guile-gnutls'., guix-commits, 2022/11/15
- 08/13: gnu: Add safeint.,
guix-commits <=
- 10/13: doc: Refer to the pt_BR translation., guix-commits, 2022/11/15
- 04/13: installer: Use 'current-guix' for extensions., guix-commits, 2022/11/15
- 09/13: gnu: Add fuzzel., guix-commits, 2022/11/15
- 11/13: doc: Build pt_BR manual., guix-commits, 2022/11/15
- 12/13: doc: Link to the Git book instead of the git-scm.com homepage., guix-commits, 2022/11/15
- 13/13: doc: Add missing closing parentheses in examples., guix-commits, 2022/11/15
- 05/13: installer: Error page width is parameterized., guix-commits, 2022/11/15
- 06/13: installer: Report known-unsupported PCI devices., guix-commits, 2022/11/15