Make OLM_OPTIONS work again

The closure compiler was just renaming the variable so it never
would have picked them up. Make it an extern so it knows what to do.
This commit is contained in:
David Baker 2018-09-21 16:35:17 +01:00
parent 122867c45c
commit 5e87db615a
3 changed files with 4 additions and 4 deletions

View file

@ -21,6 +21,7 @@ JS_TARGET := javascript/olm.js
JS_EXPORTED_FUNCTIONS := javascript/exported_functions.json JS_EXPORTED_FUNCTIONS := javascript/exported_functions.json
JS_EXTRA_EXPORTED_RUNTIME_METHODS := ALLOC_STACK JS_EXTRA_EXPORTED_RUNTIME_METHODS := ALLOC_STACK
JS_EXTERNS := javascript/externs.js
PUBLIC_HEADERS := include/olm/olm.h include/olm/outbound_group_session.h include/olm/inbound_group_session.h include/olm/pk.h PUBLIC_HEADERS := include/olm/olm.h include/olm/outbound_group_session.h include/olm/inbound_group_session.h include/olm/pk.h
@ -147,7 +148,7 @@ js: $(JS_TARGET)
.PHONY: js .PHONY: js
$(JS_TARGET): $(JS_OBJECTS) $(JS_PRE) $(JS_POST) $(JS_EXPORTED_FUNCTIONS) $(JS_TARGET): $(JS_OBJECTS) $(JS_PRE) $(JS_POST) $(JS_EXPORTED_FUNCTIONS)
$(EMCC_LINK) \ EMCC_CLOSURE_ARGS="--externs $(JS_EXTERNS)" $(EMCC_LINK) \
$(foreach f,$(JS_PRE),--pre-js $(f)) \ $(foreach f,$(JS_PRE),--pre-js $(f)) \
$(foreach f,$(JS_POST),--post-js $(f)) \ $(foreach f,$(JS_POST),--post-js $(f)) \
-s "EXPORTED_FUNCTIONS=@$(JS_EXPORTED_FUNCTIONS)" \ -s "EXPORTED_FUNCTIONS=@$(JS_EXPORTED_FUNCTIONS)" \

1
javascript/externs.js Normal file
View file

@ -0,0 +1 @@
var OLM_OPTIONS;

View file

@ -21,10 +21,8 @@ if (typeof(window) !== 'undefined') {
} }
/* applications should define OLM_OPTIONS in the environment to override /* applications should define OLM_OPTIONS in the environment to override
* emscripten module settings (we still need to (re) declare the variable * emscripten module settings
* otherwise the closure compiler becomes sad).
*/ */
var OLM_OPTIONS;
if (typeof(OLM_OPTIONS) !== 'undefined') { if (typeof(OLM_OPTIONS) !== 'undefined') {
for (var olm_option_key in OLM_OPTIONS) { for (var olm_option_key in OLM_OPTIONS) {
if (OLM_OPTIONS.hasOwnProperty(olm_option_key)) { if (OLM_OPTIONS.hasOwnProperty(olm_option_key)) {