mirror of
https://github.com/zeromq/libzmq.git
synced 2025-03-18 17:36:57 +00:00
Merge pull request #97 from steve-o/master
Add MSVC 2013 support; Fix CMake regressions upstream
This commit is contained in:
commit
aeb87cf2cc
@ -1,6 +1,9 @@
|
|||||||
# CMake build script for ZeroMQ on Windows
|
# CMake build script for ZeroMQ on Windows
|
||||||
|
|
||||||
cmake_minimum_required (VERSION 2.8)
|
# 2.8.11 provides toolkit support
|
||||||
|
# 2.8.11.2 provides MSVC2013 support
|
||||||
|
|
||||||
|
cmake_minimum_required (VERSION 2.8.11.2)
|
||||||
project (ZeroMQ)
|
project (ZeroMQ)
|
||||||
|
|
||||||
include (${CMAKE_SOURCE_DIR}/cmake/Modules/TestZMQVersion.cmake)
|
include (${CMAKE_SOURCE_DIR}/cmake/Modules/TestZMQVersion.cmake)
|
||||||
@ -79,6 +82,7 @@ add_definitions(
|
|||||||
# NB: May require tweaking for highly connected applications.
|
# NB: May require tweaking for highly connected applications.
|
||||||
-DFD_SETSIZE=1024
|
-DFD_SETSIZE=1024
|
||||||
-D_CRT_SECURE_NO_WARNINGS
|
-D_CRT_SECURE_NO_WARNINGS
|
||||||
|
-D_WIN32_WINNT=${_zmq_WIN32_WINNT}
|
||||||
)
|
)
|
||||||
|
|
||||||
# Parallel make.
|
# Parallel make.
|
||||||
@ -262,13 +266,15 @@ endforeach (txt ${docs})
|
|||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
# output
|
# output
|
||||||
|
|
||||||
|
message(targetting ${_zmq_TOOLSET})
|
||||||
|
|
||||||
add_library(libzmq SHARED ${sources} ${html-docs} ${CMAKE_BINARY_DIR}/NSIS.template.in)
|
add_library(libzmq SHARED ${sources} ${html-docs} ${CMAKE_BINARY_DIR}/NSIS.template.in)
|
||||||
target_link_libraries(libzmq ws2_32.lib rpcrt4.lib ${OPTIONAL_LIBRARIES})
|
target_link_libraries(libzmq ws2_32.lib rpcrt4.lib ${OPTIONAL_LIBRARIES})
|
||||||
set_target_properties(libzmq PROPERTIES
|
set_target_properties(libzmq PROPERTIES
|
||||||
RELEASE_POSTFIX "${_zmq_TOOLSET}-mt-${ZMQ_VERSION_MAJOR}_${ZMQ_VERSION_MINOR}_${ZMQ_VERSION_PATCH}"
|
RELEASE_POSTFIX "${_zmq_TOOLSET}-mt-${ZMQ_VERSION_MAJOR}_${ZMQ_VERSION_MINOR}_${ZMQ_VERSION_PATCH}"
|
||||||
DEBUG_POSTFIX "${_zmq_TOOLSET}-mt-gd-${ZMQ_VERSION_MAJOR}_${ZMQ_VERSION_MINOR}_${ZMQ_VERSION_PATCH}"
|
DEBUG_POSTFIX "${_zmq_TOOLSET}-mt-gd-${ZMQ_VERSION_MAJOR}_${ZMQ_VERSION_MINOR}_${ZMQ_VERSION_PATCH}"
|
||||||
PDB_NAME "placeholder"
|
PDB_NAME "libzmq${_zmq_TOOLSET}-mt-gd-${ZMQ_VERSION_MAJOR}_${ZMQ_VERSION_MINOR}_${ZMQ_VERSION_PATCH}"
|
||||||
PDB_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
|
PDB_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/lib"
|
||||||
)
|
)
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
@ -276,12 +282,13 @@ set_target_properties(libzmq PROPERTIES
|
|||||||
|
|
||||||
install (TARGETS libzmq ARCHIVE DESTINATION lib COMPONENT SDK)
|
install (TARGETS libzmq ARCHIVE DESTINATION lib COMPONENT SDK)
|
||||||
if (CMAKE_BUILD_TYPE STREQUAL "Debug")
|
if (CMAKE_BUILD_TYPE STREQUAL "Debug")
|
||||||
install (TARGETS libzmq RUNTIME DESTINATION bin COMPONENT SDK)
|
# no -op
|
||||||
install (FILES ${CMAKE_BINARY_DIR}/lib/libzmq${_zmq_TOOLSET}-mt-gd-${ZMQ_VERSION_MAJOR}_${ZMQ_VERSION_MINOR}_${ZMQ_VERSION_PATCH}.pdb DESTINATION lib COMPONENT SDK)
|
else ()
|
||||||
else (CMAKE_BUILD_TYPE STREQUAL "Debug")
|
|
||||||
install (TARGETS libzmq RUNTIME DESTINATION bin COMPONENT Runtime)
|
install (TARGETS libzmq RUNTIME DESTINATION bin COMPONENT Runtime)
|
||||||
install (FILES ${CMAKE_BINARY_DIR}/libzmq.dir/Debug/${_zmq_COMPILER}.pdb DESTINATION lib COMPONENT SDK RENAME libzmq${_zmq_TOOLSET}-mt-gd-${ZMQ_VERSION_MAJOR}_${ZMQ_VERSION_MINOR}_${ZMQ_VERSION_PATCH}.pdb)
|
install (FILES ${CMAKE_BINARY_DIR}/lib/Debug/libzmq${_zmq_TOOLSET}-mt-gd-${ZMQ_VERSION_MAJOR}_${ZMQ_VERSION_MINOR}_${ZMQ_VERSION_PATCH}.lib DESTINATION lib COMPONENT SDK)
|
||||||
endif (CMAKE_BUILD_TYPE STREQUAL "Debug")
|
install (FILES ${CMAKE_BINARY_DIR}/lib/Debug/libzmq${_zmq_TOOLSET}-mt-gd-${ZMQ_VERSION_MAJOR}_${ZMQ_VERSION_MINOR}_${ZMQ_VERSION_PATCH}.pdb DESTINATION lib COMPONENT SDK)
|
||||||
|
install (FILES ${CMAKE_BINARY_DIR}/lib/Debug/libzmq${_zmq_TOOLSET}-mt-gd-${ZMQ_VERSION_MAJOR}_${ZMQ_VERSION_MINOR}_${ZMQ_VERSION_PATCH}.dll DESTINATION bin COMPONENT SDK)
|
||||||
|
endif ()
|
||||||
install (FILES ${headers} DESTINATION include COMPONENT SDK)
|
install (FILES ${headers} DESTINATION include COMPONENT SDK)
|
||||||
|
|
||||||
set (perf-tools
|
set (perf-tools
|
||||||
@ -317,18 +324,22 @@ if (CMAKE_CL_64)
|
|||||||
set (CPACK_NSIS_DISPLAY_NAME "ZeroMQ ${ZMQ_VERSION_MAJOR}.${ZMQ_VERSION_MINOR}.${ZMQ_VERSION_PATCH} (x64)")
|
set (CPACK_NSIS_DISPLAY_NAME "ZeroMQ ${ZMQ_VERSION_MAJOR}.${ZMQ_VERSION_MINOR}.${ZMQ_VERSION_PATCH} (x64)")
|
||||||
set (CPACK_PACKAGE_FILE_NAME "ZeroMQ-${ZMQ_VERSION_MAJOR}.${ZMQ_VERSION_MINOR}.${ZMQ_VERSION_PATCH}-x64")
|
set (CPACK_PACKAGE_FILE_NAME "ZeroMQ-${ZMQ_VERSION_MAJOR}.${ZMQ_VERSION_MINOR}.${ZMQ_VERSION_PATCH}-x64")
|
||||||
set (CPACK_INSTALL_CMAKE_PROJECTS
|
set (CPACK_INSTALL_CMAKE_PROJECTS
|
||||||
"${CMAKE_SOURCE_DIR}/build/x64/v110;ZeroMQ;ALL;/"
|
|
||||||
"${CMAKE_SOURCE_DIR}/build/x64/v100;ZeroMQ;ALL;/"
|
|
||||||
"${CMAKE_SOURCE_DIR}/build/x64/v90;ZeroMQ;ALL;/"
|
"${CMAKE_SOURCE_DIR}/build/x64/v90;ZeroMQ;ALL;/"
|
||||||
|
"${CMAKE_SOURCE_DIR}/build/x64/v110;ZeroMQ;ALL;/"
|
||||||
|
"${CMAKE_SOURCE_DIR}/build/x64/v120;ZeroMQ;ALL;/"
|
||||||
|
# default to 2008/Vista compatible CRT
|
||||||
|
"${CMAKE_SOURCE_DIR}/build/x64/v100;ZeroMQ;ALL;/"
|
||||||
)
|
)
|
||||||
else (CMAKE_CL_64)
|
else (CMAKE_CL_64)
|
||||||
set (CPACK_NSIS_DISPLAY_NAME "ZeroMQ ${ZMQ_VERSION_MAJOR}.${ZMQ_VERSION_MINOR}.${ZMQ_VERSION_PATCH}")
|
set (CPACK_NSIS_DISPLAY_NAME "ZeroMQ ${ZMQ_VERSION_MAJOR}.${ZMQ_VERSION_MINOR}.${ZMQ_VERSION_PATCH}")
|
||||||
set (CPACK_PACKAGE_FILE_NAME "ZeroMQ-${ZMQ_VERSION_MAJOR}.${ZMQ_VERSION_MINOR}.${ZMQ_VERSION_PATCH}-x86")
|
set (CPACK_PACKAGE_FILE_NAME "ZeroMQ-${ZMQ_VERSION_MAJOR}.${ZMQ_VERSION_MINOR}.${ZMQ_VERSION_PATCH}-x86")
|
||||||
set (CPACK_INSTALL_CMAKE_PROJECTS
|
set (CPACK_INSTALL_CMAKE_PROJECTS
|
||||||
"${CMAKE_SOURCE_DIR}/build/x86/v110_xp;ZeroMQ;ALL;/"
|
|
||||||
"${CMAKE_SOURCE_DIR}/build/x86/v110;ZeroMQ;ALL;/"
|
|
||||||
"${CMAKE_SOURCE_DIR}/build/x86/v100;ZeroMQ;ALL;/"
|
|
||||||
"${CMAKE_SOURCE_DIR}/build/x86/v90;ZeroMQ;ALL;/"
|
"${CMAKE_SOURCE_DIR}/build/x86/v90;ZeroMQ;ALL;/"
|
||||||
|
"${CMAKE_SOURCE_DIR}/build/x86/v100;ZeroMQ;ALL;/"
|
||||||
|
"${CMAKE_SOURCE_DIR}/build/x86/v110;ZeroMQ;ALL;/"
|
||||||
|
"${CMAKE_SOURCE_DIR}/build/x86/v120;ZeroMQ;ALL;/"
|
||||||
|
# default to XP-compatible CRT
|
||||||
|
"${CMAKE_SOURCE_DIR}/build/x86/v110_xp;ZeroMQ;ALL;/"
|
||||||
)
|
)
|
||||||
endif (CMAKE_CL_64)
|
endif (CMAKE_CL_64)
|
||||||
set (CMAKE_MODULE_PATH "${CMAKE_BINARY_DIR}")
|
set (CMAKE_MODULE_PATH "${CMAKE_BINARY_DIR}")
|
||||||
|
@ -24,21 +24,38 @@
|
|||||||
MESSAGE(STATUS "Detecting ZMQ - failed")
|
MESSAGE(STATUS "Detecting ZMQ - failed")
|
||||||
ENDIF()
|
ENDIF()
|
||||||
|
|
||||||
if(MSVC_VERSION MATCHES "1700")
|
if(MSVC_VERSION MATCHES "1800")
|
||||||
|
set(_zmq_TOOLSET "-v120")
|
||||||
|
set(_zmq_COMPILER "vc120")
|
||||||
|
set(_zmq_WIN32_WINNT "0x0601")
|
||||||
|
elseif(MSVC_VERSION MATCHES "1700")
|
||||||
if(CMAKE_GENERATOR_TOOLSET MATCHES "v110_xp")
|
if(CMAKE_GENERATOR_TOOLSET MATCHES "v110_xp")
|
||||||
set(_zmq_TOOLSET "-v110_xp")
|
set(_zmq_TOOLSET "-v110_xp")
|
||||||
set(_zmq_COMPILER "vc110")
|
set(_zmq_COMPILER "vc110")
|
||||||
|
set(_zmq_WIN32_WINNT "0x0501")
|
||||||
else()
|
else()
|
||||||
set(_zmq_TOOLSET "-v110")
|
set(_zmq_TOOLSET "-v110")
|
||||||
set(_zmq_COMPILER "vc110")
|
set(_zmq_COMPILER "vc110")
|
||||||
|
set(_zmq_WIN32_WINNT "0x0601")
|
||||||
endif()
|
endif()
|
||||||
elseif(MSVC10)
|
elseif(MSVC10)
|
||||||
set(_zmq_TOOLSET "-v100")
|
set(_zmq_TOOLSET "-v100")
|
||||||
set(_zmq_COMPILER "vc100")
|
set(_zmq_COMPILER "vc100")
|
||||||
|
if(CMAKE_CL_64)
|
||||||
|
set(_zmq_WIN32_WINNT "0x0600")
|
||||||
|
else()
|
||||||
|
set(_zmq_WIN32_WINNT "0x0501")
|
||||||
|
endif()
|
||||||
elseif(MSVC90)
|
elseif(MSVC90)
|
||||||
set(_zmq_TOOLSET "-v90")
|
set(_zmq_TOOLSET "-v90")
|
||||||
set(_zmq_COMPILER "vc90")
|
set(_zmq_COMPILER "vc90")
|
||||||
|
if(CMAKE_CL_64)
|
||||||
|
set(_zmq_WIN32_WINNT "0x0600")
|
||||||
|
else()
|
||||||
|
set(_zmq_WIN32_WINNT "0x0501")
|
||||||
|
endif()
|
||||||
else()
|
else()
|
||||||
set(_zmq_TOOLSET "")
|
set(_zmq_TOOLSET "")
|
||||||
set(_zmq_COMPILER "")
|
set(_zmq_COMPILER "")
|
||||||
|
set(_zmq_WIN32_WINNT "")
|
||||||
endif()
|
endif()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user