diff --git a/wasm/CMakeLists.txt b/wasm/CMakeLists.txt index 7feef75..72b22c1 100644 --- a/wasm/CMakeLists.txt +++ b/wasm/CMakeLists.txt @@ -4,6 +4,10 @@ add_executable(bergamot-translator-worker bindings/TranslationResultBindings.cpp ) +# Generate version file that can be included in the wasm artifacts +configure_file(${CMAKE_CURRENT_SOURCE_DIR}/project_version.js.in + ${CMAKE_CURRENT_SOURCE_DIR}/project_version.js @ONLY) + # This header inclusion needs to go away later as path to public headers of bergamot # translator should be directly available from "bergamot-translator" target target_include_directories(bergamot-translator-worker @@ -19,6 +23,9 @@ set(LINKER_FLAGS "-g2 --bind -s ASSERTIONS=0 -s DISABLE_EXCEPTION_CATCHING=1 -s # Avoid node.js-code in emscripten glue-code set(LINKER_FLAGS "${LINKER_FLAGS} -s ENVIRONMENT=web,worker") +# Append version information in the Javascript artifact +set(LINKER_FLAGS "${LINKER_FLAGS} --extern-pre-js ${CMAKE_CURRENT_SOURCE_DIR}/project_version.js") + set_target_properties(bergamot-translator-worker PROPERTIES SUFFIX ".js" LINK_FLAGS ${LINKER_FLAGS} diff --git a/wasm/project_version.js.in b/wasm/project_version.js.in new file mode 100644 index 0000000..9a4095f --- /dev/null +++ b/wasm/project_version.js.in @@ -0,0 +1 @@ +var BERGAMOT_VERSION_FULL = "@PROJECT_VERSION_STRING_FULL@"; \ No newline at end of file