mirror of
https://github.com/zeromq/libzmq.git
synced 2025-03-09 15:26:04 +00:00
Static Library Linking for Windows
- New ZMQ_STATIC flag to enable "libzmq.lib" Windows static library (or "libzmq_d.lib" in Debug mode). - ZMQ_STATIC needs also to be defined by projects using static linking against "libzmq.lib" - New StaticDebug & StaticRelease configurations for libzmq Win32 projects under MSVC 2008 & 2010 - Tested with Visual Studio 2008 Express under Windows 7, and Visual Studio 2010 Express under Windows 8.
This commit is contained in:
parent
0434366088
commit
b3bcd8e323
@ -21,11 +21,13 @@ PROPERTIES_DIST = properties/Common.props \
|
|||||||
properties/Executable.props \
|
properties/Executable.props \
|
||||||
properties/Precompiled.props \
|
properties/Precompiled.props \
|
||||||
properties/Release.props \
|
properties/Release.props \
|
||||||
|
properties/Static.props \
|
||||||
properties/Win32.props \
|
properties/Win32.props \
|
||||||
properties/Win32_Release.props \
|
properties/Win32_Release.props \
|
||||||
properties/WithOpenPGM.props \
|
properties/WithOpenPGM.props \
|
||||||
properties/x64.props \
|
properties/x64.props \
|
||||||
properties/ZeroMQ.props
|
properties/ZeroMQ.props \
|
||||||
|
properties/ZeroMQ_Static.props
|
||||||
|
|
||||||
PRECOMPILED_DIST = ../../src/precompiled.hpp \
|
PRECOMPILED_DIST = ../../src/precompiled.hpp \
|
||||||
../../src/precompiled.cpp
|
../../src/precompiled.cpp
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -17,6 +17,14 @@
|
|||||||
<Configuration>Release</Configuration>
|
<Configuration>Release</Configuration>
|
||||||
<Platform>x64</Platform>
|
<Platform>x64</Platform>
|
||||||
</ProjectConfiguration>
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="StaticDebug|Win32">
|
||||||
|
<Configuration>StaticDebug</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="StaticRelease|Win32">
|
||||||
|
<Configuration>StaticRelease</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
<ProjectConfiguration Include="WithOpenPGM|Win32">
|
<ProjectConfiguration Include="WithOpenPGM|Win32">
|
||||||
<Configuration>WithOpenPGM</Configuration>
|
<Configuration>WithOpenPGM</Configuration>
|
||||||
<Platform>Win32</Platform>
|
<Platform>Win32</Platform>
|
||||||
@ -59,6 +67,15 @@
|
|||||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||||
<CharacterSet>MultiByte</CharacterSet>
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='StaticRelease|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='StaticDebug|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||||
|
<CharacterSet>MultiByte</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
<ImportGroup Label="ExtensionSettings" />
|
<ImportGroup Label="ExtensionSettings" />
|
||||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='WithOpenPGM|Win32'" Label="PropertySheets">
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='WithOpenPGM|Win32'" Label="PropertySheets">
|
||||||
@ -97,6 +114,17 @@
|
|||||||
<Import Project="$(ProjectDir)..\properties\x64.props" />
|
<Import Project="$(ProjectDir)..\properties\x64.props" />
|
||||||
<Import Project="$(ProjectDir)..\properties\Debug.props" />
|
<Import Project="$(ProjectDir)..\properties\Debug.props" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='StaticRelease|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
<Import Project="$(ProjectDir)..\properties\ZeroMQ_Static.props" />
|
||||||
|
<Import Project="$(ProjectDir)..\properties\Win32_Release.props" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='StaticDebug|Win32'" Label="PropertySheets">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
<Import Project="$(ProjectDir)..\properties\ZeroMQ_Static.props" />
|
||||||
|
<Import Project="$(ProjectDir)..\properties\Win32.props" />
|
||||||
|
<Import Project="$(ProjectDir)..\properties\Debug.props" />
|
||||||
|
</ImportGroup>
|
||||||
<PropertyGroup Label="UserMacros" />
|
<PropertyGroup Label="UserMacros" />
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
|
<_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
|
||||||
@ -122,6 +150,16 @@
|
|||||||
<Command>copy ..\platform.hpp ..\..\..\src</Command>
|
<Command>copy ..\platform.hpp ..\..\..\src</Command>
|
||||||
</PreBuildEvent>
|
</PreBuildEvent>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='StaticRelease|Win32'">
|
||||||
|
<PreBuildEvent>
|
||||||
|
<Command>copy ..\platform.hpp ..\..\..\src</Command>
|
||||||
|
</PreBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='StaticDebug|Win32'">
|
||||||
|
<PreBuildEvent>
|
||||||
|
<Command>copy ..\platform.hpp ..\..\..\src</Command>
|
||||||
|
</PreBuildEvent>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClCompile Include="..\..\..\src\address.cpp" />
|
<ClCompile Include="..\..\..\src\address.cpp" />
|
||||||
<ClCompile Include="..\..\..\src\clock.cpp" />
|
<ClCompile Include="..\..\..\src\clock.cpp" />
|
||||||
@ -273,4 +311,4 @@
|
|||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
<ImportGroup Label="ExtensionTargets">
|
<ImportGroup Label="ExtensionTargets">
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
</Project>
|
</Project>
|
@ -37,6 +37,8 @@ Global
|
|||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
Debug|Win32 = Debug|Win32
|
Debug|Win32 = Debug|Win32
|
||||||
Release|Win32 = Release|Win32
|
Release|Win32 = Release|Win32
|
||||||
|
StaticDebug|Win32 = StaticDebug|Win32
|
||||||
|
StaticRelease|Win32 = StaticRelease|Win32
|
||||||
WithOpenPGM|Win32 = WithOpenPGM|Win32
|
WithOpenPGM|Win32 = WithOpenPGM|Win32
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||||
@ -44,6 +46,10 @@ Global
|
|||||||
{641C5F36-32EE-4323-B740-992B651CF9D6}.Debug|Win32.Build.0 = Debug|Win32
|
{641C5F36-32EE-4323-B740-992B651CF9D6}.Debug|Win32.Build.0 = Debug|Win32
|
||||||
{641C5F36-32EE-4323-B740-992B651CF9D6}.Release|Win32.ActiveCfg = Release|Win32
|
{641C5F36-32EE-4323-B740-992B651CF9D6}.Release|Win32.ActiveCfg = Release|Win32
|
||||||
{641C5F36-32EE-4323-B740-992B651CF9D6}.Release|Win32.Build.0 = Release|Win32
|
{641C5F36-32EE-4323-B740-992B651CF9D6}.Release|Win32.Build.0 = Release|Win32
|
||||||
|
{641C5F36-32EE-4323-B740-992B651CF9D6}.StaticDebug|Win32.ActiveCfg = StaticDebug|Win32
|
||||||
|
{641C5F36-32EE-4323-B740-992B651CF9D6}.StaticDebug|Win32.Build.0 = StaticDebug|Win32
|
||||||
|
{641C5F36-32EE-4323-B740-992B651CF9D6}.StaticRelease|Win32.ActiveCfg = StaticRelease|Win32
|
||||||
|
{641C5F36-32EE-4323-B740-992B651CF9D6}.StaticRelease|Win32.Build.0 = StaticRelease|Win32
|
||||||
{641C5F36-32EE-4323-B740-992B651CF9D6}.WithOpenPGM|Win32.ActiveCfg = WithOpenPGM|Win32
|
{641C5F36-32EE-4323-B740-992B651CF9D6}.WithOpenPGM|Win32.ActiveCfg = WithOpenPGM|Win32
|
||||||
{641C5F36-32EE-4323-B740-992B651CF9D6}.WithOpenPGM|Win32.Build.0 = WithOpenPGM|Win32
|
{641C5F36-32EE-4323-B740-992B651CF9D6}.WithOpenPGM|Win32.Build.0 = WithOpenPGM|Win32
|
||||||
{4FDB8C73-9D4A-4D87-A4A9-A7FC06DFEA57}.Debug|Win32.ActiveCfg = Debug|Win32
|
{4FDB8C73-9D4A-4D87-A4A9-A7FC06DFEA57}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||||
|
@ -21,6 +21,8 @@ Global
|
|||||||
Debug|x64 = Debug|x64
|
Debug|x64 = Debug|x64
|
||||||
Release|Win32 = Release|Win32
|
Release|Win32 = Release|Win32
|
||||||
Release|x64 = Release|x64
|
Release|x64 = Release|x64
|
||||||
|
StaticDebug|Win32 = StaticDebug|Win32
|
||||||
|
StaticRelease|Win32 = StaticRelease|Win32
|
||||||
WithOpenPGM|Win32 = WithOpenPGM|Win32
|
WithOpenPGM|Win32 = WithOpenPGM|Win32
|
||||||
WithOpenPGM|x64 = WithOpenPGM|x64
|
WithOpenPGM|x64 = WithOpenPGM|x64
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
@ -33,6 +35,10 @@ Global
|
|||||||
{641C5F36-32EE-4323-B740-992B651CF9D6}.Release|Win32.Build.0 = Release|Win32
|
{641C5F36-32EE-4323-B740-992B651CF9D6}.Release|Win32.Build.0 = Release|Win32
|
||||||
{641C5F36-32EE-4323-B740-992B651CF9D6}.Release|x64.ActiveCfg = Release|x64
|
{641C5F36-32EE-4323-B740-992B651CF9D6}.Release|x64.ActiveCfg = Release|x64
|
||||||
{641C5F36-32EE-4323-B740-992B651CF9D6}.Release|x64.Build.0 = Release|x64
|
{641C5F36-32EE-4323-B740-992B651CF9D6}.Release|x64.Build.0 = Release|x64
|
||||||
|
{641C5F36-32EE-4323-B740-992B651CF9D6}.StaticDebug|Win32.ActiveCfg = StaticDebug|Win32
|
||||||
|
{641C5F36-32EE-4323-B740-992B651CF9D6}.StaticDebug|Win32.Build.0 = StaticDebug|Win32
|
||||||
|
{641C5F36-32EE-4323-B740-992B651CF9D6}.StaticRelease|Win32.ActiveCfg = StaticRelease|Win32
|
||||||
|
{641C5F36-32EE-4323-B740-992B651CF9D6}.StaticRelease|Win32.Build.0 = StaticRelease|Win32
|
||||||
{641C5F36-32EE-4323-B740-992B651CF9D6}.WithOpenPGM|Win32.ActiveCfg = WithOpenPGM|Win32
|
{641C5F36-32EE-4323-B740-992B651CF9D6}.WithOpenPGM|Win32.ActiveCfg = WithOpenPGM|Win32
|
||||||
{641C5F36-32EE-4323-B740-992B651CF9D6}.WithOpenPGM|Win32.Build.0 = WithOpenPGM|Win32
|
{641C5F36-32EE-4323-B740-992B651CF9D6}.WithOpenPGM|Win32.Build.0 = WithOpenPGM|Win32
|
||||||
{641C5F36-32EE-4323-B740-992B651CF9D6}.WithOpenPGM|x64.ActiveCfg = WithOpenPGM|x64
|
{641C5F36-32EE-4323-B740-992B651CF9D6}.WithOpenPGM|x64.ActiveCfg = WithOpenPGM|x64
|
||||||
|
@ -14,7 +14,6 @@
|
|||||||
</PreBuildEvent>
|
</PreBuildEvent>
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;DLL_EXPORT;FD_SETSIZE=1024;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;DLL_EXPORT;FD_SETSIZE=1024;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<DisableSpecificWarnings>4355</DisableSpecificWarnings>
|
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<Link>
|
<Link>
|
||||||
<AdditionalDependencies>Ws2_32.lib;Rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
<AdditionalDependencies>Ws2_32.lib;Rpcrt4.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
|
@ -38,7 +38,9 @@ extern "C" {
|
|||||||
|
|
||||||
/* Handle DSO symbol visibility */
|
/* Handle DSO symbol visibility */
|
||||||
#if defined _WIN32
|
#if defined _WIN32
|
||||||
# if defined DLL_EXPORT
|
# if defined ZMQ_STATIC
|
||||||
|
# define ZMQ_EXPORT
|
||||||
|
# elif defined DLL_EXPORT
|
||||||
# define ZMQ_EXPORT __declspec(dllexport)
|
# define ZMQ_EXPORT __declspec(dllexport)
|
||||||
# else
|
# else
|
||||||
# define ZMQ_EXPORT __declspec(dllimport)
|
# define ZMQ_EXPORT __declspec(dllimport)
|
||||||
|
@ -27,7 +27,9 @@ extern "C" {
|
|||||||
|
|
||||||
/* Handle DSO symbol visibility */
|
/* Handle DSO symbol visibility */
|
||||||
#if defined _WIN32
|
#if defined _WIN32
|
||||||
# if defined DLL_EXPORT
|
# if defined ZMQ_STATIC
|
||||||
|
# define ZMQ_EXPORT
|
||||||
|
# elif defined DLL_EXPORT
|
||||||
# define ZMQ_EXPORT __declspec(dllexport)
|
# define ZMQ_EXPORT __declspec(dllexport)
|
||||||
# else
|
# else
|
||||||
# define ZMQ_EXPORT __declspec(dllimport)
|
# define ZMQ_EXPORT __declspec(dllimport)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user