mirror of
				https://github.com/saitohirga/WSJT-X.git
				synced 2025-10-31 13:10:19 -04:00 
			
		
		
		
	
		
			
				
	
	
		
			54 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			54 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| #!/usr/bin/python
 | |
| 
 | |
| # Copyright 2003 Vladimir Prus
 | |
| # Copyright 2011 Steven Watanabe
 | |
| # Distributed under the Boost Software License, Version 1.0.
 | |
| # (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
 | |
| 
 | |
| # Test the C/C++ preprocessor.
 | |
| 
 | |
| import BoostBuild
 | |
| 
 | |
| t = BoostBuild.Tester()
 | |
| 
 | |
| t.write("jamroot.jam", """
 | |
| project ;
 | |
| preprocessed hello : hello.cpp ;
 | |
| preprocessed a : a.c ;
 | |
| exe hello.exe : hello a : <define>FAIL ;
 | |
| """)
 | |
| 
 | |
| t.write("hello.cpp", """
 | |
| #ifndef __cplusplus
 | |
| #error "This file must be compiled as C++"
 | |
| #endif
 | |
| #ifdef FAIL
 | |
| #error "Not preprocessed?"
 | |
| #endif
 | |
| extern "C" int foo();
 | |
| int main() { return foo(); }
 | |
| """)
 | |
| 
 | |
| t.write("a.c", """
 | |
| /* This will not compile unless in C mode. */
 | |
| #ifdef __cplusplus
 | |
| #error "This file must be compiled as C"
 | |
| #endif
 | |
| #ifdef FAIL
 | |
| #error "Not preprocessed?"
 | |
| #endif
 | |
| int foo()
 | |
| {
 | |
|     int new = 0;
 | |
|     new = (new+1)*7;
 | |
|     return new;
 | |
| }
 | |
| """)
 | |
| 
 | |
| t.run_build_system()
 | |
| t.expect_addition("bin/$toolset/debug/hello.ii")
 | |
| t.expect_addition("bin/$toolset/debug/a.i")
 | |
| t.expect_addition("bin/$toolset/debug/hello.exe")
 | |
| 
 | |
| t.cleanup()
 |