gnu: maven-resources-plugin: Don't use unstable tarball.
[jackhill/guix/guix.git] / gnu / packages / c.scm
index c107a36..25bc78e 100644 (file)
@@ -9,6 +9,7 @@
 ;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
 ;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
 ;;; Copyright @ 2020 Katherine Cox-Buday <cox.katherine.e@gmail.com>
+;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -310,7 +311,7 @@ any other grammar rules.")
 (define-public sparse
   (package
     (name "sparse")
-    (version "0.6.1")
+    (version "0.6.2")
     (source (origin
               (method url-fetch)
               (uri
@@ -318,7 +319,7 @@ any other grammar rules.")
                               "sparse-"  version ".tar.xz"))
               (sha256
                (base32
-                "0qavyryxmhd1rf11akgn1nq3r15k11bqa3qajaq36a56r225rc7x"))))
+                "1z11chawwcmf5xxx5v52cj7wrr3warz6q5wlcjvxpif1jbga172i"))))
     (build-system gnu-build-system)
     (inputs `(("perl" ,perl)))
     (arguments
@@ -350,7 +351,7 @@ releases.")
      (origin
        (method git-fetch)
        (uri (git-reference
-             (url "https://github.com/rsyslog/libestr.git")
+             (url "https://github.com/rsyslog/libestr")
              (commit (string-append "v" version))))
        (file-name (git-file-name name version))
        (sha256
@@ -383,7 +384,7 @@ more, like escaping special characters.")
      (origin
        (method git-fetch)
        (uri (git-reference
-             (url "https://github.com/rsyslog/libfastjson.git")
+             (url "https://github.com/rsyslog/libfastjson")
              (commit (string-append "v" version))))
        (file-name (git-file-name name version))
        (sha256
@@ -410,7 +411,7 @@ with essential JSON handling functions, sufficiently good JSON support (not
      (origin
        (method git-fetch)
        (uri (git-reference
-             (url "https://github.com/rsyslog/liblogging.git")
+             (url "https://github.com/rsyslog/liblogging")
              (commit (string-append "v" version))))
        (file-name (git-file-name name version))
        (sha256
@@ -436,3 +437,39 @@ with essential JSON handling functions, sufficiently good JSON support (not
      "Liblogging is an easy to use library for logging.  It offers an enhanced
 replacement for the syslog() call, but retains its ease of use.")
     (license license:bsd-2)))
+
+(define-public unifdef
+  (package
+    (name "unifdef")
+    (version "2.12")
+    (source (origin
+              (method url-fetch)
+              ;; https://dotat.at/prog/unifdef/unifdef-2.12.tar.xz
+              (uri (string-append "https://dotat.at/prog/" name "/"
+                                  name "-" version ".tar.xz"))
+              (sha256
+               (base32
+                "00647bp3m9n01ck6ilw6r24fk4mivmimamvm4hxp5p6wxh10zkj3"))
+              (modules '((guix build utils)))
+              (snippet
+               '(begin (delete-file-recursively "FreeBSD")
+                       (delete-file-recursively "win32")
+                       #t))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:phases (modify-phases %standard-phases
+                  (delete 'configure))
+       #:make-flags (list "CC=gcc" (string-append "prefix=" %output))
+       #:tests? #f))                    ;no test suite
+    (native-inputs
+     `(("perl" ,perl)))
+    (home-page "https://dotat.at/prog/unifdef/")
+    (synopsis "Utility to selectively processes conditional C preprocessor")
+    (description "The @command{unifdef} utility selectively processes
+conditional C preprocessor @code{#if} and @code{#ifdef} directives.  It
+removes from a file both the directives and the additional text that they
+delimit, while otherwise leaving the file alone.  It can be useful for
+avoiding distractions when studying code that uses @code{#ifdef} heavily for
+portability.")
+    (license (list license:bsd-2        ;all files except...
+                   license:bsd-3))))    ;...the unidef.1 manual page