Update pingcheck to work with cmake 3.28
[pingcheck] / CMakeLists.txt
index 190b8b3..24d4d58 100644 (file)
@@ -1,22 +1,19 @@
+cmake_minimum_required(VERSION 3.28 FATAL_ERROR)
+
 # project: definitions
 project(pingcheck)
-set(VERSION 0.1)
+set(VERSION 0.8)
+set(VERSION_REVISION 0)
 set(TARGET ${PROJECT_NAME})
 
-# CMake
-if("${CMAKE_BUILD_TYPE}" STREQUAL "")
-   set(CMAKE_BUILD_TYPE     Debug)
-endif("${CMAKE_BUILD_TYPE}" STREQUAL "")
+# cmake: build options
 set(CMAKE_COLOR_MAKEFILE ON)
-cmake_minimum_required(VERSION 2.6 FATAL_ERROR)
 
 # compiler: add definitions and arguments to the compiler
 add_definitions(
-    -Wall -Wextra -Weffc++ -Wshadow -Wcast-qual -Wconversion -pedantic
-    #-Werror
-    #-O2
     -DVERSION_STRING=${VERSION}
     -DPROJECT_NAME=\"${PROJECT_NAME}\"
+    -DVERSION_REVISION_STRING=${VERSION_REVISION}
 )
 
 # package: package information
@@ -35,7 +32,17 @@ set(CPACK_SOURCE_IGNORE_FILES
 )
 set(CPACK_SOURCE_PACKAGE_FILE_NAME "${TARGET}-${VERSION}")
 
-# build the application in the source directory
+# "make dist" target
+set(ARCHIVE_NAME ${CMAKE_PROJECT_NAME}-${VERSION})
+add_custom_target(dist
+    COMMAND git archive --prefix=${ARCHIVE_NAME}/ HEAD
+            | bzip2 > ${CMAKE_BINARY_DIR}/${ARCHIVE_NAME}.tar.bz2
+    WORKING_DIRECTORY ${CMAKE_SOURCE_DIR})
+
+# cmake: build the application in the source directory
 add_subdirectory(src)
 
+# cmake: build the test cases
+add_subdirectory(test)
+
 include(CPack)