| Oscar Fuentes | bf81f79 | 2008-10-26 00:47:52 +0000 | [diff] [blame] | 1 | # Returns the host triple. | 
|  | 2 | # Invokes config.guess | 
|  | 3 |  | 
|  | 4 | function( get_target_triple var ) | 
|  | 5 | if( MSVC ) | 
| Oscar Fuentes | e93b54b | 2009-08-12 00:04:12 +0000 | [diff] [blame] | 6 | if( CMAKE_CL_64 ) | 
| Daniel Dunbar | 39a6c62 | 2009-11-07 23:52:27 +0000 | [diff] [blame] | 7 | set( value "x86_64-pc-win32" ) | 
| Oscar Fuentes | e93b54b | 2009-08-12 00:04:12 +0000 | [diff] [blame] | 8 | else() | 
| Daniel Dunbar | 39a6c62 | 2009-11-07 23:52:27 +0000 | [diff] [blame] | 9 | set( value "i686-pc-win32" ) | 
| Oscar Fuentes | e93b54b | 2009-08-12 00:04:12 +0000 | [diff] [blame] | 10 | endif() | 
| Oscar Fuentes | 91bd6c9 | 2009-08-16 20:50:41 +0000 | [diff] [blame] | 11 | elseif( MINGW AND NOT MSYS ) | 
| Daniel Dunbar | 39a6c62 | 2009-11-07 23:52:27 +0000 | [diff] [blame] | 12 | set( value "i686-pc-mingw32" ) | 
| Oscar Fuentes | bf81f79 | 2008-10-26 00:47:52 +0000 | [diff] [blame] | 13 | else( MSVC ) | 
|  | 14 | set(config_guess ${LLVM_MAIN_SRC_DIR}/autoconf/config.guess) | 
|  | 15 | execute_process(COMMAND sh ${config_guess} | 
|  | 16 | RESULT_VARIABLE TT_RV | 
|  | 17 | OUTPUT_VARIABLE TT_OUT | 
|  | 18 | OUTPUT_STRIP_TRAILING_WHITESPACE) | 
|  | 19 | if( NOT TT_RV EQUAL 0 ) | 
|  | 20 | message(FATAL_ERROR "Failed to execute ${config_guess}") | 
|  | 21 | endif( NOT TT_RV EQUAL 0 ) | 
| Daniel Dunbar | 39a6c62 | 2009-11-07 23:52:27 +0000 | [diff] [blame] | 22 | set( value ${TT_OUT} ) | 
| Oscar Fuentes | bf81f79 | 2008-10-26 00:47:52 +0000 | [diff] [blame] | 23 | endif( MSVC ) | 
| Daniel Dunbar | 39a6c62 | 2009-11-07 23:52:27 +0000 | [diff] [blame] | 24 | set( ${var} ${value} PARENT_SCOPE ) | 
|  | 25 | message(STATUS "Target triple: ${value}") | 
| Oscar Fuentes | bf81f79 | 2008-10-26 00:47:52 +0000 | [diff] [blame] | 26 | endfunction( get_target_triple var ) |