@@ -48,28 +48,34 @@ if [ -d ${DOWNLOADED_CMSIS_PATH} ]; then
48
48
echo >&2 " ${DOWNLOADED_CMSIS_PATH} already exists, skipping the download."
49
49
else
50
50
51
+ # Create a temporary directory with the unique name for better isolation
52
+ TEMP_DIR=$( mktemp -d /tmp/$( basename $0 .sh) .XXXXXX)
53
+
54
+ # Set up cleanup trap for all exit conditions
55
+ trap ' rm -rf "${TEMP_DIR}"' EXIT INT TERM
56
+
51
57
ZIP_PREFIX=" 5782d6f8057906d360f4b95ec08a2354afe5c9b9"
52
58
CMSIS_URL=" http://github.com/ARM-software/CMSIS_6/archive/${ZIP_PREFIX} .zip"
53
59
CMSIS_MD5=" 563e7c6465f63bdc034359e9b536b366"
54
60
55
61
# wget is much faster than git clone of the entire repo. So we wget a specific
56
62
# version and can then apply a patch, as needed.
57
- wget ${CMSIS_URL} -O /tmp /${ZIP_PREFIX} .zip >&2
58
- check_md5 /tmp /${ZIP_PREFIX} .zip ${CMSIS_MD5}
63
+ wget ${CMSIS_URL} -O ${TEMP_DIR} /${ZIP_PREFIX} .zip >&2
64
+ check_md5 ${TEMP_DIR} /${ZIP_PREFIX} .zip ${CMSIS_MD5}
59
65
60
- unzip -qo /tmp/ ${ZIP_PREFIX} .zip -d /tmp >&2
61
- mv /tmp /CMSIS_6-${ZIP_PREFIX} ${DOWNLOADED_CMSIS_PATH}
66
+ unzip -qo ${TEMP_DIR} / ${ZIP_PREFIX} .zip -d ${TEMP_DIR} >&2
67
+ mv ${TEMP_DIR} /CMSIS_6-${ZIP_PREFIX} ${DOWNLOADED_CMSIS_PATH}
62
68
63
69
# Also pull the related CMSIS Cortex_DFP component for generic Arm Cortex-M device support
64
70
ZIP_PREFIX=" c2c70a97a20fb355815e2ead3d4a40e35a4a3cdf"
65
71
CMSIS_DFP_URL=" http://github.com/ARM-software/Cortex_DFP/archive/${ZIP_PREFIX} .zip"
66
72
CMSIS_DFP_MD5=" 3cbb6955b6d093a2fe078ef2341f6b89"
67
73
68
- wget ${CMSIS_DFP_URL} -O /tmp /${ZIP_PREFIX} .zip >&2
69
- check_md5 /tmp /${ZIP_PREFIX} .zip ${CMSIS_DFP_MD5}
74
+ wget ${CMSIS_DFP_URL} -O ${TEMP_DIR} /${ZIP_PREFIX} .zip >&2
75
+ check_md5 ${TEMP_DIR} /${ZIP_PREFIX} .zip ${CMSIS_DFP_MD5}
70
76
71
- unzip -qo /tmp/ ${ZIP_PREFIX} .zip -d /tmp >&2
72
- mv /tmp /Cortex_DFP-${ZIP_PREFIX} ${DOWNLOADED_CORTEX_DFP_PATH}
77
+ unzip -qo ${TEMP_DIR} / ${ZIP_PREFIX} .zip -d ${TEMP_DIR} >&2
78
+ mv ${TEMP_DIR} /Cortex_DFP-${ZIP_PREFIX} ${DOWNLOADED_CORTEX_DFP_PATH}
73
79
74
80
fi
75
81
0 commit comments