diff options
author | Blaine Bublitz <blaine.bublitz@gmail.com> | 2022-01-04 09:51:41 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-01-04 08:51:41 -0800 |
commit | 1980e5570bce241945360abe8105101019f64bc6 (patch) | |
tree | 806f6d9e0efae183cad36c353fc899c673a96128 /src | |
parent | 6137b338c7fb37ba98b63c31225ec9cfda8cfa59 (diff) | |
download | binaryen-1980e5570bce241945360abe8105101019f64bc6.tar.gz binaryen-1980e5570bce241945360abe8105101019f64bc6.tar.bz2 binaryen-1980e5570bce241945360abe8105101019f64bc6.zip |
Remove python from CMake build (#4324)
Use CMake's configure_file() instead.
Diffstat (limited to 'src')
-rw-r--r-- | src/passes/CMakeLists.txt | 17 | ||||
-rw-r--r-- | src/passes/WasmIntrinsics.cpp.in | 9 |
2 files changed, 20 insertions, 6 deletions
diff --git a/src/passes/CMakeLists.txt b/src/passes/CMakeLists.txt index bc09736a4..e24072424 100644 --- a/src/passes/CMakeLists.txt +++ b/src/passes/CMakeLists.txt @@ -1,10 +1,15 @@ -# Python 3.5 is the version shipped in Ubuntu Xenial -find_package(PythonInterp 3.5 REQUIRED) +file(READ wasm-intrinsics.wat WASM_INTRINSICS_WAT HEX) -add_custom_command( - OUTPUT WasmIntrinsics.cpp - COMMAND ${PYTHON_EXECUTABLE} ${PROJECT_SOURCE_DIR}/scripts/embedwat.py ${PROJECT_SOURCE_DIR}/src/passes/wasm-intrinsics.wat ${CMAKE_CURRENT_BINARY_DIR}/WasmIntrinsics.cpp - DEPENDS ${PROJECT_SOURCE_DIR}/scripts/embedwat.py wasm-intrinsics.wat) +string(REGEX MATCHALL "([A-Fa-f0-9][A-Fa-f0-9])" SEPARATED_HEX ${WASM_INTRINSICS_WAT}) + +set(WASM_INTRINSICS_SIZE 1) +foreach (hex IN LISTS SEPARATED_HEX) + string(APPEND WASM_INTRINSICS_EMBED "0x${hex},") + math(EXPR WASM_INTRINSICS_SIZE "${WASM_INTRINSICS_SIZE}+1") +endforeach () +string(APPEND WASM_INTRINSICS_EMBED "0x00") + +configure_file(WasmIntrinsics.cpp.in WasmIntrinsics.cpp @ONLY) FILE(GLOB passes_HEADERS *.h) set(passes_SOURCES diff --git a/src/passes/WasmIntrinsics.cpp.in b/src/passes/WasmIntrinsics.cpp.in new file mode 100644 index 000000000..46216842d --- /dev/null +++ b/src/passes/WasmIntrinsics.cpp.in @@ -0,0 +1,9 @@ +#include "passes/intrinsics-module.h" + +static const char theModule[@WASM_INTRINSICS_SIZE@] = { +@WASM_INTRINSICS_EMBED@ +}; + +namespace wasm { +const char* IntrinsicsModuleWast = theModule; +} |