[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#58261] [PATCH v3 06/15] gnu: Add optionparser.
From: |
David Elsing |
Subject: |
[bug#58261] [PATCH v3 06/15] gnu: Add optionparser. |
Date: |
Thu, 13 Oct 2022 21:04:15 +0000 |
* gnu/packages/cpp.scm (optionparser): New variable.
---
gnu/packages/cpp.scm | 48 ++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 48 insertions(+)
diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm
index 7871660611..51d146476f 100644
--- a/gnu/packages/cpp.scm
+++ b/gnu/packages/cpp.scm
@@ -2134,3 +2134,51 @@ (define-public tinydir
(description "@code{tinydir} is a header-only C wrapper for listing
directory contents.")
(license license:bsd-2)))
+
+(define-public optionparser
+ (package
+ (name "optionparser")
+ (version "1.7")
+ (source (origin
+ (method url-fetch)
+ (uri
+ (string-append "mirror://sourceforge/optionparser/"
+ "optionparser-" version ".tar.gz"))
+ (sha256
+ (base32
+ "04gfxrdzwacaynb8scsz6rr7nh64n6yk6w9dh2qdhrxw4caqr0dk"))))
+ (outputs '("out" "doc"))
+ (build-system gnu-build-system)
+ (arguments
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (delete 'configure)
+ (add-before 'build 'chdir
+ (lambda _ (chdir "src")))
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (begin
+ (invoke "./example_arg")
+ (invoke "./testparse")
+ (invoke "./testprintusage")
+ (invoke "./testodr")
+ (invoke "./example")))))
+ (replace 'install
+ (lambda _
+ (install-file "optionparser.h"
+ (string-append #$output "/include"))))
+ (add-after 'install 'install-doc
+ (lambda _
+ (copy-recursively
+ "../html"
+ (string-append #$output:doc
"/share/doc/optionparser/html")))))))
+ (native-inputs (list doxygen))
+ (home-page "https://optionparser.sourceforge.net/")
+ (synopsis "Header-only C++ library to parse command line options")
+ (description "This library can be used to handle the command line
+arguments of a C++ program. It supports the short and long option formats of
+getopt(), getopt_long() and getopt_long_only(), but has a more convenient
+interface.")
+ (license license:expat)))
--
2.37.0
- [bug#58261] [PATCH 06/11] gnu: Add gemmi., (continued)
[bug#58261] [PATCH v2 00/13] Add rdkit v2., David Elsing, 2022/10/07
[bug#58261] [PATCH v3 02/15] gnu: Add pocketfft-cpp., David Elsing, 2022/10/13
[bug#58261] [PATCH v3 01/15] gnu: Add fast-float., David Elsing, 2022/10/13
[bug#58261] [PATCH v3 06/15] gnu: Add optionparser.,
David Elsing <=
[bug#58261] [PATCH v3 05/15] gnu: Add tinydir., David Elsing, 2022/10/13
[bug#58261] [PATCH v3 03/15] gnu: Add sajson., David Elsing, 2022/10/13
[bug#58261] [PATCH v3 04/15] gnu: Add cbehave., David Elsing, 2022/10/13
[bug#58261] [PATCH v3 07/15] gnu: Add sajson-for-gemmi., David Elsing, 2022/10/13
[bug#58261] [PATCH v3 14/15] gnu: Add ringdecomposerlib., David Elsing, 2022/10/13
[bug#58261] [PATCH v3 09/15] gnu: Add freesasa., David Elsing, 2022/10/13
[bug#58261] [PATCH v3 12/15] gnu: Add yaehmop., David Elsing, 2022/10/13
[bug#58261] [PATCH v3 13/15] gnu: Add avalon-toolkit., David Elsing, 2022/10/13
[bug#58261] [PATCH v3 15/15] gnu: Add rdkit., David Elsing, 2022/10/13
[bug#58261] [PATCH v3 08/15] gnu: Add gemmi., David Elsing, 2022/10/13