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>
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>
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>
* 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
* 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>
* 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>
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.
- 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
* 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>
* 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
* 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
* 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
* 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