Skip to content

Commit 5d4dd08

Browse files
authored
Make libhttpclient.props and openssl.props provide MSBuild references to their projects (microsoft#248)
* First pass of reworking imports * More imports work * Updated cmake * Fix unit test TE build * More poking at build paths * Readd custom.props * Less noisy build * Fix merge issues * Fix android openssl projects * Fix android openssl build * Remove .root.props, it wasn't doing anything useful * Remove manual references from Android libHttpClient project * Remove test code * Disable debug spew
1 parent 45e72a9 commit 5d4dd08

32 files changed

+224
-202
lines changed

Build/libHttpClient.140.UWP.C/libHttpClient.140.UWP.C.vcxproj

+2
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,8 @@
4141
<WindowsTargetPlatformVersion>10.0.10586.0</WindowsTargetPlatformVersion>
4242
<WindowsTargetPlatformMinVersion>10.0.10240.0</WindowsTargetPlatformMinVersion>
4343
<PreferredToolArchitecture>x64</PreferredToolArchitecture>
44+
<HCLibPlatformType>UWP</HCLibPlatformType>
45+
<HCLibImpl>true</HCLibImpl>
4446
</PropertyGroup>
4547
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
4648
<PropertyGroup Condition="'$(Configuration)'=='Debug'" Label="Configuration">

Build/libHttpClient.140.Win32.C/libHttpClient.140.Win32.C.vcxproj

+2
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,8 @@
3636
<MinimumVisualStudioVersion>14.0</MinimumVisualStudioVersion>
3737
<PreferredToolArchitecture>x64</PreferredToolArchitecture>
3838
<WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
39+
<HCLibPlatformType>Win32</HCLibPlatformType>
40+
<HCLibImpl>true</HCLibImpl>
3941
</PropertyGroup>
4042
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
4143
<PropertyGroup Condition="'$(Configuration)'=='Debug'" Label="Configuration">

Build/libHttpClient.140.XDK.C/libHttpClient.140.XDK.C.vcxproj

+2
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@
2323
<ConfigurationType>StaticLibrary</ConfigurationType>
2424
<GenerateManifest>false</GenerateManifest>
2525
<PreferredToolArchitecture>x64</PreferredToolArchitecture>
26+
<HCLibPlatformType>XDK</HCLibPlatformType>
27+
<HCLibImpl>true</HCLibImpl>
2628
</PropertyGroup>
2729
<PropertyGroup Label="Configuration">
2830
<PlatformToolset>v140</PlatformToolset>

Build/libHttpClient.141.Android.C/libHttpClient.141.Android.C.vcxproj

+2-8
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,8 @@
3535
<MinimumVisualStudioVersion>14.0</MinimumVisualStudioVersion>
3636
<ApplicationType>Android</ApplicationType>
3737
<ApplicationTypeRevision>3.0</ApplicationTypeRevision>
38+
<HCLibPlatformType>Android</HCLibPlatformType>
39+
<HCLibImpl>true</HCLibImpl>
3840
</PropertyGroup>
3941
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
4042
<PropertyGroup>
@@ -126,13 +128,5 @@
126128
</ItemGroup>
127129
<ItemGroup>
128130
</ItemGroup>
129-
<ItemGroup>
130-
<ProjectReference Include="..\libcrypto.Android\libcrypto.Android.vcxproj">
131-
<Project>{315bc43e-e422-4d47-a2dc-300a334a3497}</Project>
132-
</ProjectReference>
133-
<ProjectReference Include="..\libssl.Android\libssl.Android.vcxproj">
134-
<Project>{51b9c654-fbc9-4224-8751-d7d0c05b7bc9}</Project>
135-
</ProjectReference>
136-
</ItemGroup>
137131
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
138132
</Project>

Build/libHttpClient.141.UWP.C/libHttpClient.141.UWP.C.vcxproj

+3-1
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,8 @@
4141
<WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion>
4242
<WindowsTargetPlatformMinVersion>10.0.10240.0</WindowsTargetPlatformMinVersion>
4343
<PreferredToolArchitecture>x64</PreferredToolArchitecture>
44+
<HCLibPlatformType>UWP</HCLibPlatformType>
45+
<HCLibImpl>true</HCLibImpl>
4446
</PropertyGroup>
4547
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
4648
<PropertyGroup Condition="'$(Configuration)'=='Debug'" Label="Configuration">
@@ -58,7 +60,7 @@
5860
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
5961
<ImportGroup Label="PropertySheets">
6062
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
61-
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), libHttpClient.internal.props))\libHttpClient.internal.props" />
63+
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), libHttpClient.internal.props))\libHttpClient.internal.props" />
6264
</ImportGroup>
6365
<ItemDefinitionGroup>
6466
<ClCompile>

Build/libHttpClient.141.Win32.C/libHttpClient.141.Win32.C.vcxproj

+3-9
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,8 @@
3636
<MinimumVisualStudioVersion>14.0</MinimumVisualStudioVersion>
3737
<PreferredToolArchitecture>x64</PreferredToolArchitecture>
3838
<WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
39+
<HCLibPlatformType>Win32</HCLibPlatformType>
40+
<HCLibImpl>true</HCLibImpl>
3941
</PropertyGroup>
4042
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
4143
<PropertyGroup Condition="'$(Configuration)'=='Debug'" Label="Configuration">
@@ -150,13 +152,5 @@
150152
<ClInclude Include="$(MSBuildThisFileDirectory)..\..\Include\httpClient\pal.h" />
151153
<ClInclude Include="$(MSBuildThisFileDirectory)..\..\Include\httpClient\trace.h" />
152154
</ItemGroup>
153-
<ItemGroup>
154-
<ProjectReference Include="..\libcrypto.Win32\libcrypto.Win32.vcxproj">
155-
<Project>{c043de35-beed-4fe1-b9d2-b15cb051cc3c}</Project>
156-
</ProjectReference>
157-
<ProjectReference Include="..\libssl.Win32\libssl.Win32.vcxproj">
158-
<Project>{cf4c3985-3f37-45b6-95f7-7602c53f1f21}</Project>
159-
</ProjectReference>
160-
</ItemGroup>
161155
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
162-
</Project>
156+
</Project>

Build/libHttpClient.141.XDK.C/libHttpClient.141.XDK.C.vcxproj

+2
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@
2323
<ConfigurationType>StaticLibrary</ConfigurationType>
2424
<GenerateManifest>false</GenerateManifest>
2525
<PreferredToolArchitecture>x64</PreferredToolArchitecture>
26+
<HCLibPlatformType>XDK</HCLibPlatformType>
27+
<HCLibImpl>true</HCLibImpl>
2628
</PropertyGroup>
2729
<PropertyGroup Label="Configuration">
2830
<PlatformToolset>v141</PlatformToolset>

Build/libHttpClient.UnitTest.141.TAEF/libHttpClient.UnitTest.141.TAEF.vcxproj

+2
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,8 @@
2929
<CharacterSet>Unicode</CharacterSet>
3030
<LinkIncremental>false</LinkIncremental>
3131
<PreferredToolArchitecture>x64</PreferredToolArchitecture>
32+
<HCLibPlatformType>Win32</HCLibPlatformType>
33+
<HCLibImpl>true</HCLibImpl>
3234
</PropertyGroup>
3335
<PropertyGroup Condition="'$(Configuration)'=='Debug'">
3436
<UseDebugLibraries>true</UseDebugLibraries>

Build/libHttpClient.UnitTest.141.TE/libHttpClient.UnitTest.141.TE.vcxproj

+2-3
Original file line numberDiff line numberDiff line change
@@ -43,14 +43,15 @@
4343
<SubSystem>Console</SubSystem>
4444
</Link>
4545
</ItemDefinitionGroup>
46-
4746
<PropertyGroup Label="Globals">
4847
<ProjectGuid>{3092CCC9-DB6E-4199-95CC-4959950B95FA}</ProjectGuid>
4948
<Keyword>Win32Proj</Keyword>
5049
<RootNamespace>libHttpClient.141.UnitTest</RootNamespace>
5150
<WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
5251
<ProjectName>libHttpClient.UnitTest.141.TE</ProjectName>
5352
<PreferredToolArchitecture>x64</PreferredToolArchitecture>
53+
<HCLibPlatformType>Win32</HCLibPlatformType>
54+
<HCLibImpl>true</HCLibImpl>
5455
</PropertyGroup>
5556
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
5657
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
@@ -240,7 +241,5 @@
240241
<ClInclude Include="$(MSBuildThisFileDirectory)..\..\Include\httpClient\pal.h" />
241242
<ClInclude Include="$(MSBuildThisFileDirectory)..\..\Include\httpClient\trace.h" />
242243
</ItemGroup>
243-
<ItemGroup>
244-
</ItemGroup>
245244
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
246245
</Project>

Build/libHttpClient.internal.props

+10-16
Original file line numberDiff line numberDiff line change
@@ -1,42 +1,36 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3+
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), libHttpClient.props))\libHttpClient.props" />
4+
<Import Project="libHttpClient.paths.props"/>
35
<PropertyGroup Label="LibHttpClientLibProps">
4-
<SkipLibHttpClientImport>true</SkipLibHttpClientImport>
56
<IsUnitTestProj Condition="$(ProjectName.Contains('UnitTest'))">true</IsUnitTestProj>
67
</PropertyGroup>
78
<PropertyGroup Label="LibHttpClientUnitTestProps" Condition="'$(IsUnitTestProj)' == 'true'">
89
<libHttpClientDefine>HC_UNITTEST_API</libHttpClientDefine>
9-
<useWsppWebsockets>false</useWsppWebsockets>
1010
</PropertyGroup>
11-
12-
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), libHttpClient.props))\libHttpClient.props" />
13-
<Import Project="libHttpClient.paths.props"/>
1411
<ItemDefinitionGroup Label="LibHttpClientLibItemDefinition">
1512
<ClCompile>
1613
<PreprocessorDefinitions>
1714
$(libHttpClientDefine);
18-
HC_API_NONE;
1915
%(PreprocessorDefinitions)
2016
</PreprocessorDefinitions>
2117
<AdditionalIncludeDirectories>
22-
$(ProjectDir);
23-
$(libHttpClientInclude);
2418
$(libHttpClientInclude)httpClient;
25-
$(libHttpClientRoot)Source\Common;
26-
$(libHttpClientRoot)Source\Logger;
27-
$(libHttpClientRoot)Source\Websocket;
19+
$(HCBuildRoot)Source\Common;
20+
$(HCBuildRoot)Source\Logger;
21+
$(HCBuildRoot)Source\WebSocket;
2822
%(AdditionalIncludeDirectories)
2923
</AdditionalIncludeDirectories>
3024
<AdditionalIncludeDirectories Condition="'$(useWsppWebsockets)' == 'true'">
31-
$(libHttpClientRoot)External\asio\asio\include;
32-
$(libHttpClientRoot)External\websocketpp;
25+
$(HCBuildRoot)External\asio\asio\include;
26+
$(HCBuildRoot)External\websocketpp;
3327
%(AdditionalIncludeDirectories)
3428
</AdditionalIncludeDirectories>
3529
<AdditionalIncludeDirectories Condition="'$(IsUnitTestProj)' == 'true'">
36-
$(libHttpClientRoot)Tests\UnitTests\Support;
37-
$(libHttpClientRoot)Tests\UnitTests;
30+
$(HCBuildRoot)Tests\UnitTests\Support;
31+
$(HCBuildRoot)Tests\UnitTests;
3832
%(AdditionalIncludeDirectories)
3933
</AdditionalIncludeDirectories>
4034
</ClCompile>
41-
</ItemDefinitionGroup>
35+
</ItemDefinitionGroup>
4236
</Project>

Build/libHttpClient.paths.props

+4-5
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3-
<PropertyGroup>
4-
<BuildRoot>$(libHttpClientOutDir)</BuildRoot>
5-
<BuildRoot Condition="'$(BuildRoot)' == ''">$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), build.root))\</BuildRoot>
6-
<OutDir>$(BuildRoot)Binaries\$(Configuration)\$(Platform)\$(ProjectName)\</OutDir>
7-
<IntDir>$(BuildRoot)Obj\$(Configuration)\$(Platform)\$(ProjectName)\</IntDir>
3+
<PropertyGroup Condition="'$(XES_OUTDIR)'==''">
4+
<!-- Both of these will be overwritten by the XES build -->
5+
<OutDir>$(HCBuildRoot)Binaries\$(Configuration)\$(Platform)\$(ProjectName)\</OutDir>
6+
<IntDir>$(HCBuildRoot)Obj\$(Configuration)\$(Platform)\$(ProjectName)\</IntDir>
87
</PropertyGroup>
98
</Project>

Build/libcrypto.Android/libcrypto.Android.vcxproj

+4-5
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
<ApplicationType>Android</ApplicationType>
4242
<ApplicationTypeRevision>3.0</ApplicationTypeRevision>
4343
<AndroidAPILevel>android-19</AndroidAPILevel>
44+
<HCLibPlatformType>Android</HCLibPlatformType>
4445
</PropertyGroup>
4546
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
4647
<PropertyGroup>
@@ -64,17 +65,15 @@
6465
<ItemDefinitionGroup>
6566
<ClCompile>
6667
<AdditionalIncludeDirectories>
68+
%(AdditionalIncludeDirectories);
6769
$(opensslSourceRoot);
6870
$(opensslSourceRoot)crypto\include\;
6971
$(opensslSourceRoot)crypto\modes\;
70-
$(opensslSourceRoot)include\;
71-
$(generatedHeaders)android\;
72-
$(generatedHeaders)android\internal\;
73-
%(AdditionalIncludeDirectories)
72+
$(opensslGeneratedHeaders)internal\
7473
</AdditionalIncludeDirectories>
7574
<FunctionLevelLinking>true</FunctionLevelLinking>
7675
<PrecompiledHeader>NotUsing</PrecompiledHeader>
77-
<AdditionalOptions>-D DSO_DLFCN -D HAVE_DLFCN_H -D NDEBUG -D OPENSSL_THREADS -D OPENSSL_NO_STATIC_ENGINE -D OPENSSL_PIC -D OPENSSL_USE_NODELETE -D OPENSSLDIR='"THIS_SHOULD_NOT_BE_USED"' -D ENGINESDIR='"THIS_SHOULD_NOT_BE_USED"' -D UNICODE %(AdditionalOptions)</AdditionalOptions>
76+
<AdditionalOptions>-D DSO_DLFCN -D HAVE_DLFCN_H -D NDEBUG -D OPENSSL_THREADS -D OPENSSL_NO_STATIC_ENGINE -D OPENSSL_PIC -D OPENSSL_USE_NODELETE -D OPENSSLDIR='"THIS_SHOULD_NOT_BE_USED"' -D ENGINESDIR='"THIS_SHOULD_NOT_BE_USED"' -D UNICODE %(AdditionalOptions)</AdditionalOptions>
7877
<WarningLevel>Level3</WarningLevel>
7978
</ClCompile>
8079
</ItemDefinitionGroup>

Build/libcrypto.Win32/libcrypto.Win32.vcxproj

+4-6
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
<PlatformToolset>v141</PlatformToolset>
2828
<CharacterSet>Unicode</CharacterSet>
2929
<LinkIncremental>true</LinkIncremental>
30-
<ProjectName>libcrypto.Win32</ProjectName>
30+
<HCLibPlatformType>Win32</HCLibPlatformType>
3131
</PropertyGroup>
3232
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
3333
<ImportGroup Label="PropertySheets">
@@ -50,13 +50,11 @@
5050
<ItemDefinitionGroup>
5151
<ClCompile>
5252
<AdditionalIncludeDirectories>
53+
%(AdditionalIncludeDirectories);
5354
$(opensslSourceRoot);
5455
$(opensslSourceRoot)crypto\include\;
5556
$(opensslSourceRoot)crypto\modes\;
56-
$(opensslSourceRoot)include\;
57-
$(generatedHeaders)win32\;
58-
$(generatedHeaders)win32\internal\;
59-
%(AdditionalIncludeDirectories)
57+
$(opensslGeneratedHeaders)internal\
6058
</AdditionalIncludeDirectories>
6159
<AdditionalOptions>%(AdditionalOptions) /analyze-</AdditionalOptions>
6260
<DisableSpecificWarnings>4005;4028;4031;4047;4090;4133;4164;4244;4267</DisableSpecificWarnings>
@@ -689,4 +687,4 @@
689687
</ItemGroup>
690688
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
691689
<ImportGroup Label="ExtensionTargets" />
692-
</Project>
690+
</Project>

Build/libssl.Android/libssl.Android.vcxproj

+3-4
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
<ApplicationType>Android</ApplicationType>
4242
<ApplicationTypeRevision>3.0</ApplicationTypeRevision>
4343
<AndroidAPILevel>android-19</AndroidAPILevel>
44+
<HCLibPlatformType>Android</HCLibPlatformType>
4445
</PropertyGroup>
4546
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
4647
<PropertyGroup>
@@ -64,13 +65,11 @@
6465
<ItemDefinitionGroup>
6566
<ClCompile>
6667
<AdditionalIncludeDirectories>
68+
%(AdditionalIncludeDirectories);
6769
$(opensslSourceRoot);
6870
$(opensslSourceRoot)ssl\record\;
6971
$(opensslSourceRoot)ssl\statem\;
70-
$(opensslSourceRoot)include\;
71-
$(generatedHeaders)win32\;
72-
$(generatedHeaders)win32\internal\;
73-
%(AdditionalIncludeDirectories)
72+
$(opensslGeneratedHeaders)internal\
7473
</AdditionalIncludeDirectories>
7574
<FunctionLevelLinking>true</FunctionLevelLinking>
7675
<PrecompiledHeader>NotUsing</PrecompiledHeader>

Build/libssl.Win32/libssl.Win32.vcxproj

+4-6
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
<PlatformToolset>v141</PlatformToolset>
2828
<CharacterSet>Unicode</CharacterSet>
2929
<LinkIncremental>true</LinkIncremental>
30-
<ProjectName>libssl.Win32</ProjectName>
30+
<HCLibPlatformType>Win32</HCLibPlatformType>
3131
</PropertyGroup>
3232
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
3333
<ImportGroup Label="PropertySheets">
@@ -50,13 +50,11 @@
5050
<ItemDefinitionGroup>
5151
<ClCompile>
5252
<AdditionalIncludeDirectories>
53+
%(AdditionalIncludeDirectories);
5354
$(opensslSourceRoot);
5455
$(opensslSourceRoot)ssl\record\;
5556
$(opensslSourceRoot)ssl\statem\;
56-
$(opensslSourceRoot)include\;
57-
$(generatedHeaders)win32\;
58-
$(generatedHeaders)win32\internal\;
59-
%(AdditionalIncludeDirectories)
57+
$(opensslGeneratedHeaders)internal\
6058
</AdditionalIncludeDirectories>
6159
<AdditionalOptions>%(AdditionalOptions) /analyze-</AdditionalOptions>
6260
<DisableSpecificWarnings>4005;4028;4031;4047;4090;4133;4164;4244;4267</DisableSpecificWarnings>
@@ -126,4 +124,4 @@
126124
</ItemGroup>
127125
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
128126
<ImportGroup Label="ExtensionTargets" />
129-
</Project>
127+
</Project>

0 commit comments

Comments
 (0)