diff options
| author | George Hazan <ghazan@miranda.im> | 2018-10-24 20:51:44 +0300 |
|---|---|---|
| committer | George Hazan <ghazan@miranda.im> | 2018-10-24 20:51:44 +0300 |
| commit | f17907dd5c586022660dd27fcd6397dd22b2e365 (patch) | |
| tree | c9c0a7aed6e613624359b4c4a3f4baa699dd90c9 /libs/libmdbx/src/dll.vcxproj | |
| parent | 499311e7496c195473e3fde816d7419c98dc5cd2 (diff) | |
libmdbx:
- fix for a possible crash after database compaction;
- merge with master
Diffstat (limited to 'libs/libmdbx/src/dll.vcxproj')
| -rw-r--r-- | libs/libmdbx/src/dll.vcxproj | 50 |
1 files changed, 46 insertions, 4 deletions
diff --git a/libs/libmdbx/src/dll.vcxproj b/libs/libmdbx/src/dll.vcxproj index 746de67bd9..812e1e65a8 100644 --- a/libs/libmdbx/src/dll.vcxproj +++ b/libs/libmdbx/src/dll.vcxproj @@ -73,6 +73,7 @@ <TargetName>mdbx</TargetName> <OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir> <IntDir>$(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\</IntDir> + <CustomBuildBeforeTargets>PreLinkEvent</CustomBuildBeforeTargets> </PropertyGroup> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> <LinkIncremental>false</LinkIncremental> @@ -80,22 +81,25 @@ <TargetName>mdbx</TargetName> <OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir> <IntDir>$(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\</IntDir> + <CustomBuildBeforeTargets>PreLinkEvent</CustomBuildBeforeTargets> </PropertyGroup> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> <LinkIncremental>true</LinkIncremental> <TargetName>mdbx</TargetName> <OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir> <IntDir>$(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\</IntDir> + <CustomBuildBeforeTargets>PreLinkEvent</CustomBuildBeforeTargets> </PropertyGroup> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> <LinkIncremental>false</LinkIncremental> <TargetName>mdbx</TargetName> <OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir> <IntDir>$(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)\</IntDir> + <CustomBuildBeforeTargets>PreLinkEvent</CustomBuildBeforeTargets> </PropertyGroup> <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> <ClCompile> - <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;LIBMDBX_EXPORTS;%(PreprocessorDefinitions);MDBX_DEBUG=1</PreprocessorDefinitions> + <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;LIBMDBX_EXPORTS;MDBX_BUILD_DLL;MDBX_AVOID_CRT;%(PreprocessorDefinitions);MDBX_DEBUG=1</PreprocessorDefinitions> <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> <WarningLevel>EnableAllWarnings</WarningLevel> <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> @@ -107,11 +111,18 @@ <TargetMachine>MachineX86</TargetMachine> <GenerateDebugInformation>true</GenerateDebugInformation> <SubSystem>Windows</SubSystem> + <AdditionalDependencies>ntdll.lib;$(IntermediateOutputPath)mdbx_ntdll_extra.lib;kernel32.lib;advapi32.lib;%(AdditionalDependencies)</AdditionalDependencies> </Link> + <CustomBuildStep> + <Message>Generate fake-library mdbx_ntdll_extra.lib for $(PlatformTarget)</Message> + <Outputs>$(IntermediateOutputPath)mdbx_ntdll_extra.lib</Outputs> + <Inputs>$(ProjectDir)src/ntdll.def</Inputs> + <Command>lib.exe /def:%(Inputs) /out:%(Outputs) /machine:$(PlatformTarget)</Command> + </CustomBuildStep> </ItemDefinitionGroup> <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> <ClCompile> - <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;LIBMDBX_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;LIBMDBX_EXPORTS;MDBX_BUILD_DLL;MDBX_AVOID_CRT;%(PreprocessorDefinitions)</PreprocessorDefinitions> <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> <WarningLevel>EnableAllWarnings</WarningLevel> <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> @@ -122,6 +133,9 @@ <FavorSizeOrSpeed>Size</FavorSizeOrSpeed> <OmitFramePointers>true</OmitFramePointers> <WholeProgramOptimization>true</WholeProgramOptimization> + <FunctionLevelLinking>true</FunctionLevelLinking> + <BufferSecurityCheck>false</BufferSecurityCheck> + <AssemblerOutput>All</AssemblerOutput> </ClCompile> <Link> <TargetMachine>MachineX86</TargetMachine> @@ -130,7 +144,15 @@ <EnableCOMDATFolding>true</EnableCOMDATFolding> <OptimizeReferences>true</OptimizeReferences> <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration> + <AdditionalDependencies>ntdll.lib;$(IntermediateOutputPath)mdbx_ntdll_extra.lib;kernel32.lib;advapi32.lib;%(AdditionalDependencies)</AdditionalDependencies> + <IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries> </Link> + <CustomBuildStep> + <Message>Generate fake-library mdbx_ntdll_extra.lib for $(PlatformTarget)</Message> + <Outputs>$(IntermediateOutputPath)mdbx_ntdll_extra.lib</Outputs> + <Inputs>$(ProjectDir)src/ntdll.def</Inputs> + <Command>lib.exe /def:%(Inputs) /out:%(Outputs) /machine:$(PlatformTarget)</Command> + </CustomBuildStep> </ItemDefinitionGroup> <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> <ClCompile> @@ -140,15 +162,24 @@ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> <ClCompile> <WarningLevel>EnableAllWarnings</WarningLevel> - <PreprocessorDefinitions>WIN64;_DEBUG;_WINDOWS;_USRDLL;LIBMDBX_EXPORTS;%(PreprocessorDefinitions);MDBX_DEBUG=1</PreprocessorDefinitions> + <PreprocessorDefinitions>WIN64;_DEBUG;_WINDOWS;_USRDLL;LIBMDBX_EXPORTS;MDBX_BUILD_DLL;MDBX_AVOID_CRT;%(PreprocessorDefinitions);MDBX_DEBUG=1</PreprocessorDefinitions> <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> <StringPooling>true</StringPooling> <TreatWarningAsError>true</TreatWarningAsError> </ClCompile> + <Link> + <AdditionalDependencies>ntdll.lib;$(IntermediateOutputPath)mdbx_ntdll_extra.lib;kernel32.lib;advapi32.lib;%(AdditionalDependencies)</AdditionalDependencies> + </Link> + <CustomBuildStep> + <Message>Generate fake-library mdbx_ntdll_extra.lib for $(PlatformTarget)</Message> + <Outputs>$(IntermediateOutputPath)mdbx_ntdll_extra.lib</Outputs> + <Inputs>$(ProjectDir)src/ntdll.def</Inputs> + <Command>lib.exe /def:%(Inputs) /out:%(Outputs) /machine:$(PlatformTarget)</Command> + </CustomBuildStep> </ItemDefinitionGroup> <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> <ClCompile> - <PreprocessorDefinitions>WIN64;NDEBUG;_WINDOWS;_USRDLL;LIBMDBX_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <PreprocessorDefinitions>WIN64;NDEBUG;_WINDOWS;_USRDLL;LIBMDBX_EXPORTS;MDBX_BUILD_DLL;MDBX_AVOID_CRT;%(PreprocessorDefinitions)</PreprocessorDefinitions> <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> <StringPooling>true</StringPooling> <Optimization>Full</Optimization> @@ -158,10 +189,21 @@ <OmitFramePointers>true</OmitFramePointers> <WholeProgramOptimization>true</WholeProgramOptimization> <WarningLevel>EnableAllWarnings</WarningLevel> + <FunctionLevelLinking>true</FunctionLevelLinking> + <BufferSecurityCheck>false</BufferSecurityCheck> + <AssemblerOutput>All</AssemblerOutput> </ClCompile> <Link> <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration> + <AdditionalDependencies>ntdll.lib;$(IntermediateOutputPath)mdbx_ntdll_extra.lib;kernel32.lib;advapi32.lib;%(AdditionalDependencies)</AdditionalDependencies> + <IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries> </Link> + <CustomBuildStep> + <Message>Generate fake-library mdbx_ntdll_extra.lib for $(PlatformTarget)</Message> + <Outputs>$(IntermediateOutputPath)mdbx_ntdll_extra.lib</Outputs> + <Inputs>$(ProjectDir)src/ntdll.def</Inputs> + <Command>lib.exe /def:%(Inputs) /out:%(Outputs) /machine:$(PlatformTarget)</Command> + </CustomBuildStep> </ItemDefinitionGroup> <ItemGroup> <ClCompile Include="src\lck-windows.c" /> |
