mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Allow statically linked windows build in CMake.
This commit is contained in:
parent
79201f8834
commit
860226e25d
@ -25,6 +25,9 @@ set(ETH_SCRIPTS_DIR ${ETH_CMAKE_DIR}/scripts)
|
|||||||
## use multithreaded boost libraries, with -mt suffix
|
## use multithreaded boost libraries, with -mt suffix
|
||||||
set(Boost_USE_MULTITHREADED ON)
|
set(Boost_USE_MULTITHREADED ON)
|
||||||
option(Boost_USE_STATIC_LIBS "Link Boost statically" ON)
|
option(Boost_USE_STATIC_LIBS "Link Boost statically" ON)
|
||||||
|
if(WIN32)
|
||||||
|
option(Boost_USE_STATIC_RUNTIME "Link Boost against static C++ runtime libraries" ON)
|
||||||
|
endif()
|
||||||
|
|
||||||
set(BOOST_COMPONENTS "filesystem;unit_test_framework;program_options;system")
|
set(BOOST_COMPONENTS "filesystem;unit_test_framework;program_options;system")
|
||||||
|
|
||||||
|
@ -15,5 +15,9 @@ macro (eth_policy)
|
|||||||
# do not interpret if() arguments as variables!
|
# do not interpret if() arguments as variables!
|
||||||
cmake_policy(SET CMP0054 NEW)
|
cmake_policy(SET CMP0054 NEW)
|
||||||
endif()
|
endif()
|
||||||
endmacro()
|
|
||||||
|
|
||||||
|
if (POLICY CMP0091)
|
||||||
|
# Allow selecting MSVC runtime library using CMAKE_MSVC_RUNTIME_LIBRARY.
|
||||||
|
cmake_policy(SET CMP0091 NEW)
|
||||||
|
endif()
|
||||||
|
endmacro()
|
||||||
|
@ -34,6 +34,12 @@ if(CMAKE_VERSION VERSION_GREATER 3.1)
|
|||||||
set(byproducts BUILD_BYPRODUCTS "${JSONCPP_LIBRARY}")
|
set(byproducts BUILD_BYPRODUCTS "${JSONCPP_LIBRARY}")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
# Propagate CMAKE_MSVC_RUNTIME_LIBRARY on Windows builds, if set.
|
||||||
|
if (WIN32 AND POLICY CMP0091 AND CMAKE_MSVC_RUNTIME_LIBRARY)
|
||||||
|
list(APPEND JSONCPP_CMAKE_ARGS "-DCMAKE_POLICY_DEFAULT_CMP0091:STRING=NEW")
|
||||||
|
list(APPEND JSONCPP_CMAKE_ARGS "-DCMAKE_MSVC_RUNTIME_LIBRARY=${CMAKE_MSVC_RUNTIME_LIBRARY}")
|
||||||
|
endif()
|
||||||
|
|
||||||
ExternalProject_Add(jsoncpp-project
|
ExternalProject_Add(jsoncpp-project
|
||||||
PREFIX "${prefix}"
|
PREFIX "${prefix}"
|
||||||
DOWNLOAD_DIR "${CMAKE_SOURCE_DIR}/deps/downloads"
|
DOWNLOAD_DIR "${CMAKE_SOURCE_DIR}/deps/downloads"
|
||||||
@ -51,6 +57,7 @@ ExternalProject_Add(jsoncpp-project
|
|||||||
-DJSONCPP_WITH_PKGCONFIG_SUPPORT=OFF
|
-DJSONCPP_WITH_PKGCONFIG_SUPPORT=OFF
|
||||||
-DCMAKE_CXX_FLAGS=${JSONCPP_CXX_FLAGS}
|
-DCMAKE_CXX_FLAGS=${JSONCPP_CXX_FLAGS}
|
||||||
-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
|
-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
|
||||||
|
${JSONCPP_CMAKE_ARGS}
|
||||||
${byproducts}
|
${byproducts}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user