mirror of
				https://github.com/catchorg/Catch2.git
				synced 2025-10-31 12:17:11 +01:00 
			
		
		
		
	Fix VS2017 approvals on AppVeyor
Because of a change in VS toolset, missing option <UseFullPaths> is no longer interpreted as "don't pass /FC to the compiler", but rather as "pass /FC to the compiler". This is problematic, because /FC not only changes how much of the path is reporter by the compiler (e.g. in `__FILE__` macro), but it also lower cases the path. This lower-casing of the path broke our approval tests for VS2017 about 5 months ago. Using CMake 3.13 (not yet released) would also let us fix it, but for now we use a vcxproj.user file that is merged with the main project and explicitly disables `/FC`.
This commit is contained in:
		
							
								
								
									
										23
									
								
								misc/SelfTest.vcxproj.user
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								misc/SelfTest.vcxproj.user
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,23 @@ | ||||
| <?xml version="1.0" encoding="utf-8"?> | ||||
| <Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | ||||
|   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> | ||||
|     <ClCompile> | ||||
|       <UseFullPaths>false</UseFullPaths> | ||||
|     </ClCompile> | ||||
|   </ItemDefinitionGroup> | ||||
|   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> | ||||
|     <ClCompile> | ||||
|       <UseFullPaths>false</UseFullPaths> | ||||
|     </ClCompile> | ||||
|   </ItemDefinitionGroup> | ||||
|   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> | ||||
|     <ClCompile> | ||||
|       <UseFullPaths>false</UseFullPaths> | ||||
|     </ClCompile> | ||||
|   </ItemDefinitionGroup> | ||||
|   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> | ||||
|     <ClCompile> | ||||
|       <UseFullPaths>false</UseFullPaths> | ||||
|     </ClCompile> | ||||
|   </ItemDefinitionGroup> | ||||
| </Project> | ||||
| @@ -1,5 +1,17 @@ | ||||
| include(MiscFunctions) | ||||
|  | ||||
| #### | ||||
| # Temporary workaround for VS toolset changes in 2017 | ||||
| # We need to disable <UseFullPaths> property, but CMake doesn't support it | ||||
| # until 3.13 (not yet released) | ||||
| #### | ||||
| if (MSVC) | ||||
| configure_file(${CATCH_DIR}/misc/SelfTest.vcxproj.user | ||||
|                ${CMAKE_BINARY_DIR}/projects | ||||
|                COPYONLY) | ||||
| endif(MSVC) #Temporary workaround | ||||
|  | ||||
|  | ||||
| # define the sources of the self test | ||||
| # Please keep these ordered alphabetically | ||||
| set(TEST_SOURCES | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Martin Hořeňovský
					Martin Hořeňovský