|
@@ -1,9 +1,13 @@
|
|
|
-cmake_minimum_required(VERSION 3.10)
|
|
|
-
|
|
|
-project(heatshrink C)
|
|
|
-
|
|
|
-add_library(${PROJECT_NAME} heatshrink_decoder.c heatshrink_encoder.c)
|
|
|
-add_library(${PROJECT_NAME}_dynalloc heatshrink_decoder.c heatshrink_encoder.c)
|
|
|
+cmake_minimum_required(VERSION 3.10)
|
|
|
+
|
|
|
+project(heatshrink LANGUAGES C VERSION 0.4.1)
|
|
|
+
|
|
|
+set(CMAKE_C_STANDARD 99)
|
|
|
+set(CMAKE_C_STANDARD_REQUIRED ON)
|
|
|
+set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON)
|
|
|
+
|
|
|
+add_library(${PROJECT_NAME} heatshrink_decoder.c heatshrink_encoder.c)
|
|
|
+add_library(${PROJECT_NAME}_dynalloc heatshrink_decoder.c heatshrink_encoder.c)
|
|
|
|
|
|
find_library(MATH_LIBRARY m) # Business as usual
|
|
|
if(MATH_LIBRARY)
|
|
@@ -19,19 +23,26 @@ target_compile_definitions(${PROJECT_NAME}_dynalloc PUBLIC HEATSHRINK_DYNAMIC_AL
|
|
|
if (UNIX)
|
|
|
add_executable(${PROJECT_NAME}_cmd heatshrink.c)
|
|
|
target_link_libraries(${PROJECT_NAME}_cmd ${PROJECT_NAME}_dynalloc)
|
|
|
- set_target_properties(${PROJECT_NAME}_cmd PROPERTIES OUTPUT_NAME ${PROJECT_NAME})
|
|
|
-endif ()
|
|
|
-
|
|
|
-# Installation and export:
|
|
|
-
|
|
|
-include(CMakePackageConfigHelpers)
|
|
|
-
|
|
|
-write_basic_package_version_file(
|
|
|
- "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake"
|
|
|
- VERSION 0.4.1
|
|
|
- COMPATIBILITY AnyNewerVersion
|
|
|
-)
|
|
|
-
|
|
|
+ set_target_properties(${PROJECT_NAME}_cmd PROPERTIES OUTPUT_NAME ${PROJECT_NAME})
|
|
|
+endif ()
|
|
|
+
|
|
|
+foreach (tgt ${PROJECT_NAME} ${PROJECT_NAME}_dynalloc)
|
|
|
+ set_target_properties(${tgt}
|
|
|
+ PROPERTIES
|
|
|
+ VERSION ${PROJECT_VERSION}
|
|
|
+ SOVERSION ${PROJECT_VERSION})
|
|
|
+endforeach()
|
|
|
+
|
|
|
+# Installation and export:
|
|
|
+
|
|
|
+include(CMakePackageConfigHelpers)
|
|
|
+
|
|
|
+write_basic_package_version_file(
|
|
|
+ "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake"
|
|
|
+ VERSION ${PROJECT_VERSION}
|
|
|
+ COMPATIBILITY AnyNewerVersion
|
|
|
+)
|
|
|
+
|
|
|
set(_exported_targets ${PROJECT_NAME} ${PROJECT_NAME}_dynalloc)
|
|
|
if (UNIX)
|
|
|
list(APPEND _exported_targets ${PROJECT_NAME}_cmd)
|