author | Bryan Dunsmore <dunsmoreb@gmail.com> |
Fri, 30 Nov 2012 21:28:40 -0600 | |
branch | webgl |
changeset 8111 | 4307de8780fa |
parent 8109 | b5cd8cad2d86 |
child 8113 | 0ad9c42dca7c |
permissions | -rw-r--r-- |
8109
b5cd8cad2d86
Move code for Clang to separate CMake module.
Bryan Dunsmore <dunsmoreb@gmail.com>
parents:
diff
changeset
|
1 |
# Load LLVM/Clang |
b5cd8cad2d86
Move code for Clang to separate CMake module.
Bryan Dunsmore <dunsmoreb@gmail.com>
parents:
diff
changeset
|
2 |
IF (CLANG) |
b5cd8cad2d86
Move code for Clang to separate CMake module.
Bryan Dunsmore <dunsmoreb@gmail.com>
parents:
diff
changeset
|
3 |
SET(CLANG_EXECUTABLE ${CLANG}) |
b5cd8cad2d86
Move code for Clang to separate CMake module.
Bryan Dunsmore <dunsmoreb@gmail.com>
parents:
diff
changeset
|
4 |
ELSE() |
b5cd8cad2d86
Move code for Clang to separate CMake module.
Bryan Dunsmore <dunsmoreb@gmail.com>
parents:
diff
changeset
|
5 |
FIND_PROGRAM(CLANG_EXECUTABLE |
b5cd8cad2d86
Move code for Clang to separate CMake module.
Bryan Dunsmore <dunsmoreb@gmail.com>
parents:
diff
changeset
|
6 |
NAMES clang-mp-3.2 clang-mp-3.1 clang-mp-3.0 clang |
b5cd8cad2d86
Move code for Clang to separate CMake module.
Bryan Dunsmore <dunsmoreb@gmail.com>
parents:
diff
changeset
|
7 |
PATHS /opt/local/bin /usr/local/bin /usr/bin) |
b5cd8cad2d86
Move code for Clang to separate CMake module.
Bryan Dunsmore <dunsmoreb@gmail.com>
parents:
diff
changeset
|
8 |
ENDIF() |
b5cd8cad2d86
Move code for Clang to separate CMake module.
Bryan Dunsmore <dunsmoreb@gmail.com>
parents:
diff
changeset
|
9 |
|
b5cd8cad2d86
Move code for Clang to separate CMake module.
Bryan Dunsmore <dunsmoreb@gmail.com>
parents:
diff
changeset
|
10 |
# Check LLVM/Clang version |
b5cd8cad2d86
Move code for Clang to separate CMake module.
Bryan Dunsmore <dunsmoreb@gmail.com>
parents:
diff
changeset
|
11 |
IF (CLANG_EXECUTABLE) |
b5cd8cad2d86
Move code for Clang to separate CMake module.
Bryan Dunsmore <dunsmoreb@gmail.com>
parents:
diff
changeset
|
12 |
EXEC_PROGRAM(${CLANG_EXECUTABLE} ARGS "-v" OUTPUT_VARIABLE CLANG_VERSION_FULL) |
b5cd8cad2d86
Move code for Clang to separate CMake module.
Bryan Dunsmore <dunsmoreb@gmail.com>
parents:
diff
changeset
|
13 |
|
b5cd8cad2d86
Move code for Clang to separate CMake module.
Bryan Dunsmore <dunsmoreb@gmail.com>
parents:
diff
changeset
|
14 |
STRING(REGEX MATCH "[0-9]+\\.[0-9]+" CLANG_VERSION_LONG "${CLANG_VERSION_FULL}") |
b5cd8cad2d86
Move code for Clang to separate CMake module.
Bryan Dunsmore <dunsmoreb@gmail.com>
parents:
diff
changeset
|
15 |
STRING(REGEX REPLACE "([0-9]+\\.[0-9]+)" "\\1" CLANG_VERSION "${CLANG_VERSION_LONG}") |
b5cd8cad2d86
Move code for Clang to separate CMake module.
Bryan Dunsmore <dunsmoreb@gmail.com>
parents:
diff
changeset
|
16 |
ELSE() |
b5cd8cad2d86
Move code for Clang to separate CMake module.
Bryan Dunsmore <dunsmoreb@gmail.com>
parents:
diff
changeset
|
17 |
MESSAGE(FATAL_ERROR "No LLVM/Clang compiler found (required for engine_c target)") |
b5cd8cad2d86
Move code for Clang to separate CMake module.
Bryan Dunsmore <dunsmoreb@gmail.com>
parents:
diff
changeset
|
18 |
ENDIF() |
b5cd8cad2d86
Move code for Clang to separate CMake module.
Bryan Dunsmore <dunsmoreb@gmail.com>
parents:
diff
changeset
|
19 |
|
b5cd8cad2d86
Move code for Clang to separate CMake module.
Bryan Dunsmore <dunsmoreb@gmail.com>
parents:
diff
changeset
|
20 |
SET(CMAKE_C_COMPILER ${CLANG_EXECUTABLE}) |