11654
|
1 |
# - Try to find the Clang/LLVM executable
|
|
2 |
# Once done this will define
|
|
3 |
#
|
|
4 |
# EMSCRIPTEN_FOUND - system has Clang
|
|
5 |
# EMSCRIPTEN_VERSION - Clang version
|
|
6 |
# EMSCRIPTEN_EXECUTABLE - Clang executable
|
|
7 |
#
|
|
8 |
# Copyright (c) 2013, Vittorio Giovara <vittorio.giovara@gmail.com>
|
|
9 |
#
|
|
10 |
# Redistribution and use is allowed according to the terms of the BSD license.
|
|
11 |
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
|
|
12 |
|
|
13 |
find_program(EMSCRIPTEN_EXECUTABLE
|
|
14 |
NAMES emcc
|
|
15 |
PATHS /opt/local/bin /usr/local/bin /usr/bin)
|
|
16 |
|
|
17 |
if (EMSCRIPTEN_EXECUTABLE)
|
|
18 |
execute_process(COMMAND ${EMSCRIPTEN_EXECUTABLE} -v
|
|
19 |
OUTPUT_VARIABLE EMSCRIPTEN_VERSION_OUTPUT
|
|
20 |
ERROR_VARIABLE EMSCRIPTEN_VERSION_ERROR
|
|
21 |
RESULT_VARIABLE EMSCRIPTEN_VERSION_RESULT
|
|
22 |
OUTPUT_STRIP_TRAILING_WHITESPACE
|
|
23 |
)
|
|
24 |
|
|
25 |
if(${EMSCRIPTEN_VERSION_RESULT} EQUAL 0)
|
|
26 |
string(REGEX MATCH "[0-9]+\\.[0-9]+\\.[0-9]+" EMSCRIPTEN_VERSION "${EMSCRIPTEN_VERSION_OUTPUT}")
|
|
27 |
string(REGEX REPLACE "([0-9]+\\.[0-9]+\\.[0-9]+)" "\\1" EMSCRIPTEN_VERSION "${EMSCRIPTEN_VERSION}")
|
|
28 |
else()
|
|
29 |
message(SEND_ERROR "Command \"${EMSCRIPTEN_EXECUTABLE} --version\" failed with output: ${EMSCRIPTEN_VERSION_ERROR}")
|
|
30 |
endif()
|
|
31 |
endif()
|
|
32 |
|
|
33 |
include(FindPackageHandleStandardArgs)
|
|
34 |
find_package_handle_standard_args(Emscripten DEFAULT_MSG EMSCRIPTEN_EXECUTABLE EMSCRIPTEN_VERSION)
|
|
35 |
mark_as_advanced(EMSCRIPTEN_VERSION)
|
|
36 |
|