1
0
mirror of https://github.com/CLIUtils/CLI11.git synced 2025-05-02 13:43:52 +00:00

89 Commits

Author SHA1 Message Date
Henry Schreiner
d9473a486b
feat: increase min CMake to 3.10 (#1084)
Close https://github.com/CLIUtils/CLI11/issues/1082.

Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
2024-11-15 05:40:46 -08:00
Philip Top
e52bef1eb8
Custom fuzz options (#1077)
add mechanics for the fuzzer to add custom options.

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2024-10-15 05:53:14 -07:00
Henry Schreiner
bd6462f62f
chore: move single file to own folder (#1030)
See https://github.com/CLIUtils/CLI11/pull/1025.

---------

Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2024-05-01 12:02:16 -04:00
Henry Schreiner
e4ee3af785
chore: clean out some mentions of appveyor (#990) 2024-02-04 23:41:56 -05:00
Philip Top
35aa92d71a
update supported cmake versions and add some tests with newer compilers (#972)
Update and test with some newer compilers and cmake versions

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2024-01-08 05:40:26 -08:00
pre-commit-ci[bot]
f043d0c06b
chore(deps): pre-commit.ci autoupdate (#946)
<!--pre-commit.ci start-->
updates:
- [github.com/pre-commit/mirrors-clang-format: v17.0.3 →
v17.0.4](https://github.com/pre-commit/mirrors-clang-format/compare/v17.0.3...v17.0.4)
<!--pre-commit.ci end-->

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Philip Top <phlptp@gmail.com>
2023-11-11 06:08:14 -08:00
Henry Schreiner
826415f8ba
fix: only use CPack if this is the main project (#902)
Alternative fix to, and closes #900.

Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
2023-09-15 16:21:40 -04:00
Henry Schreiner
f07a8cc6fb
fix: increase min CMake to 3.5 (#898)
CMake 3.27 will start warning if this is older than 3.5.

Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
2023-06-28 16:24:27 -04:00
Philip Top
18a256ec85
ci: add CUDA versions (#864)
* update tests

* update tested cmake version

* try the correct docker tag names

* try different order for cuda build

* reorder the builds

* use an install boost action

* install boost through apt
2023-03-13 14:29:38 -04:00
Philip Top
0a615f854d
fix: issue found by fuzzing (#846)
* Add the beginnings of a fuzzing system for CLI11.  This commit adds the fuzzing code, a simple test, and two fixes to issues(seg faults) found by the initial round of fuzzing.  It also adds a few tests and coverage issues uncovered in the process of developing the fuzz tests. As a side effect adjusts some of the azure tests to specify the vmImage which was being changed on azure.

* update license to match rest of code base

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2023-03-09 15:02:49 -05:00
Philip Top
4c7c8ddc45
feat: dot notation (#789)
* Allow using dot notation for subcommand arguments  such as --sub1.field

* add tests for dot notation for subcommands

* style: pre-commit.ci fixes

* add test for short form arguments in dot notation

* style: pre-commit.ci fixes

* add _pre_parse_callback_ support using dot notation

* style: pre-commit.ci fixes

* update cmake tests to include 3.24

* change line endings

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2023-01-04 10:05:40 -05:00
Philip Top
fbe1763675
add new CMAKE version support and fix CI test failure (#823) 2023-01-02 06:33:44 -08:00
Philip Top
faea921e40
chore: cmake reorganization (#768)
update conan and azure-pipelines to fix gcc 4.8 issue

make the CLI11 target sources only for newer CMake

Change the cmake to use subdirectory and move the library generation and warnings to separate files.
2022-08-25 08:14:59 -04:00
Daniel Herrera Castro
d5b9b3d03a Make CLI11_PRECOMPLED off by default 2022-08-23 11:42:02 -04:00
Daniel Herrera Castro
b56ae237e5 [precompiled] Initial proof-of-concept with App.cpp
- Add C11_COMPILE cmake option that creates a static lib instead of header-only
- Add C11_INLINE macro that depends on C11_COMPILE
- Split App.hpp into App.hpp and impl/App_inl.hpp
- Add App.cpp that compiles App_inl.hpp into an object file
- CMake modifications to handle impl headers differently for sinlge-header, headers-only, and compiled versions
2022-08-23 11:42:02 -04:00
Henry Schreiner
c781998273
chore: clang tidy updates (#742)
* chore: update clang-tidy

Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>

* refactor: address clang-tidy

* fix: C++11 support

Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>

* chore: two more clang-tidy fixes

Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>

* fix: get_inject_separator should be bool

* refactor: addressing review feedback

Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
Co-authored-by: Philip Top <phlptp@gmail.com>

* Apply suggestions from code review

* Update include/CLI/Config.hpp

* Update include/CLI/Config.hpp

* Update include/CLI/Config.hpp

* Update include/CLI/Config.hpp

Co-authored-by: Philip Top <phlptp@gmail.com>
2022-06-26 14:53:01 -04:00
Henry Schreiner
a393e353ef
fix(build): simplify runs from master projects, require C++11 minimally if possible (#656) 2021-10-16 12:31:24 -04:00
Henry Schreiner
b440890eaf
docs: changelog update (#643)
* docs: changelog update

* chore: bump version(s)

* style: pre-commit.ci fixes

* docs: spelling fix

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2021-09-24 20:37:01 -04:00
Jose Luis Rivero
d17016e76c
fix(build): relocate cmake and pkgconfig files to an arch-independent path (#635)
* Relocate cmake and pkgconfig files to an arch-independent path

Use CMAKE_INSTALL_DATADIR instead of CMAKE_INSTALL_LIBDIR for
installing the pkgconfig and cmake files.

Signed-off-by: Jose Luis Rivero <jrivero@osrfoundation.org>

* style: pre-commit.ci fixes

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2021-08-22 23:51:30 -04:00
Benjamin Beichler
2f0435f390
only add CONFIGURE_DEPENDS if main project (#633)
- reglobbing of files is confusing, if CLI11 is used as library, as typically the files won't change
2021-08-10 21:55:10 -04:00
Henry Schreiner
aa31576666
chore: bump CMake limits and catch2 verison (#607) 2021-06-24 12:31:44 -04:00
Henry Schreiner
911ee02f6c style: run pre-commit 2021-06-15 14:52:40 -04:00
Henry Schreiner
f862849488
refactor: new version of MakeSingleFiles (#546)
* refactor: new version of MakeSingleFiles

* fix: use CMake and set version
2021-01-04 17:47:06 -05:00
djerius
e50a75f231
feat: create pkg-config file (#523) 2020-10-28 12:06:05 -04:00
Henry Schreiner
2b059cbdbe
fix: add quotes (#471)
* fix: add quotes

* Update CMakeLists.txt

* Try 2

* fix: Support paths with spaces using @ZeeD26's suggestion
2020-06-20 10:21:41 -04:00
Josh Soref
51a0efcbbc
Spelling (#429)
* spelling: argument

* spelling: conflicts

* spelling: correctly

* spelling: default

* spelling: description

* spelling: empty

* spelling: enum

* spelling: javascript

* spelling: modifying

* spelling: nonexistent

* spelling: plumbum

* spelling: programmatically

* spelling: received

* spelling: replaced

* spelling: required

* spelling: sanitizers

* spelling: semicolon

* spelling: source

* spelling: subcommands

* spelling: successful
2020-02-12 00:41:58 -05:00
Henry Schreiner
b5242611a5
Minor packaging cleanup 2020-01-31 13:49:16 -05:00
Henry Schreiner
9549c6287f
Clean up sdist creation (#422)
* Adding package to release

* Fix build.yml

* Update build.yml

* Update build.yml

* Update build.yml

* Update build.yml

* Cleaner, tigher packages

* Do not add package to release
2020-01-31 13:17:11 -05:00
KOLANICH
4903b698a9 Enhancements in building deb packages: (#399)
* Fixed building deb packages, broken because of lack contact field.
* Added some missing metadata.
* Set the name according to the convention.
2020-01-13 10:40:34 -05:00
Henry Fredrick Schreiner
7f47f9926f Fix for install=off 2020-01-09 09:53:58 -05:00
Henry Schreiner
0cc8806ec5 fixup! CMake updates from @slurps-mad-rips 2020-01-09 09:53:58 -05:00
Isabella Muerte
60e2932356 CMake updates from @slurps-mad-rips 2020-01-09 09:53:58 -05:00
Henry Schreiner
c356ec8702 Adding CMake 3.4 check, 2x faster CUDA build 2020-01-09 09:53:58 -05:00
Henry Schreiner
8570ffb564
Check for switch enum (#393)
* Check for switch enum

* Add missing cases
2020-01-08 10:17:36 -05:00
Henry Schreiner
ab94ee7e81 clang-tidy correctly run by CI 2020-01-06 14:16:36 -05:00
Henry Schreiner
ed7e0dcdeb Fix compiler warnings with -Wsign-conversion 2019-12-31 10:35:24 -05:00
Philip Top
73950eb6a2 add a cmakeLists for the book (#374)
* add a cmakeLists for the book to add a project in visual studio so the book can be edited with the code

* remove trailing whitespace

* remove restrictions on MSVC and use a globbing expression in finding the files.  Also add a check to make sure book directory exists which seems to be important on appveyor

* apparently doxygen was updated and the old download script no longer worked

* try a different url for the older download

* use github source tar
2019-12-28 17:59:47 -05:00
Khem Raj
c72057d877 clang and cross-compile fixes (#373)
* Add CLANG_TIDY check

Signed-off-by: Khem Raj <raj.khem@gmail.com>

* Use GNUInstallDirs instead of hard-coded path

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-12-28 17:55:47 -05:00
Henry Schreiner
3bdbbd7875
Adding CUDA NVCC build (#365)
* Adding CUDA build

* Filter NVCC warning

* Constexpr reword
2019-12-10 11:42:32 -05:00
Henry Fredrick Schreiner
2244ecc3f3 Adding and fixing Weffc++ 2019-11-29 21:49:05 -05:00
Henry Schreiner
c408505638 Fixes for doxygen generation 2019-09-06 17:31:03 -04:00
Henry Schreiner
7b315782e1
Warnings (#281)
* Fixing some warnings

* Make gtest a system library

* Fixing format

* Adding better method for adding warnings

* Nicer Windows deprecated test

* JSON update and drop testing timer

* Warnings as errors everywhere
2019-05-18 19:11:27 +02:00
Henry Schreiner
b6e3fb126a
Boost optional is no longer automatic (#279)
* Boost optional is no longer automatic

* Tighten up optional a bit

* Check times
2019-05-16 23:34:29 +02:00
Henry Schreiner
433fd91212
Build testing (#277)
* build-testing better supported

* Add formatting to Azure

* Adding more jobs to Azure

* Control

* Allow libc++ to be used on linux

* Fix modernize message

* Fix variable

* fixup! Fix modernize message

* Drop auto exp. optional

* Update readme, better user id in docker

* Fix BUILD_TESTING

* Drop format from travis, leave tidy for now

* Check tidy and format

* Tidy fully on Azure now
2019-05-14 15:33:15 +02:00
Paul le Roux
80420d62e2 Make ConfigVersion arch independent (#254)
CLI11 is header only and the architecture shouldn't matter. The arch
dependence has the potential to cause find_package to fail incorrectly.
2019-03-22 17:57:46 -04:00
Philip Top
546d5ec237 clear up some additional Wshadow warnings on older compilers (#232)
* clear up some additional Wshadow warnings on older compilers

* clear up a few more Wshadow warnings in option

* add extra test for delimiter in add_option_function call.

* clear up a warning from the test
2019-02-20 18:52:07 +01:00
Henry Schreiner
5e0bb1c8da
Fix Boost CMake (#226)
* Fixing typos in FindBoost

* Minimum required Boost is actually 1.61
2019-02-19 14:08:36 +01:00
Aleksey Mikhaylov
0387f35ec8 Prefer BUILD_TESTING over CLI11_TESTING if defined 2018-12-18 19:47:38 +01:00
Henry Fredrick Schreiner
f16f3c97f0 Fixing use as a subproject for installing #156 2018-09-03 22:48:45 +02:00
Henry Schreiner
73411e1e38
Minor build system improvements (#154) 2018-08-01 11:36:13 +02:00