mirror of
https://github.com/bytecodealliance/wasm-micro-runtime.git
synced 2025-02-08 07:55:10 +00:00
![wenyongh](/assets/img/avatar_default.png)
* Implement memory profiler, optimize memory usage, modify code indent * Implement memory.grow and limit heap space base offset to 1G; modify iwasm build type to Release and 64 bit by default * Add a new extension library: connection * Fix bug of reading magic number and version in big endian platform * Re-org platform APIs: move most platform APIs from iwasm to shared-lib * Enhance wasm loader to fix some security issues * Fix issue about illegal load of EXC_RETURN into PC on stm32 board * Updates that let a restricted version of the interpreter run in SGX * Enable native/app address validation and conversion for wasm app * Remove wasm_application_exectue_* APIs from wasm_export.h which makes confused * Refine binary size and fix several minor issues Optimize interpreter LOAD/STORE opcodes to decrease the binary size Fix issues when using iwasm library: _bh_log undefined, bh_memory.h not found Remove unused _stdin/_stdout/_stderr global variables resolve in libc wrapper Add macros of global heap size, stack size, heap size for Zephyr main.c Clear compile warning of wasm_application.c * Add more strict security checks for libc wrapper API's * Use one libc wrapper copy for sgx and other platforms; remove bh_printf macro for other platform header files * Enhance security of libc strcpy/sprintf wrapper function * Fix issue of call native for x86_64/arm/mips, add module inst parameter for native wrapper functions * Remove get_module_inst() and fix issue of call native * Refine wgl lib: remove module_inst parameter from widget functions; move function index check to runtime instantiate * Refine interpreter call native process, refine memory boudary check * Fix issues of invokeNative function of arm/mips/general version * Add a switch to build simple sample without gui support * Add BUILD_TARGET setting in makefile to replace cpu compiler flags in source code * Re-org shared lib header files, remove unused info; fix compile issues of vxworks * Add build target general * Remove unused files * Update license header * test push * Restore file * Sync up with internal/feature * Sync up with internal/feature * Rename build_wamr_app to build_wasm_app * Fix small issues of README * Enhance malformed wasm file checking Fix issue of print hex int and implement utf8 string check Fix wasi file read/write right issue Fix minor issue of build wasm app doc * Sync up with internal/feature * Sync up with internal/feature: fix interpreter arm issue, fix read leb issue * Sync up with internal/feature * Fix bug of config.h and rename wasi config.h to ssp_config.h * Sync up with internal/feature * Import wamr aot * update document * update document * Update document, disable WASI in 32bit * update document * remove files * update document * Update document * update document * update document * update samples * Sync up with internal repo
114 lines
2.8 KiB
Bash
Executable File
114 lines
2.8 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
PROJECT_DIR=$PWD
|
|
WAMR_DIR=${PWD}/../..
|
|
OUT_DIR=${PWD}/out
|
|
BUILD_DIR=${PWD}/build
|
|
WAMR_RUNTIME_CFG=${PROJECT_DIR}/wamr_config_gui.cmake
|
|
LV_CFG_PATH=${PROJECT_DIR}/lv_config
|
|
|
|
if [ -z $KW_BUILD ] || [ -z $KW_OUT_FILE ];then
|
|
echo "Local Build Env"
|
|
cmakewrap="cmake"
|
|
makewrap="make"
|
|
else
|
|
echo "Klocwork Build Env"
|
|
cmakewrap="cmake -DCMAKE_BUILD_TYPE=Debug"
|
|
makewrap="kwinject -o $KW_OUT_FILE make"
|
|
fi
|
|
|
|
if [ ! -d $BUILD_DIR ]; then
|
|
mkdir ${BUILD_DIR}
|
|
fi
|
|
|
|
rm -rf ${OUT_DIR}
|
|
mkdir ${OUT_DIR}
|
|
|
|
|
|
cd ${WAMR_DIR}/core/shared/mem-alloc
|
|
if [ ! -d "tlsf" ]; then
|
|
git clone https://github.com/mattconte/tlsf
|
|
fi
|
|
|
|
cd ${WAMR_DIR}/core/deps
|
|
if [ ! -d "lvgl" ]; then
|
|
git clone https://github.com/littlevgl/lvgl.git --branch v6.0.1
|
|
fi
|
|
if [ ! -d "lv_drivers" ]; then
|
|
git clone https://github.com/littlevgl/lv_drivers.git
|
|
fi
|
|
|
|
echo -e "\n\n"
|
|
echo "##################### 0. build wamr-sdk gui start#####################"
|
|
cd ${WAMR_DIR}/wamr-sdk
|
|
./build_sdk.sh -n gui -x ${WAMR_RUNTIME_CFG} -e ${LV_CFG_PATH}
|
|
[ $? -eq 0 ] || exit $?
|
|
|
|
echo "#####################build wamr-sdk success"
|
|
|
|
|
|
echo -e "\n\n"
|
|
echo "##################### 1. build native-ui-app start#####################"
|
|
cd $BUILD_DIR
|
|
mkdir -p lvgl-native-ui-app
|
|
cd lvgl-native-ui-app
|
|
$cmakewrap ${PROJECT_DIR}/lvgl-native-ui-app
|
|
[ $? -eq 0 ] || exit $?
|
|
$makewrap
|
|
if [ $? != 0 ];then
|
|
echo "BUILD_FAIL native-ui-app $?\n"
|
|
exit 2
|
|
fi
|
|
echo $PWD
|
|
cp lvgl_native_ui_app ${OUT_DIR}
|
|
echo "#####################build native-ui-app success"
|
|
echo -e "\n\n"
|
|
|
|
|
|
echo "##################### 2. build wasm runtime start#####################"
|
|
cd $BUILD_DIR
|
|
mkdir -p wasm-runtime-wgl
|
|
cd wasm-runtime-wgl
|
|
$cmakewrap ${PROJECT_DIR}/wasm-runtime-wgl/linux-build -DWAMR_BUILD_SDK_PROFILE=gui
|
|
[ $? -eq 0 ] || exit $?
|
|
$makewrap
|
|
[ $? -eq 0 ] || exit $?
|
|
cp wasm_runtime_wgl ${OUT_DIR}/
|
|
|
|
echo "##################### build littlevgl wasm runtime end#####################"
|
|
echo -e "\n\n"
|
|
|
|
|
|
echo "#####################build host-tool"
|
|
cd $BUILD_DIR
|
|
mkdir -p host-tool
|
|
cd host-tool
|
|
$cmakewrap ${WAMR_DIR}/test-tools/host-tool
|
|
$makewrap
|
|
if [ $? != 0 ];then
|
|
echo "BUILD_FAIL host tool exit as $?\n"
|
|
exit 2
|
|
fi
|
|
cp host_tool ${OUT_DIR}
|
|
echo "#####################build host-tool success"
|
|
echo -e "\n\n"
|
|
|
|
echo "##################### 3. build wasm ui app start#####################"
|
|
cd ${PROJECT_DIR}/wasm-apps/wgl
|
|
|
|
rm -rf build
|
|
mkdir build && cd build
|
|
$cmakewrap .. -DCMAKE_TOOLCHAIN_FILE=${WAMR_DIR}/wamr-sdk/out/gui/app-sdk/wamr_toolchain.cmake
|
|
$makewrap
|
|
[ $? -eq 0 ] || exit $?
|
|
mv ui_app.wasm ${OUT_DIR}/
|
|
|
|
# $makewrap
|
|
# mv ui_app.wasm ${OUT_DIR}/
|
|
|
|
cd ${PROJECT_DIR}/wasm-apps/lvgl-compatible
|
|
$makewrap
|
|
[ $? -eq 0 ] || exit $?
|
|
mv ui_app_lvgl_compatible.wasm ${OUT_DIR}/
|
|
echo "##################### build wasm ui app end#####################"
|