| add_custom_target( |
| prep ALL |
| COMMAND |
| ${CMAKE_COMMAND} -E env ${TARGET_PREP_ENVS} |
| SGX_UNTRUSTED_CFLAGS=${STR_SGX_UNTRUSTED_CFLAGS} |
| SGX_TRUSTED_CFLAGS=${STR_SGX_TRUSTED_CFLAGS} ${MT_SCRIPT_DIR}/prep.sh) |
| |
| add_custom_target( |
| format |
| COMMAND rustup component add rustfmt --toolchain ${RUSTUP_TOOLCHAIN} |
| COMMAND |
| RUSTUP_TOOLCHAIN=${RUSTUP_TOOLCHAIN} find ${TEACLAVE_PROJECT_ROOT} -path |
| ${TEACLAVE_PROJECT_ROOT}/third_party -prune -o -path |
| ${TEACLAVE_PROJECT_ROOT}/.git -prune -o -path ${TEACLAVE_BUILD_ROOT} -prune |
| -o -name "*.rs" -exec rustfmt {} + |
| COMMENT "Formating every .rs file" |
| DEPENDS prep) |
| |
| add_custom_target( |
| check |
| COMMAND rustup component add rustfmt --toolchain ${RUSTUP_TOOLCHAIN} |
| COMMAND |
| RUSTUP_TOOLCHAIN=${RUSTUP_TOOLCHAIN} find ${TEACLAVE_PROJECT_ROOT} -path |
| ${TEACLAVE_PROJECT_ROOT}/third_party -prune -o -path |
| ${TEACLAVE_PROJECT_ROOT}/.git -prune -o -path ${TEACLAVE_BUILD_ROOT} -prune |
| -o -name "*.rs" -exec rustfmt --check {} + |
| COMMENT "Checking the format of every .rs file" |
| DEPENDS prep) |
| |
| if(TEST_MODE) |
| add_custom_target(run-tests COMMAND ${TEACLAVE_COMMON_ENVS} |
| ${MT_SCRIPT_DIR}/test.sh) |
| add_custom_target(run-unit-tests COMMAND ${TEACLAVE_COMMON_ENVS} |
| ${MT_SCRIPT_DIR}/test.sh unit) |
| add_custom_target( |
| run-integration-tests COMMAND ${TEACLAVE_COMMON_ENVS} |
| ${MT_SCRIPT_DIR}/test.sh integration) |
| add_custom_target( |
| run-functional-tests COMMAND ${TEACLAVE_COMMON_ENVS} |
| ${MT_SCRIPT_DIR}/test.sh functional) |
| else() |
| add_custom_target( |
| run-test |
| COMMAND |
| echo |
| "Note: Testing is not enabled in this build. Run cmake again with -DTEST_MODE=ON" |
| ) |
| endif() |
| |
| add_custom_target(cov COMMAND ${TEACLAVE_COMMON_ENVS} |
| ${MT_SCRIPT_DIR}/gen_cov.sh) |
| |
| add_custom_target( |
| cov-clean |
| COMMAND rm -rf ${TEACLAVE_OUT_DIR}/*.info ${TEACLAVE_OUT_DIR}/cov_* cov.info |
| cov_report |
| COMMAND find . -name *.gcda -exec rm {} "\;" |
| WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}) |
| |
| # add folders for "clean" target |
| set_property( |
| DIRECTORY |
| PROPERTY ADDITIONAL_MAKE_CLEAN_FILES "${TEACLAVE_INSTALL_DIR}" |
| "${TEACLAVE_OUT_DIR}" "${TEACLAVE_TARGET_DIR}" |
| "${PROJECT_BINARY_DIR}/cmake_tomls") |
| |
| # doc target |
| add_custom_target( |
| doc |
| COMMAND |
| cd ${PROJECT_BINARY_DIR}/cmake_tomls/unix_app && ${TEACLAVE_COMMON_ENVS} |
| cargo doc --all ${CARGO_BUILD_FLAGS} ${MTEE_EXTRA_CARGO_FLAGS} && cp -RT |
| ${PROJECT_BINARY_DIR}/cmake_tomls/unix_app/target/doc |
| ${TEACLAVE_DOC_INSTALL_DIR} |
| DEPENDS prep) |
| |
| # clippy target |
| add_custom_target(clippy COMMAND make CLP=1 all) |
| |
| gen_convenience_targets() |