diff options
| author | Markus Mittendrein <git@maxmitti.tk> | 2019-03-08 00:22:20 +0100 |
|---|---|---|
| committer | Markus Mittendrein <git@maxmitti.tk> | 2019-03-08 00:25:57 +0100 |
| commit | 31693290ed717d700480774f4f6b49dbe9b9b704 (patch) | |
| tree | 4cbbeb7ea82a950ea3c9ebadea6276d750482c4b /CMakeLists.txt | |
| parent | 841ee0e92516827e6dd6f2101903b5ec1cc85fb4 (diff) | |
| download | cc4group-31693290ed717d700480774f4f6b49dbe9b9b704.tar.gz cc4group-31693290ed717d700480774f4f6b49dbe9b9b704.zip | |
Windows support (hopefully!)
Diffstat (limited to 'CMakeLists.txt')
| -rw-r--r-- | CMakeLists.txt | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index de40a0f..0adbb46 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -13,10 +13,20 @@ endif() find_package(ZLIB REQUIRED) + +if(${CMAKE_SYSTEM_NAME} MATCHES "Windows") + set(CC4GROUP_PLATFORM "windows") +else() + set(CC4GROUP_PLATFORM "unix") +endif() + +string(TOUPPER ${CC4GROUP_PLATFORM} CC4GROUP_PLATFORM_DEF) + set(cc4group_SRC src/cc4group.c src/c4groupheader.c src/c4groupentrycore.c + src/platform/${CC4GROUP_PLATFORM}.c ) set(cppc4group_SRC @@ -26,6 +36,7 @@ set(cppc4group_SRC add_library(cc4group_objs OBJECT ${cc4group_SRC}) set_property(TARGET cc4group_objs PROPERTY POSITION_INDEPENDENT_CODE ON) target_include_directories(cc4group_objs PRIVATE ZLIB::ZLIB) +target_compile_definitions(cc4group_objs PRIVATE CC4GROUP_PLATFORM_${CC4GROUP_PLATFORM_DEF}) add_library(cc4group STATIC $<TARGET_OBJECTS:cc4group_objs>) target_link_libraries(cc4group PRIVATE ZLIB::ZLIB) @@ -45,7 +56,6 @@ function(example name) endfunction() example(unc4group) -example(c4cat) example(c4copy) example(c4info) example(c4ls) @@ -53,5 +63,11 @@ example(c4touch) example(c4rm) example(c4mkdir) -add_executable(c4cat_dyn examples/c4cat_dyn.c) -target_link_libraries(c4cat_dyn PRIVATE -ldl) +add_executable(c4cat examples/c4cat.c src/platform/${CC4GROUP_PLATFORM}.c) +target_link_libraries(c4cat PRIVATE cc4group) +target_compile_definitions(c4cat PRIVATE CC4GROUP_PLATFORM_${CC4GROUP_PLATFORM_DEF}) + +if(NOT ${CMAKE_SYSTEM_NAME} MATCHES "Windows") + add_executable(c4cat_dyn examples/c4cat_dyn.c) + target_link_libraries(c4cat_dyn PRIVATE -ldl) +endif() |
