gnu: Add unifdef.

* gnu/packages/c.scm (unifdef): New variable.
This commit is contained in:
Maxim Cournoyer 2020-04-03 14:45:55 -04:00
parent 9cc35585b0
commit 5bc13b8e9b
No known key found for this signature in database
GPG key ID: 1260E46482E63562

View file

@ -9,6 +9,7 @@
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2020 Marius Bakke <marius@gnu.org> ;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
;;; Copyright @ 2020 Katherine Cox-Buday <cox.katherine.e@gmail.com> ;;; 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. ;;; This file is part of GNU Guix.
;;; ;;;
@ -436,3 +437,39 @@ (define-public liblogging
"Liblogging is an easy to use library for logging. It offers an enhanced "Liblogging is an easy to use library for logging. It offers an enhanced
replacement for the syslog() call, but retains its ease of use.") replacement for the syslog() call, but retains its ease of use.")
(license license:bsd-2))) (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