gnu: Add cli11.
* gnu/packages/cpp.scm (cli11): New variable. Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>master
parent
ae1f36f2a8
commit
f129ca0b18
|
@ -16,6 +16,7 @@
|
|||
;;; Copyright © 2020 Alexandros Theodotou <alex@zrythm.org>
|
||||
;;; Copyright © 2020, 2021 Greg Hogan <code@greghogan.com>
|
||||
;;; Copyright © 2020 Brett Gilio <brettg@gnu.org>
|
||||
;;; Copyright © 2020 Milkey Mouse <milkeymouse@meme.institute>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -40,6 +41,7 @@
|
|||
#:use-module (guix build-system cmake)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module (guix modules)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages boost)
|
||||
|
@ -903,3 +905,51 @@ provides a number of utilities to make coding with expected cleaner.")
|
|||
(description "Magic Enum offers static reflection of enums, with
|
||||
conversions to and from strings, iteration and related functionality.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public cli11
|
||||
(package
|
||||
(name "cli11")
|
||||
(version "1.9.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/CLIUtils/CLI11")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0hbch0vk8irgmiaxnfqlqys65v1770rxxdfn3d23m2vqyjh0j9l6"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin (delete-file-recursively "extern")
|
||||
#t))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
'("-DCLI11_SINGLE_FILE=OFF"
|
||||
"-DCLI11_BUILD_EXAMPLES=OFF")
|
||||
#:imported-modules ,(append %cmake-build-system-modules
|
||||
(source-module-closure '((guix utils))))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'configure 'no-vendor-gtest
|
||||
(lambda _
|
||||
(use-modules (guix utils))
|
||||
(substitute* "tests/CMakeLists.txt"
|
||||
;; We provide our own googletest, so this is not really a problem.
|
||||
(("message\\(FATAL_ERROR \"You have requested tests be built, but googletest is not downloaded." msg)
|
||||
(string-replace-substring msg "FATAL_ERROR" "TRACE")))
|
||||
(substitute* "cmake/AddGoogletest.cmake"
|
||||
(("^add_subdirectory\\(.*googletest.*$") "find_package(GTest REQUIRED)")
|
||||
(("^set_target_properties\\(gtest gtest_main gmock gmock_main") "")
|
||||
(("^ PROPERTIES FOLDER \"Extern\"\\)") ""))
|
||||
#t)))))
|
||||
(native-inputs
|
||||
`(("doxygen" ,doxygen)
|
||||
("googletest" ,googletest)))
|
||||
(synopsis "Command line parser for C++11")
|
||||
(description
|
||||
"CLI11 is a command line parser for C++11 and beyond that provides a rich
|
||||
feature set with a simple and intuitive interface.")
|
||||
(home-page "https://cliutils.github.io/CLI11/book/")
|
||||
(license license:bsd-3)))
|
||||
|
|
Reference in New Issue