# HG changeset patch # User jodogne # Date 1427893912 -7200 # Node ID 8183253effb93fb364e41ac25b5b340664371da3 # Parent 10a35ea52161223cb8458b973b5c594ba1c5d6c6 support of visual studio diff -r 10a35ea52161 -r 8183253effb9 CMakeLists.txt --- a/CMakeLists.txt Tue Mar 17 16:58:57 2015 +0100 +++ b/CMakeLists.txt Wed Apr 01 15:11:52 2015 +0200 @@ -18,7 +18,7 @@ cmake_minimum_required(VERSION 2.8) -project(OrthancPostgreSQL) +project(OrthancDicomWeb) set(ORTHANC_DICOM_WEB_VERSION "1.0") @@ -41,7 +41,6 @@ # Force static build when cross-compiling if (CMAKE_CROSSCOMPILING) set(STATIC_BUILD ON) - set(STANDALONE_BUILD ON) endif() if (${CMAKE_SYSTEM_NAME} STREQUAL "Linux") @@ -60,6 +59,28 @@ SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--version-script=${CMAKE_SOURCE_DIR}/Resources/VersionScript.map -Wl,--no-undefined") endif() +if (MSVC) + # Use static runtime under Visual Studio + # http://www.cmake.org/Wiki/CMake_FAQ#Dynamic_Replace + # http://stackoverflow.com/a/6510446 + foreach(flag_var + CMAKE_C_FLAGS_DEBUG + CMAKE_CXX_FLAGS_DEBUG + CMAKE_C_FLAGS_RELEASE + CMAKE_CXX_FLAGS_RELEASE + CMAKE_C_FLAGS_MINSIZEREL + CMAKE_CXX_FLAGS_MINSIZEREL + CMAKE_C_FLAGS_RELWITHDEBINFO + CMAKE_CXX_FLAGS_RELWITHDEBINFO) + string(REGEX REPLACE "/MD" "/MT" ${flag_var} "${${flag_var}}") + string(REGEX REPLACE "/MDd" "/MTd" ${flag_var} "${${flag_var}}") + endforeach(flag_var) + + add_definitions( + -D_CRT_SECURE_NO_WARNINGS=1 + -D_CRT_NONSTDC_NO_DEPRECATE=1) +endif() + include(CheckIncludeFiles) include(CheckIncludeFileCXX) diff -r 10a35ea52161 -r 8183253effb9 NEWS --- a/NEWS Tue Mar 17 16:58:57 2015 +0100 +++ b/NEWS Wed Apr 01 15:11:52 2015 +0200 @@ -3,6 +3,7 @@ No official release yet. Still work in progress. +* Support of Visual Studio 2008 2015/03/13 diff -r 10a35ea52161 -r 8183253effb9 Resources/CMake/GdcmConfiguration.cmake --- a/Resources/CMake/GdcmConfiguration.cmake Tue Mar 17 16:58:57 2015 +0100 +++ b/Resources/CMake/GdcmConfiguration.cmake Wed Apr 01 15:11:52 2015 +0200 @@ -22,6 +22,16 @@ if (${CMAKE_SYSTEM_NAME} STREQUAL "Linux") set(Flags -DCMAKE_CXX_FLAGS:STRING=-fPIC -DCMAKE_C_FLAGS:STRING=-fPIC) else() + set(Flags + -DCMAKE_C_FLAGS_DEBUG=${CMAKE_C_FLAGS_DEBUG} + -DCMAKE_CXX_FLAGS_DEBUG=${CMAKE_CXX_FLAGS_DEBUG} + -DCMAKE_C_FLAGS_RELEASE=${CMAKE_C_FLAGS_RELEASE} + -DCMAKE_CXX_FLAGS_RELEASE=${CMAKE_CXX_FLAGS_RELEASE} + -DCMAKE_C_FLAGS_MINSIZEREL=${CMAKE_C_FLAGS_MINSIZEREL} + -DCMAKE_CXX_FLAGS_MINSIZEREL=${CMAKE_CXX_FLAGS_MINSIZEREL} + -DCMAKE_C_FLAGS_RELWITHDEBINFO=${CMAKE_C_FLAGS_RELWITHDEBINFO} + -DCMAKE_CXX_FLAGS_RELWITHDEBINFO=${CMAKE_CXX_FLAGS_RELWITHDEBINFO} + ) endif() if (CMAKE_TOOLCHAIN_FILE) @@ -38,12 +48,13 @@ ) if(MSVC) + set(Prefix "") set(Suffix ".lib") else() + list(GET CMAKE_FIND_LIBRARY_PREFIXES 0 Prefix) set(Suffix ".a") endif() - list(GET CMAKE_FIND_LIBRARY_PREFIXES 0 Prefix) set(GDCM_LIBRARIES ${Prefix}gdcmMSFF${Suffix} ${Prefix}gdcmcharls${Suffix}