cmake: add option to use static runtime (no need for libgcc.dll/libstdc++.dll/libwinpthread.dll
This commit is contained in:
parent
7c754b8356
commit
183dea9a32
@ -14,6 +14,8 @@ set(librw_AUTHOR aap)
|
|||||||
|
|
||||||
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/cmake")
|
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/cmake")
|
||||||
|
|
||||||
|
set(LIBRW_STATIC_RUNTIME_DEFAULT OFF)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(LIBRW_PLATFORMS "NULL" "GL3" "D3D9")
|
set(LIBRW_PLATFORMS "NULL" "GL3" "D3D9")
|
||||||
set(LIBRW_PLATFORM_GL3_REQUIRES_OPENGL ON)
|
set(LIBRW_PLATFORM_GL3_REQUIRES_OPENGL ON)
|
||||||
@ -65,6 +67,11 @@ include(CMakeDependentOption)
|
|||||||
option(LIBRW_TOOLS "Build librw tools" ${librw_MAINPROJECT})
|
option(LIBRW_TOOLS "Build librw tools" ${librw_MAINPROJECT})
|
||||||
option(LIBRW_INSTALL "Install librw files" ${librw_MAINPROJECT})
|
option(LIBRW_INSTALL "Install librw files" ${librw_MAINPROJECT})
|
||||||
cmake_dependent_option(LIBRW_EXAMPLES "Build librw examples" ON "NOT LIBRW_PLATFORM_PS2;NOT LIBRW_PLATFORM_NULL" OFF)
|
cmake_dependent_option(LIBRW_EXAMPLES "Build librw examples" ON "NOT LIBRW_PLATFORM_PS2;NOT LIBRW_PLATFORM_NULL" OFF)
|
||||||
|
option(LIBRW_STATIC_RUNTIME "Try very hard to link to static libraries" ${LIBRW_STATIC_RUNTIME_DEFAULT})
|
||||||
|
|
||||||
|
if(LIBRW_STATIC_RUNTIME)
|
||||||
|
include(UseStaticRuntime)
|
||||||
|
endif()
|
||||||
|
|
||||||
if(LIBRW_INSTALL)
|
if(LIBRW_INSTALL)
|
||||||
include(GNUInstallDirs)
|
include(GNUInstallDirs)
|
||||||
|
7
cmake/UseStaticRuntime.cmake
Normal file
7
cmake/UseStaticRuntime.cmake
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
if(CMAKE_C_COMPILER_ID MATCHES "^MSVC$")
|
||||||
|
set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(CMAKE_C_COMPILER_ID MATCHES "^(GNU|Clang)$")
|
||||||
|
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -static")
|
||||||
|
endif()
|
@ -1,5 +1,7 @@
|
|||||||
set(SDL2_STATIC_INIT ON)
|
set(SDL2_STATIC_INIT ON)
|
||||||
set(GLFW3_STATIC_INIT ON)
|
set(GLFW3_STATIC_INIT ON)
|
||||||
|
|
||||||
|
set(LIBRW_STATIC_RUNTIME_DEFAULT ON)
|
||||||
|
|
||||||
function(librw_platform_target TARGET)
|
function(librw_platform_target TARGET)
|
||||||
endfunction()
|
endfunction()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user