This project contains code of the Aos core application for zephyr OS.
Zephyr SDK is required to fetch and build this project. Follow Getting Started Guide to install mentioned dependencies and SDK.
Install protobuf compiler from pre-compiled binaries: https://grpc.io/docs/protoc-installation/#install-pre-compiled-binaries-any-os. The verified protobuf compiler version is v22.3: https://github.com/protocolbuffers/protobuf/releases/tag/v22.3.
Use zephyr west
tool to fetch required repos:
west init -m https://github.com/aoscloud/aos_core_zephyr --mr main aos_zephyr_sdk
cd aos_zephyr_sdk
west update
west zephyr-export
cd aos_core_zephyr
west build -b ${BOARD} -p auto
west build -t fix_dtb
west build -t run
For test and debug purpose native_posix_64
or native_posix
board can be used.
For simulation qemu_x86
or qemu_x86_64
board can be used.
For xen based system xenvm-qemu
board can be used.
west build -t run
Unit tests are implemented using zephyr Test Framework.
Use the following commands to run the application unit tests:
../zephyr/scripts/twister -c -v -T tests
All test reports will be saved in twister-out
folder.
Use the following command to calculate unit tests code coverage:
../zephyr/scripts/twister -c -v --coverage --coverage-basedir src/ --coverage-tool gcovr -p unit_testing -T tests
Open twister-out/coverage/index.html
with your browser to see the code coverage result.
To see summary:
gcovr twister-out/unit_testing -f src/