diff --git a/CMakeLists.txt b/CMakeLists.txt index e198f7c..515b3fc 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,4 +1,9 @@ +if(MSVC) +cmake_minimum_required (VERSION 3.16.4) +cmake_policy(SET CMP0091 NEW) +else() cmake_minimum_required (VERSION 3.0) +endif() include(CheckFunctionExists) include(CheckSymbolExists) include(CheckLibraryExists) @@ -36,6 +41,11 @@ option(ENABLE_EXTRATESTS "Enable extra tests that may be unreliable on some plat option(ENABLE_NC "Enable installing TLS-enabled nc(1)" OFF) set(OPENSSLDIR ${OPENSSLDIR} CACHE PATH "Set the default openssl directory" FORCE) +option(USE_STATIC_MSVC_RUNTIMES "Use /MT instead of /MD in MSVC" OFF) +if(USE_STATIC_MSVC_RUNTIMES) + set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$:Debug>") +endif() + if(NOT LIBRESSL_SKIP_INSTALL) set( ENABLE_LIBRESSL_INSTALL ON ) endif(NOT LIBRESSL_SKIP_INSTALL) diff --git a/appveyor.yml b/appveyor.yml index 8ac2045..4e0b488 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -1,25 +1,28 @@ image: - - Visual Studio 2015 - #- Visual Studio 2017 + - Visual Studio 2019 environment: PATH: C:\msys64\usr\bin;C:\msys64\mingw64\bin;C:\Windows\System32;C:\Windows;%PATH% matrix: - - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015 - GENERATOR: Visual Studio 14 2015 Win64 + - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019 + GENERATOR: Visual Studio 16 2019 + ARCHITECTURE: Win32 CONFIG: Release SHARED_LIBS: ON - - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015 - GENERATOR: Visual Studio 14 2015 - CONFIG: Release - SHARED_LIBS: ON - - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015 - GENERATOR: Visual Studio 14 2015 Win64 + - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019 + GENERATOR: Visual Studio 16 2019 + ARCHITECTURE: Win32 CONFIG: Release SHARED_LIBS: OFF - - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015 - GENERATOR: Visual Studio 14 2015 + - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019 + GENERATOR: Visual Studio 16 2019 + ARCHITECTURE: x64 + CONFIG: Release + SHARED_LIBS: ON + - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019 + GENERATOR: Visual Studio 16 2019 + ARCHITECTURE: x64 CONFIG: Release SHARED_LIBS: OFF @@ -34,7 +37,7 @@ before_build: - bash autogen.sh - mkdir build - cd build - - cmake .. -G "%GENERATOR%" -DBUILD_SHARED_LIBS=%SHARED_LIBS% -DCMAKE_INSTALL_PREFIX=../local + - cmake .. -G "%GENERATOR%" -A "%ARCHITECTURE%" -DBUILD_SHARED_LIBS=%SHARED_LIBS% -DCMAKE_INSTALL_PREFIX=../local build_script: - cmake --build . --config %CONFIG%