99script_dir=$( cd -- " $( dirname -- " ${BASH_SOURCE[0]} " ) " & > /dev/null && pwd)
1010et_root_dir=$( cd ${script_dir} /../../.. && pwd)
1111et_root_dir=$( realpath ${et_root_dir} )
12- toolchain= arm- none-eabi-gcc
12+ toolchain_cmake= ${et_root_dir} /examples/ arm/ethos-u-setup/arm- none-eabi-gcc.cmake
1313setup_path_script=${et_root_dir} /examples/arm/ethos-u-scratch/setup_path.sh
1414_setup_msg=" please refer to ${et_root_dir} /examples/arm/setup.sh to properly install necessary tools."
1515
@@ -46,7 +46,6 @@ help() {
4646 echo " --output=<FOLDER> Output folder Default: <MODEL>/<MODEL>_<TARGET INFO>.pte"
4747 echo " --et_build_root=<FOLDER> Build output root folder to use, defaults to ${et_build_root} "
4848 echo " --ethosu_tools_dir=<FOLDER> Path to your Ethos-U tools dir if you not using default: ${ethosu_tools_dir} "
49- echo " --toolchain=<TOOLCHAIN> Toolchain can be specified (e.g. bare metal as arm-none-eabi-gcc or zephyr as arm-zephyr-eabi-gcc"
5049 exit 0
5150}
5251
@@ -64,15 +63,11 @@ for arg in "$@"; do
6463 --output=* ) output_folder=" ${arg#* =} " ; output_folder_set=true ;;
6564 --et_build_root=* ) et_build_root=" ${arg#* =} " ;;
6665 --ethosu_tools_dir=* ) ethosu_tools_dir=" ${arg#* =} " ;;
67- --toolchain=* ) toolchain=" ${arg#* =} " ;;
6866 * )
6967 ;;
7068 esac
7169done
7270
73- toolchain_cmake=${et_root_dir} /examples/arm/ethos-u-setup/${toolchain} .cmake
74- toolchain_cmake=$( realpath ${toolchain_cmake} )
75-
7671# Source the tools
7772# This should be prepared by the setup.sh
7873[[ -f ${setup_path_script} ]] \
121116 target_cpu=cortex-m85
122117fi
123118echo " --------------------------------------------------------------------------------"
124- echo " Build Arm ${toolchain / -gcc / } executor_runner for ${target} with ${pte_file} using ${system_config} ${memory_mode} ${extra_build_flags} to '${output_folder} /cmake-out'"
119+ echo " Build Arm Baremetal executor_runner for ${target} with ${pte_file} using ${system_config} ${memory_mode} ${extra_build_flags} to '${output_folder} /cmake-out'"
125120echo " --------------------------------------------------------------------------------"
126121
127122cd ${et_root_dir} /examples/arm/executor_runner
@@ -135,27 +130,7 @@ if [ "$build_with_etdump" = true ] ; then
135130fi
136131
137132echo " Building with BundleIO/etdump/extra flags: ${build_bundleio_flags} ${build_with_etdump_flags} ${extra_build_flags} "
138- echo " toolchain_cmake set to ${toolchain_cmake} "
139- echo " $( pwd) "
140133
141- echo "
142- cmake \
143- -DCMAKE_BUILD_TYPE=${build_type} \
144- -DCMAKE_TOOLCHAIN_FILE=${toolchain_cmake} \
145- -DTARGET_CPU=${target_cpu} \
146- -DET_DIR_PATH:PATH=${et_root_dir} \
147- -DET_BUILD_DIR_PATH:PATH=${et_build_dir} \
148- -DET_PTE_FILE_PATH:PATH=" ${pte_file} " \
149- -DETHOS_SDK_PATH:PATH=${ethos_u_root_dir} \
150- -DETHOSU_TARGET_NPU_CONFIG=${target} \
151- ${build_bundleio_flags} \
152- ${build_with_etdump_flags} \
153- -DPYTHON_EXECUTABLE=$( which python3) \
154- -DSYSTEM_CONFIG=${system_config} \
155- -DMEMORY_MODE=${memory_mode} \
156- ${extra_build_flags} \
157- -B ${output_folder} /cmake-out
158- "
159134cmake \
160135 -DCMAKE_BUILD_TYPE=${build_type} \
161136 -DCMAKE_TOOLCHAIN_FILE=${toolchain_cmake} \
@@ -177,8 +152,8 @@ echo "[${BASH_SOURCE[0]}] Configured CMAKE"
177152
178153cmake --build ${output_folder} /cmake-out -j$( nproc) -- arm_executor_runner
179154
180- echo " [${BASH_SOURCE[0]} ] Generated ${toolchain} elf file:"
155+ echo " [${BASH_SOURCE[0]} ] Generated baremetal elf file:"
181156find ${output_folder} /cmake-out -name " arm_executor_runner"
182- echo " executable_text: $( find ${output_folder} /cmake-out -name arm_executor_runner -exec ${toolchain / -gcc / - size} {} \; | grep -v filename | awk ' {print $1}' ) bytes"
183- echo " executable_data: $( find ${output_folder} /cmake-out -name arm_executor_runner -exec ${toolchain / -gcc / - size} {} \; | grep -v filename | awk ' {print $2}' ) bytes"
184- echo " executable_bss: $( find ${output_folder} /cmake-out -name arm_executor_runner -exec ${toolchain / -gcc / - size} {} \; | grep -v filename | awk ' {print $3}' ) bytes"
157+ echo " executable_text: $( find ${output_folder} /cmake-out -name arm_executor_runner -exec arm-none-eabi- size {} \; | grep -v filename | awk ' {print $1}' ) bytes"
158+ echo " executable_data: $( find ${output_folder} /cmake-out -name arm_executor_runner -exec arm-none-eabi- size {} \; | grep -v filename | awk ' {print $2}' ) bytes"
159+ echo " executable_bss: $( find ${output_folder} /cmake-out -name arm_executor_runner -exec arm-none-eabi- size {} \; | grep -v filename | awk ' {print $3}' ) bytes"
0 commit comments