summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoshua Watt <JPEWhacker@gmail.com>2019-02-20 15:08:52 -0600
committerJoshua Watt <JPEWhacker@gmail.com>2019-02-20 15:10:06 -0600
commit750706a3501ec9f5e3fa6dcbfb13a9027b6a875e (patch)
tree7403e3ea4130bdd423e1a8ed32e4ad4b320f9bb8
parent6ae8836b39d925b357934dd73562c319ad6200ac (diff)
classes/toolchain-scripts-mingw32: Fix bad cmd flag2.7_M3
The command to properly set the exit code at the end of the toolchain environment was using the correct flag delimiter '/', but the code to coerce all the unix-style paths to windows paths was incorrectly changing this to a '\'. This worked find in wines cmd, but on an actual Windows host, this caused cmd to wait indefinitely. Fix this by appending the command after the path separators are coerced. Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
-rw-r--r--classes/toolchain-scripts-mingw32.bbclass22
1 files changed, 11 insertions, 11 deletions
diff --git a/classes/toolchain-scripts-mingw32.bbclass b/classes/toolchain-scripts-mingw32.bbclass
index 32493d7..0afbf7d 100644
--- a/classes/toolchain-scripts-mingw32.bbclass
+++ b/classes/toolchain-scripts-mingw32.bbclass
@@ -38,6 +38,17 @@ toolchain_create_sdk_env_script_sdkmingw32 () {
# Change unix '/' to Win32 '\'
sed -e 's,/,\\,g' -i $script
+ # set has some annoying properties:
+ # 1) If it is successful %ERRORLEVEL% is unchanged (as opposed to being set
+ # to 0 to indicate success)
+ # 2) Making an assignment like "set A=" is considered an error and sets
+ # %ERRORLEVEL% to 1.
+ #
+ # Practically, this means that if any of the set calls make an empty
+ # assignment that error will be propagated. To prevent this, a command is
+ # run to ensure that the "exit code" of this script is 0
+ echo "@%COMSPEC% /C exit 0 > NUL" >> $script
+
# Make the file windows friendly...
awk 'sub("$", "\r")' $script > $script.new
mv $script.new $script
@@ -81,17 +92,6 @@ toolchain_shared_env_script_sdkmingw32 () {
FOR %%x IN (%OECORE_NATIVE_SYSROOT%\\environment-setup.d\\*.bat) DO call "%%x"
)
EOF
-
- # set has some annoying properties:
- # 1) If it is successful %ERRORLEVEL% is unchanged (as opposed to being set
- # to 0 to indicate success)
- # 2) Making an assignment like "set A=" is considered an error and sets
- # %ERRORLEVEL% to 1.
- #
- # Practically, this means that if any of the set calls make an empty
- # assignment that error will be propagated. To prevent this, a command is
- # run to ensure that the "exit code" of this script is 0
- echo "@%COMSPEC% /C exit 0 > NUL" >> $script
}
toolchain_create_sdk_siteconfig_append_sdkmingw32 () {