me
/
guix
Archived
1
0
Fork 0

gnu: Add atomic-queue.

* gnu/packages/cpp.scm (atomic-queue): New variable.
master
Arun Isaac 2022-03-21 12:12:49 +02:00 committed by Efraim Flashner
parent a47b4da099
commit 61b4b6aea2
No known key found for this signature in database
GPG Key ID: 41AAE7DCCA3D8351
1 changed files with 40 additions and 0 deletions

View File

@ -28,6 +28,7 @@
;;; Copyright © 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2022 muradm <mail@muradm.net>
;;; Copyright © 2022 Attila Lendvai <attila@lendvai.name>
;;; Copyright © 2022 Arun Isaac <arunisaac@systemreboot.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -53,6 +54,7 @@
#:use-module (guix build-system cmake)
#:use-module (guix build-system copy)
#:use-module (guix build-system gnu)
#:use-module (guix build-system meson)
#:use-module (guix build-system python)
#:use-module (guix modules)
#:use-module (guix gexp)
@ -1274,6 +1276,44 @@ provides a number of utilities to make coding with expected cleaner.")
(home-page "https://tl.tartanllama.xyz/")
(license license:cc0)))
(define-public atomic-queue
(package
(name "atomic-queue")
(version "1.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/max0x7ba/atomic_queue")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0ssff73wlvrsk2nma99dmvm0ijyzfr54jk37kxgpb694r7ajc90l"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags '("-Dbenchmarks=false")
#:phases
(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(lambda _
(invoke "make" "run_tests")))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(copy-recursively "../source/include/atomic_queue"
(string-append (assoc-ref outputs "out")
"/include/atomic_queue")))))))
(native-inputs
(list boost
pkg-config))
(home-page "https://github.com/max0x7ba/atomic_queue")
(synopsis "C++ lockless queue")
(description
"This package contains a C++11 multiple-producer-multiple-consumer lockless
queues header library based on circular buffer with @code{std::atomic}.")
(license license:expat)))
(define-public magic-enum
(package
(name "magic-enum")