cmake_minimum_required(VERSION 3.10) project(CgeNet LANGUAGES C) set(CMAKE_C_STANDARD 99) set(CMAKE_C_STANDARD_REQUIRED ON) set(SOURCES ) set(SOURCES_WIN32 win32/Addr.c win32/Poll.c win32/Socket.c ) set(SOURCES_POSIX posix/Addr.c posix/Poll.c posix/Socket.c ) set(HEADERS CgeNet.h ) if(WIN32) message(STATUS "Platform - Win32") list(APPEND SOURCES ${SOURCES_WIN32}) elseif(UNIX) message(STATUS "Platform: Unix (Linux/BSD/MacOS X)") list(APPEND SOURCES ${SOURCES_POSIX}) endif() add_library(CgeNet STATIC ${SOURCES} ${HEADERS}) target_include_directories(CgeNet PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) install(TARGETS CgeNet ARCHIVE DESTINATION lib LIBRARY DESTINATION lib RUNTIME DESTINATION bin ) install(FILES ${HEADERS} DESTINATION include)