34 lines
892 B
CMake
34 lines
892 B
CMake
cmake_minimum_required(VERSION 3.10)
|
|
|
|
# Modify only these if one source file!
|
|
project(CppRecurringRainfall)
|
|
set(CURRENT_PROJECT_CODE_NAME recurringrainfall)
|
|
set(FILE_EXT cpp)
|
|
# End
|
|
|
|
set(CMAKE_C_STANDARD 11)
|
|
set(CMAKE_C_STANDARD_REQUIRED True)
|
|
set(CMAKE_CXX_STANDARD 17)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED True)
|
|
|
|
# We want all the warnings and as errors enabled
|
|
if (MSVC)
|
|
# warning level 4 and all warnings as errors
|
|
add_compile_options(/W4 /WX)
|
|
else()
|
|
# lots of warnings and all warnings as errors
|
|
add_compile_options(-Wall -Wextra -pedantic -Werror)
|
|
endif()
|
|
|
|
add_executable(${CMAKE_PROJECT_NAME} ${CMAKE_CURRENT_LIST_DIR}/${CURRENT_PROJECT_CODE_NAME}.${FILE_EXT})
|
|
|
|
target_include_directories(${CMAKE_PROJECT_NAME} PUBLIC
|
|
${EXTRA_INCLUDES}
|
|
)
|
|
|
|
target_link_libraries(${CMAKE_PROJECT_NAME} PUBLIC
|
|
${EXTRA_LIBS}
|
|
)
|
|
|
|
|