# This file is automatically generated from cmake.toml - DO NOT EDIT # See https://github.com/build-cpp/cmkr for more information cmake_minimum_required(VERSION 2.8...3.8) if(CMAKE_SOURCE_DIR STREQUAL CMAKE_BINARY_DIR) message(FATAL_ERROR "In-tree builds are not supported. Run CMake from a separate directory: cmake -B build") endif() set(CMKR_ROOT_PROJECT OFF) if(CMAKE_CURRENT_SOURCE_DIR STREQUAL CMAKE_SOURCE_DIR) set(CMKR_ROOT_PROJECT ON) # Enable folder support set_property(GLOBAL PROPERTY USE_FOLDERS ON) # Create a configure-time dependency on cmake.toml to improve IDE support configure_file(cmake.toml cmake.toml COPYONLY) endif() project(cmkr LANGUAGES CXX VERSION 0.2.18 DESCRIPTION "CMakeLists generator from TOML" ) include("cmake/generate_documentation.cmake") include("cmake/generate_resources.cmake") # Subdirectory: third_party set(CMKR_CMAKE_FOLDER ${CMAKE_FOLDER}) if(CMAKE_FOLDER) set(CMAKE_FOLDER "${CMAKE_FOLDER}/third_party") else() set(CMAKE_FOLDER third_party) endif() add_subdirectory(third_party) set(CMAKE_FOLDER ${CMKR_CMAKE_FOLDER}) # Subdirectory: tests set(CMKR_CMAKE_FOLDER ${CMAKE_FOLDER}) if(CMAKE_FOLDER) set(CMAKE_FOLDER "${CMAKE_FOLDER}/tests") else() set(CMAKE_FOLDER tests) endif() add_subdirectory(tests) set(CMAKE_FOLDER ${CMKR_CMAKE_FOLDER}) # Target: cmkr_generate_documentation add_library(cmkr_generate_documentation INTERFACE) set(CMKR_TARGET cmkr_generate_documentation) generate_documentation() # Target: cmkr set(cmkr_SOURCES "src/arguments.cpp" "src/build.cpp" "src/cmake_generator.cpp" "src/error.cpp" "src/help.cpp" "src/main.cpp" "src/project_parser.cpp" "include/arguments.hpp" "include/build.hpp" "include/cmake_generator.hpp" "include/error.hpp" "include/fs.hpp" "include/help.hpp" "include/literals.hpp" "include/project_parser.hpp" "cmake/cmkr.cmake" "cmake/version.hpp.in" cmake.toml ) add_executable(cmkr) target_sources(cmkr PRIVATE ${cmkr_SOURCES}) source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR} FILES ${cmkr_SOURCES}) target_compile_features(cmkr PRIVATE cxx_std_11 ) target_include_directories(cmkr PRIVATE include ) target_link_libraries(cmkr PRIVATE toml11 ghc_filesystem mpark_variant ordered_map nlohmann_json ) get_directory_property(CMKR_VS_STARTUP_PROJECT DIRECTORY ${PROJECT_SOURCE_DIR} DEFINITION VS_STARTUP_PROJECT) if(NOT CMKR_VS_STARTUP_PROJECT) set_property(DIRECTORY ${PROJECT_SOURCE_DIR} PROPERTY VS_STARTUP_PROJECT cmkr) endif() set(CMKR_TARGET cmkr) generate_resources(${CMKR_TARGET}) install( TARGETS cmkr DESTINATION bin COMPONENT cmkr )