summaryrefslogtreecommitdiff
path: root/gnu/packages/c.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/c.scm')
-rw-r--r--gnu/packages/c.scm61
1 files changed, 44 insertions, 17 deletions
diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm
index 36a9366554..1b9003ce09 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -7,10 +7,11 @@
;;; Copyright © 2019 Guillaume Le Vaillant <[email protected]>
;;; Copyright © 2019 Andreas Enge <[email protected]>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <[email protected]>
-;;; Copyright © 2020 Marius Bakke <[email protected]>
+;;; Copyright © 2020, 2021 Marius Bakke <[email protected]>
;;; Copyright © 2020 Katherine Cox-Buday <[email protected]>
;;; Copyright © 2020 Maxim Cournoyer <[email protected]>
;;; Copyright © 2020, 2021 Greg Hogan <[email protected]>
+;;; Copyright © 2021 David Dashyan <[email protected]>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -37,6 +38,7 @@
#:use-module (guix build-system gnu)
#:use-module (guix build-system trivial)
#:use-module (gnu packages)
+ #:use-module (gnu packages bash)
#:use-module (gnu packages bootstrap)
#:use-module (gnu packages bison)
#:use-module (gnu packages check)
@@ -329,10 +331,8 @@ as dictionaries, skip lists, and memory pools.")
(define-public packcc
(package
(name "packcc")
- ;; We need a few fixes on top of the latest release to prevent test
- ;; failures in Universal Ctags.
- (version "1.2.5-19-g58d1b9d")
- (home-page "https://github.com/enechaev/packcc")
+ (version "1.5.0")
+ (home-page "https://github.com/arithy/packcc")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -341,26 +341,34 @@ as dictionaries, skip lists, and memory pools.")
(file-name (git-file-name name version))
(sha256
(base32
- "0biyv835jlk43fvmmd3p8jafs7k2iw9qlaj37hvsl604ai6rd5aj"))))
+ "1n9ivsa6b9ps2jbh34bycjqjpbwbk85l4jjg46pfhqxzz96793wy"))))
(build-system gnu-build-system)
(arguments
- '(#:tests? #f ;no tests
- #:make-flags '("-DUSE_SYSTEM_STRNLEN=1")
- #:phases (modify-phases %standard-phases
- ;; The project consists of a single source file and has
- ;; no actual build system, so we need to do it manually.
+ '(#:phases (modify-phases %standard-phases
(delete 'configure)
- (replace 'build
- (lambda* (#:key make-flags #:allow-other-keys)
- (apply invoke "gcc" "-o" "packcc" "packcc.c"
- make-flags)))
+ (add-before 'build 'chdir
+ (lambda _
+ (chdir "build/gcc")))
+ (add-before 'check 'pre-check
+ (lambda _
+ (setenv "CC" "gcc")
+ ;; The style tests are supposed to be skipped when
+ ;; uncrustify is unavailable, but a stray version
+ ;; check prevents it from working. This can be
+ ;; removed for future versions of PackCC.
+ (substitute* "../../tests/style.d/style.bats"
+ (("^[[:blank:]]+check_uncrustify_version")
+ ""))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
- (install-file "packcc" (string-append out "/bin"))
- (install-file "README.md"
+ (install-file "release/bin/packcc"
+ (string-append out "/bin"))
+ (install-file "../../README.md"
(string-append out "/share/doc/packcc"))
#t))))))
+ (native-inputs
+ `(("bats" ,bats)))
(synopsis "Packrat parser generator for C")
(description
"PackCC is a packrat parser generator for the C programming language.
@@ -686,3 +694,22 @@ event-driven, asynchronous network application protocols.")
cryptographic primitives for the @acronym{AWS,Amazon Web Services} SDK.")
(home-page "https://github.com/awslabs/aws-c-cal")
(license license:asl2.0)))
+
+(define-public pcl
+ (package
+ (name "pcl")
+ (version "1.12")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "http://www.xmailserver.org/pcl-" version ".tar.gz"))
+ (sha256
+ (base32
+ "06ly65rq4iyj2p4704i215c8y4rgspwl8sxfaifmf4ahfr30bcz7"))))
+ (build-system gnu-build-system)
+ (home-page "http://www.xmailserver.org/libpcl.html")
+ (synopsis "Portable Coroutine Library")
+ (description "The @acronym{PCL, Portable Coroutine Library} implements the
+low level functionality for coroutines.")
+ (license license:gpl2+)))