You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

34 lines
2.0 KiB

#!/bin/sh
# script to build without cmake,
# manually generate header files usually created by CMake,
# past those inside Uncrustifys 'src' dir
# run this script in the 'emscripten' dir
sh_dir="$(dirname "$(readlink -f "$0")")"
outTmp="temp.bak"
out="libUncrustify.js"
#https://github.com/kripken/emscripten/blob/master/src/settings.js
em++ -O3 \
${COMMENT# initialy increase memory for big input files } \
-s TOTAL_MEMORY=67108864 \
${COMMENT# let the memory grow dynamically if even more is needed } \
-s ALLOW_MEMORY_GROWTH=1 \
-s VERBOSE=1 \
-s MODULARIZE=1 \
-s EXPORT_NAME="'libUncrustify'" \
-s ERROR_ON_UNDEFINED_SYMBOLS=1 \
-s ALLOW_MEMORY_GROWTH=1 \
-s "EXTRA_EXPORTED_RUNTIME_METHODS=['UTF8ToString', 'stringToUTF8', 'lengthBytesUTF8', 'writeAsciiToMemory']" \
--bind \
--pre-js prefix_module.js \
--post-js postfix_module.js \
${COMMENT# TODO: handle async ajax load to enable this } \
--memory-init-file 0 \
-o $out \
../src/*.cpp \
&& cat "./prefix_file" "$out" "./postfix_file" > "$outTmp" \
&& mv "$outTmp" "$out" \
&& ./test/run_tests.py "$sh_dir/libUncrustify.js" "$sh_dir/test"