rekado pushed a commit to branch master
in repository guix.
commit 7879ab4229d87a597713b96a779fc00bc0e34f3f
Author: Andy Tai <[email protected]>
AuthorDate: Thu Jul 27 21:54:22 2023 -0700
gnu: Add nsync.
* gnu/packages/c.scm (nsync): New variable.
Signed-off-by: Ricardo Wurmus <[email protected]>
---
gnu/packages/c.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)
diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm
index 9e5b511b98..ea58c68262 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -17,6 +17,7 @@
;;; Copyright © 2022 Artyom V. Poptsov <[email protected]>
;;; Copyright © 2022 Ekaitz Zarraga <[email protected]>
;;; Copyright © 2022 ( <[email protected]>
+;;; Copyright © 2022 Antero Mejr <[email protected]>
;;; Copyright © 2023 zamfofex <[email protected]>
;;; Copyright © 2023 Foundation Devices, Inc. <[email protected]>
;;;
@@ -1495,6 +1496,34 @@ string.h, but with a utf8* prefix instead of the str*
prefix.")
"This package provides a header-only unit testing library for C/C++.")
(license license:unlicense))))
+(define-public nsync
+ (package
+ (name "nsync")
+ (version "1.26.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/google/nsync")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0qg58kkcbm4zqkql8j5yvrb7fpx09qsf7j93dwqb9s1y69l70kx4"))))
+ (build-system cmake-build-system)
+ (home-page "https://github.com/google/nsync")
+ (synopsis "C library for synchronization primitives")
+ (description
+ "nsync is a C library that exports various synchronization primitives:
+@enumerate
+@item locks,
+@item condition variables,
+@item run-once initialization,
+@item waitable counter (useful for barriers),
+@item waitable bit (useful for cancellation, or other conditions).
+@end enumerate
+")
+ (license license:asl2.0)))
+
(define-public ispc
(package
(name "ispc")