diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..471c9ef --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,30 @@ +cmake_minimum_required(VERSION 3.7) +project(AnotherMemCheck) + +set(AnotherMemCheck_VERSION 1.0) +set(AnotherMemCheck_SOVERSION 1) + +set(AnotherMemCheck_SOURCES + "${CMAKE_CURRENT_SOURCE_DIR}/src/another_memcheck.cc" + "${CMAKE_CURRENT_SOURCE_DIR}/src/another_memcheck_external.cc" +) + +add_compile_options( + -Wall -Wextra -Wpedantic -Wno-missing-braces + $<$:-Weffc++> + $<$:-Og> +) + +if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES) + message(STATUS "Setting build type to 'Debug', none was specified.") + set(CMAKE_BUILD_TYPE Debug CACHE STRING "Choose the type of build." FORCE) + set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS "Debug" "Release") +endif() + +set(BUILD_SHARED_LIBS On CACHE STRING "Build as shared library." FORCE) + +add_library(AnotherMemCheck ${AnotherMemCheck_SOURCES}) +set_target_properties(AnotherMemCheck PROPERTIES VERSION ${AnotherMemCheck_VERSION} + SOVERSION ${AnotherMemCheck_SOVERSION}) + +target_compile_features(AnotherMemCheck PUBLIC cxx_std_20)