mirror of
				https://github.com/c64scene-ar/llvm-6502.git
				synced 2025-10-30 16:17:05 +00:00 
			
		
		
		
	git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86654 91177308-0d34-0410-b5e6-96231b3b80d8
		
			
				
	
	
		
			81 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			81 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| # -*- Python -*-
 | |
| 
 | |
| # Configuration file for the 'lit' test runner.
 | |
| 
 | |
| # name: The name of this test suite.
 | |
| config.name = 'Clang'
 | |
| 
 | |
| # testFormat: The test format to use to interpret tests.
 | |
| #
 | |
| # For now we require '&&' between commands, until they get globally killed and
 | |
| # the test runner updated.
 | |
| config.test_format = lit.formats.ShTest(execute_external = True)
 | |
| 
 | |
| # suffixes: A list of file extensions to treat as test files.
 | |
| config.suffixes = ['.c', '.cpp', '.m', '.mm']
 | |
| 
 | |
| # target_triple: Used by ShTest and TclTest formats for XFAIL checks.
 | |
| config.target_triple = 'foo'
 | |
| 
 | |
| ###
 | |
| 
 | |
| # Discover the 'clang' and 'clangcc' to use.
 | |
| 
 | |
| import os
 | |
| 
 | |
| def inferClang(PATH):
 | |
|     # Determine which clang to use.
 | |
|     clang = os.getenv('CLANG')
 | |
| 
 | |
|     # If the user set clang in the environment, definitely use that and don't
 | |
|     # try to validate.
 | |
|     if clang:
 | |
|         return clang
 | |
| 
 | |
|     # Otherwise look in the path.
 | |
|     clang = lit.util.which('clang', PATH)
 | |
| 
 | |
|     if not clang:
 | |
|         lit.fatal("couldn't find 'clang' program, try setting "
 | |
|                   "CLANG in your environment")
 | |
| 
 | |
|     return clang
 | |
| 
 | |
| def inferClangCC(clang, PATH):
 | |
|     clangcc = os.getenv('CLANGCC')
 | |
| 
 | |
|     # If the user set clang in the environment, definitely use that and don't
 | |
|     # try to validate.
 | |
|     if clangcc:
 | |
|         return clangcc
 | |
| 
 | |
|     # Otherwise try adding -cc since we expect to be looking in a build
 | |
|     # directory.
 | |
|     if clang.endswith('.exe'):
 | |
|         clangccName = clang[:-4] + '-cc.exe'
 | |
|     else:
 | |
|         clangccName = clang + '-cc'
 | |
|     clangcc = lit.util.which(clangccName, PATH)
 | |
|     if not clangcc:
 | |
|         # Otherwise ask clang.
 | |
|         res = lit.util.capture([clang, '-print-prog-name=clang-cc'])
 | |
|         res = res.strip()
 | |
|         if res and os.path.exists(res):
 | |
|             clangcc = res
 | |
| 
 | |
|     if not clangcc:
 | |
|         lit.fatal("couldn't find 'clang-cc' program, try setting "
 | |
|                   "CLANGCC in your environment")
 | |
| 
 | |
|     return clangcc
 | |
| 
 | |
| clang = inferClang(config.environment['PATH'])
 | |
| if not lit.quiet:
 | |
|     lit.note('using clang: %r' % clang)
 | |
| config.substitutions.append( (' clang ', ' ' + clang + ' ') )
 | |
| 
 | |
| clang_cc = inferClangCC(clang, config.environment['PATH'])
 | |
| if not lit.quiet:
 | |
|     lit.note('using clang-cc: %r' % clang_cc)
 | |
| config.substitutions.append( (' clang-cc ', ' ' + clang_cc + ' ') )
 |