CPPXT-106.XPPXT-107 Bodge to make VC14 compile work.
authorRod Widdowson <rdw@steadingsoftware.com>
Mon, 2 May 2016 10:10:11 +0000 (11:10 +0100)
committerRod Widdowson <rdw@steadingsoftware.com>
Mon, 2 May 2016 10:16:03 +0000 (11:16 +0100)
https://issues.shibboleth.net/jira/browse/CPPXT-106
https://issues.shibboleth.net/jira/browse/CPPXT-106

Because of CPPXT-107 the static PXKIX engine doesn't compile
under VC14.

This TEMPORARY checkin:
- Supresses the building of thw two problematic modules.  Because this
  is done by the per vc14 vcxproj, nothing special is needed.
- Supress two lines in trustengine only if a #define is set (which
  only the VC14 project sets)

projects/vc14/xmltooling/xmltooling.vcxproj
xmltooling/security/impl/TrustEngine.cpp

index 2f8df29..4214a67 100644 (file)
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
+<?xml version="1.0" encoding="utf-8"?>
 <Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <ItemGroup Label="ProjectConfigurations">
     <ProjectConfiguration Include="Debug|Win32">
@@ -96,7 +96,7 @@
     <ClCompile>
       <Optimization>Disabled</Optimization>
       <AdditionalIncludeDirectories>$(SolutionDir)..\..\;$(ProjectDir)\..\..\..\XMLTooling\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-      <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <PreprocessorDefinitions>CPPXT_107_VC16;WIN32;_DEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
       <PrecompiledHeaderFile>
       </PrecompiledHeaderFile>
     <ClCompile>
       <Optimization>Disabled</Optimization>
       <AdditionalIncludeDirectories>$(SolutionDir)..\..\;$(ProjectDir)\..\..\..\XMLTooling;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-      <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <PreprocessorDefinitions>CPPXT_107_VC16;WIN32;_DEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
       <PrecompiledHeaderFile>
       </PrecompiledHeaderFile>
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
     <ClCompile>
       <AdditionalIncludeDirectories>$(SolutionDir)..\..\;$(ProjectDir)\..\..\..\XMLTooling\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-      <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <PreprocessorDefinitions>CPPXT_107_VC16;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
       <PrecompiledHeaderFile>
       </PrecompiledHeaderFile>
       <WarningLevel>Level3</WarningLevel>
     </Midl>
     <ClCompile>
       <AdditionalIncludeDirectories>$(SolutionDir)..\..\;$(ProjectDir)\..\..\..\XMLTooling\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-      <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <PreprocessorDefinitions>CPPXT_107_VC16;WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
       <PrecompiledHeaderFile>
       </PrecompiledHeaderFile>
       <WarningLevel>Level3</WarningLevel>
     <ClCompile Include="..\..\..\XMLTooling\encryption\impl\Encrypter.cpp" />
     <ClCompile Include="..\..\..\XMLTooling\encryption\impl\EncryptionImpl.cpp" />
     <ClCompile Include="..\..\..\XMLTooling\encryption\impl\EncryptionSchemaValidators.cpp" />
-    <ClCompile Include="..\..\..\XMLTooling\security\impl\AbstractPKIXTrustEngine.cpp" />
+    <ClCompile Include="..\..\..\XMLTooling\security\impl\AbstractPKIXTrustEngine.cpp">
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
+    </ClCompile>
     <ClCompile Include="..\..\..\XMLTooling\security\impl\BasicX509Credential.cpp" />
     <ClCompile Include="..\..\..\XMLTooling\security\impl\ChainingCredentialResolver.cpp" />
     <ClCompile Include="..\..\..\XMLTooling\security\impl\ChainingTrustEngine.cpp" />
     <ClCompile Include="..\..\..\XMLTooling\security\impl\KeyInfoResolver.cpp" />
     <ClCompile Include="..\..\..\XMLTooling\security\impl\OpenSSLCryptoX509CRL.cpp" />
     <ClCompile Include="..\..\..\XMLTooling\security\impl\SecurityHelper.cpp" />
-    <ClCompile Include="..\..\..\XMLTooling\security\impl\StaticPKIXTrustEngine.cpp" />
+    <ClCompile Include="..\..\..\XMLTooling\security\impl\StaticPKIXTrustEngine.cpp">
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
+      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
+    </ClCompile>
     <ClCompile Include="..\..\..\XMLTooling\security\impl\TrustEngine.cpp" />
     <ClCompile Include="..\..\..\XMLTooling\security\impl\XSECCryptoX509CRL.cpp" />
     <ClCompile Include="..\..\..\XMLTooling\soap\impl\CURLSOAPTransport.cpp" />
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
   <ImportGroup Label="ExtensionTargets">
   </ImportGroup>
-</Project>
+</Project>
\ No newline at end of file
index 64c8726..e499454 100644 (file)
@@ -39,7 +39,9 @@ using xercesc::DOMElement;
 
 namespace xmltooling {
     XMLTOOL_DLLLOCAL PluginManager<TrustEngine,string,const DOMElement*>::Factory ExplicitKeyTrustEngineFactory;
+#ifndef CPPXT_107_VC16
     XMLTOOL_DLLLOCAL PluginManager<TrustEngine,string,const DOMElement*>::Factory StaticPKIXTrustEngineFactory;
+#endif
     XMLTOOL_DLLLOCAL PluginManager<TrustEngine,string,const DOMElement*>::Factory ChainingTrustEngineFactory;
 };
 
@@ -47,7 +49,9 @@ void XMLTOOL_API xmltooling::registerTrustEngines()
 {
     XMLToolingConfig& conf=XMLToolingConfig::getConfig();
     conf.TrustEngineManager.registerFactory(EXPLICIT_KEY_TRUSTENGINE, ExplicitKeyTrustEngineFactory);
+#ifndef CPPXT_107_VC16
     conf.TrustEngineManager.registerFactory(STATIC_PKIX_TRUSTENGINE, StaticPKIXTrustEngineFactory);
+#endif
     conf.TrustEngineManager.registerFactory(CHAINING_TRUSTENGINE, ChainingTrustEngineFactory);
 }