All of lore.kernel.org
 help / color / mirror / Atom feed
From: Joshua Watt <jpewhacker@gmail.com>
To: yocto@yoctoproject.org
Subject: [meta-mingw][PATCH] classes/toolchain-scripts-mingw32: Fix bad cmd flag
Date: Wed, 20 Feb 2019 15:34:34 -0600	[thread overview]
Message-ID: <20190220213434.26014-1-JPEWhacker@gmail.com> (raw)

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>
---
 classes/toolchain-scripts-mingw32.bbclass | 22 +++++++++++-----------
 1 file 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 () {
-- 
2.20.1



             reply	other threads:[~2019-02-20 21:34 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-02-20 21:34 Joshua Watt [this message]
2019-02-21 11:29 ` [meta-mingw][PATCH] classes/toolchain-scripts-mingw32: Fix bad cmd flag Burton, Ross

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190220213434.26014-1-JPEWhacker@gmail.com \
    --to=jpewhacker@gmail.com \
    --cc=yocto@yoctoproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.