diff --git a/CMakeLists.txt b/CMakeLists.txt index 498500f..3478950 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,7 +1,11 @@ cmake_minimum_required(VERSION 3.24.2) -set (CMAKE_CXX_STANDARD 11) +set(CMAKE_CXX_STANDARD 11) -project (cppchallenge) -set (CMAKE_RUNTIME_OUTPUT_DIRECTORY "build") +project(cppchallenge) +find_package(CLI11 REQUIRED) +set(BUILD_DIR "build") +set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${BUILD_DIR}) +set(CLI11_DIR ${BUILD_DIR}) file(GLOB SOURCES "src/*.cpp") -add_executable(cppchallenge ${SOURCES}) +add_executable(${PROJECT_NAME} ${SOURCES}) +target_link_libraries(${PROJECT_NAME} CLI11::CLI11) diff --git a/CMakeUserPresets.json b/CMakeUserPresets.json new file mode 100644 index 0000000..b321908 --- /dev/null +++ b/CMakeUserPresets.json @@ -0,0 +1,9 @@ +{ + "version": 4, + "vendor": { + "conan": {} + }, + "include": [ + "/home/ronh/work/cpp-challenge/build/CMakePresets.json" + ] +} \ No newline at end of file diff --git a/conanfile.txt b/conanfile.txt new file mode 100644 index 0000000..4e77224 --- /dev/null +++ b/conanfile.txt @@ -0,0 +1,7 @@ +[requires] +cli11/2.3.2 + +[generators] +CMakeDeps +CMakeToolchain + diff --git a/cppchallenge.cpp b/cppchallenge.cpp new file mode 100644 index 0000000..79b7a10 --- /dev/null +++ b/cppchallenge.cpp @@ -0,0 +1,11 @@ +#include "CLI/CLI.hpp" +#include + +int main(int argc, char *argv[]){ + CLI::App app{"Just a simple 'hello'"}; + CLI11_PARSE(app, argc, argv); + std::cout << "Hello World!" << std::endl; + return 0; +} + +// vim: set ts=4 expandtab : diff --git a/src/cppchallenge.cpp b/src/cppchallenge.cpp index 2804dbd..79b7a10 100644 --- a/src/cppchallenge.cpp +++ b/src/cppchallenge.cpp @@ -1,6 +1,9 @@ -#include +#include "CLI/CLI.hpp" +#include int main(int argc, char *argv[]){ + CLI::App app{"Just a simple 'hello'"}; + CLI11_PARSE(app, argc, argv); std::cout << "Hello World!" << std::endl; return 0; }