@@ -199,7 +199,7 @@ function check_options() {
199199function setup_root_dir() {
200200 mkdir -p ${root_dir}
201201 root_dir=$( realpath ${root_dir} )
202- setup_path_script=" ${root_dir} /setup_path.sh "
202+ setup_path_script=" ${root_dir} /setup_path"
203203}
204204
205205function check_fvp_eula () {
@@ -333,55 +333,68 @@ function setup_vela() {
333333 pip install ethos-u-vela@git+${vela_repo_url} @${vela_rev}
334334}
335335
336+ function prepend_env_in_setup_path() {
337+ echo " export $1 =$2 :\$ {$1 -}" >> ${setup_path_script} .sh
338+ echo " set --path -pgx $1 $2 " >> ${setup_path_script} .fish
339+ }
340+
341+ function append_env_in_setup_path() {
342+ echo " export $1 =\$ {$1 -}:$2 " >> ${setup_path_script} .sh
343+ echo " set --path -agx $1 $2 " >> ${setup_path_script} .fish
344+ }
345+
336346function create_setup_path(){
337347 cd " ${root_dir} "
338348
339- echo " " > " ${setup_path_script} "
349+ # Clear setup_path_script
350+ echo " " > " ${setup_path_script} .sh"
351+ echo " " > " ${setup_path_script} .fish"
340352
341353 if [[ " ${enable_fvps} " -eq 1 ]]; then
342354 fvps=(" corstone300" " corstone320" )
343355 for fvp in " ${fvps[@]} " ; do
344356 model_dir_variable=${fvp} _model_dir
345357 fvp_model_dir=${! model_dir_variable}
346358 fvp_bin_path=" ${root_dir} /FVP-${fvp} /models/${fvp_model_dir} "
347- echo " export PATH= \$ {PATH}: ${fvp_bin_path} " >> ${setup_path_script }
359+ append_env_in_setup_path PATH ${fvp_bin_path }
348360 done
349361
350362 # Fixup for Corstone-320 python dependency
351- echo " export LD_LIBRARY_PATH= ${root_dir} /FVP-corstone320/python/lib/" >> ${setup_path_script}
363+ append_env_in_setup_path LD_LIBRARY_PATH " ${root_dir} /FVP-corstone320/python/lib/"
352364
353- echo " hash FVP_Corstone_SSE-300_Ethos-U55" >> ${setup_path_script}
354- echo " hash FVP_Corstone_SSE-300_Ethos-U65" >> ${setup_path_script}
355- echo " hash FVP_Corstone_SSE-320" >> ${setup_path_script}
365+ echo " hash FVP_Corstone_SSE-300_Ethos-U55" >> ${setup_path_script} .sh
366+ echo " hash FVP_Corstone_SSE-300_Ethos-U65" >> ${setup_path_script} .sh
367+ echo " hash FVP_Corstone_SSE-320" >> ${setup_path_script} .sh
356368 fi
357369
358370 if [[ " ${enable_baremetal_toolchain} " -eq 1 ]]; then
359371 toolchain_bin_path=" $( cd ${toolchain_dir} /bin && pwd) "
360- echo " export PATH= \$ {PATH}: ${toolchain_bin_path} " >> ${setup_path_script }
372+ append_env_in_setup_path PATH ${toolchain_bin_path }
361373 fi
362374
363375 if [[ " ${enable_model_converter} " -eq 1 ]]; then
364376 cd " ${root_dir} "
365377 model_converter_bin_path=" $( cd ${mlsdk_manifest_dir} /sw/model-converter/build && pwd) "
366- echo " export PATH= \$ {PATH}: ${model_converter_bin_path} " >> ${setup_path_script }
378+ append_env_in_setup_path PATH ${model_converter_bin_path }
367379 fi
368380
369381 # Add Path for vgf-lib and emulation-layer
370382 if [[ " ${enable_vgf_lib} " -eq 1 ]]; then
371383 cd " ${root_dir} "
372384 model_vgf_path=" $( cd ${mlsdk_manifest_dir} /sw/vgf-lib/deploy && pwd) "
373- echo " export PATH= \$ {PATH}: ${ model_vgf_path} /bin" >> ${setup_path_script}
374- echo " export LD_LIBRARY_PATH= \$ {LD_LIBRARY_PATH-}: ${ model_vgf_path} /lib" >> ${setup_path_script}
375- echo " export DYLD_LIBRARY_PATH= \$ {DYLD_LIBRARY_PATH-}: ${ model_vgf_path} /lib" >> ${setup_path_script}
385+ append_env_in_setup_path PATH ${ model_vgf_path} /bin
386+ append_env_in_setup_path LD_LIBRARY_PATH " ${ model_vgf_path} /lib"
387+ append_env_in_setup_path DYLD_LIBRARY_PATH " ${ model_vgf_path} /lib"
376388 fi
377389
378390 if [[ " ${enable_emulation_layer} " -eq 1 ]]; then
379391 cd " ${root_dir} "
380392 model_emulation_layer_path=" $( cd ${mlsdk_manifest_dir} /sw/emulation-layer/ && pwd) "
381- echo " export LD_LIBRARY_PATH=${model_emulation_layer_path} /deploy/lib:\$ {LD_LIBRARY_PATH}" >> ${setup_path_script}
382- echo " export DYLD_LIBRARY_PATH=${model_emulation_layer_path} /deploy/lib:\$ {DYLD_LIBRARY_PATH-}" >> ${setup_path_script}
383- echo " export VK_INSTANCE_LAYERS=VK_LAYER_ML_Graph_Emulation:VK_LAYER_ML_Tensor_Emulation:\$ {VK_INSTANCE_LAYERS-}" >> ${setup_path_script}
384- echo " export VK_ADD_LAYER_PATH=${model_emulation_layer_path} /deploy/share/vulkan/explicit_layer.d:\$ {VK_ADD_LAYER_PATH-}" >> ${setup_path_script}
393+ prepend_env_in_setup_path LD_LIBRARY_PATH " ${model_emulation_layer_path} /deploy/lib"
394+ prepend_env_in_setup_path DYLD_LIBRARY_PATH " ${model_emulation_layer_path} /deploy/lib"
395+ prepend_env_in_setup_path VK_INSTANCE_LAYERS VK_LAYER_ML_Tensor_Emulation
396+ prepend_env_in_setup_path VK_INSTANCE_LAYERS VK_LAYER_ML_Graph_Emulation
397+ prepend_env_in_setup_path VK_ADD_LAYER_PATH " ${model_emulation_layer_path} /deploy/share/vulkan/explicit_layer.d"
385398 fi
386399}
387400
@@ -460,8 +473,8 @@ if [[ $is_script_sourced -eq 0 ]]; then
460473 setup_vela
461474 fi
462475
463- echo " [main] update path by doing 'source ${setup_path_script} '"
464-
476+ echo " [main] Update path by running 'source ${setup_path_script} .sh '"
477+ hash fish 2> /dev/null && echo >&2 " [main] Or for fish shell use 'source ${setup_path_script} .fish' "
465478 echo " [main] success!"
466479 exit 0
467480fi
0 commit comments