cmake_minimum_required(VERSION 3.24) project(Starshatter) set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_EXTENSIONS Yes) set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules") enable_testing() include(AddVersionFile) include(GenerateEmulator) include(GoogleTest) if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) if(CMAKE_HOST_SYSTEM_NAME MATCHES Windows) set(CMAKE_INSTALL_PREFIX "C:/Program Files (x86)/Starshatter" CACHE PATH "Prefix to install to" FORCE) else() set(CMAKE_INSTALL_PREFIX "/opt/starshatter" CACHE PATH "Prefix to install to" FORCE) endif() endif() if(MSVC) set(WINDOWSSDK_LIBPATH "C:/Program Files (x86)/Windows Kits/10/Lib/10.0.19041.0" CACHE FILEPATH "Path to a versioned lib directory of selected Windows SDK") set(WINDOWSSDK_PATH "C:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0" CACHE FILEPATH "Path to a versioned include directory of selected Windows SDK") endif() add_subdirectory(third-party) add_subdirectory(ArchiveEx) add_subdirectory(data) add_subdirectory(DefinitionEx) add_subdirectory(FoundationEx) add_subdirectory(InfoEx) if(MSVC) add_subdirectory(Magic2) endif() add_subdirectory(NetEx) add_subdirectory(Starserver) add_subdirectory(StarsEx) add_subdirectory(Starshatter) add_version_file(version.txt version.txt.conf ALL) install( FILES NOTICE COPYING COMPONENT Copyright DESTINATION ${CMAKE_INSTALL_PREFIX} )