[edk2] [PATCH] BaseTools/BuildEnv: override "set -C" (noclobber) in sourcing shell env

Laszlo Ersek posted 1 patch 7 years, 2 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/edk2 tags/patchew/20171017211234.13730-1-lersek@redhat.com
BaseTools/BuildEnv | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[edk2] [PATCH] BaseTools/BuildEnv: override "set -C" (noclobber) in sourcing shell env
Posted by Laszlo Ersek 7 years, 2 months ago
The BuildEnv utility is sourced (executed by the user's interactive shell)
when the user sets up the build session. Some users like to set -C
(noclobber) for some additional safety in their shells, which trips up
BuildEnv. Update the redirection operator so that it overrides noclobber.

Cc: Liming Gao <liming.gao@intel.com>
Cc: Thomas Huth <thuth@redhat.com>
Cc: Yonghong Zhu <yonghong.zhu@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---

Notes:
    Repo:   https://github.com/lersek/edk2.git
    Branch: buildenv_clobber

 BaseTools/BuildEnv | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/BaseTools/BuildEnv b/BaseTools/BuildEnv
index f74881111c8e..ff0c5115a5e1 100755
--- a/BaseTools/BuildEnv
+++ b/BaseTools/BuildEnv
@@ -90,7 +90,7 @@ StoreCurrentConfiguration() {
   #
   OUTPUT_FILE=$CONF_PATH/BuildEnv.sh
   #echo Storing current configuration into $OUTPUT_FILE
-  echo "# Auto-generated by ${BASH_SOURCE[0]}" > $OUTPUT_FILE
+  echo "# Auto-generated by ${BASH_SOURCE[0]}" >| $OUTPUT_FILE
   GenerateShellCodeToSetVariable WORKSPACE $OUTPUT_FILE
   GenerateShellCodeToSetVariable EDK_TOOLS_PATH $OUTPUT_FILE
   GenerateShellCodeToUpdatePath $OUTPUT_FILE
-- 
2.14.1.3.gb7cf6e02401b

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH] BaseTools/BuildEnv: override "set -C" (noclobber) in sourcing shell env
Posted by Gao, Liming 7 years, 2 months ago
Reviewed-by: Liming Gao <liming.gao@intel.com>

>-----Original Message-----
>From: Laszlo Ersek [mailto:lersek@redhat.com]
>Sent: Wednesday, October 18, 2017 5:13 AM
>To: edk2-devel-01 <edk2-devel@lists.01.org>
>Cc: Gao, Liming <liming.gao@intel.com>; Thomas Huth <thuth@redhat.com>;
>Zhu, Yonghong <yonghong.zhu@intel.com>
>Subject: [PATCH] BaseTools/BuildEnv: override "set -C" (noclobber) in
>sourcing shell env
>
>The BuildEnv utility is sourced (executed by the user's interactive shell)
>when the user sets up the build session. Some users like to set -C
>(noclobber) for some additional safety in their shells, which trips up
>BuildEnv. Update the redirection operator so that it overrides noclobber.
>
>Cc: Liming Gao <liming.gao@intel.com>
>Cc: Thomas Huth <thuth@redhat.com>
>Cc: Yonghong Zhu <yonghong.zhu@intel.com>
>Contributed-under: TianoCore Contribution Agreement 1.1
>Signed-off-by: Laszlo Ersek <lersek@redhat.com>
>---
>
>Notes:
>    Repo:   https://github.com/lersek/edk2.git
>    Branch: buildenv_clobber
>
> BaseTools/BuildEnv | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
>diff --git a/BaseTools/BuildEnv b/BaseTools/BuildEnv
>index f74881111c8e..ff0c5115a5e1 100755
>--- a/BaseTools/BuildEnv
>+++ b/BaseTools/BuildEnv
>@@ -90,7 +90,7 @@ StoreCurrentConfiguration() {
>   #
>   OUTPUT_FILE=$CONF_PATH/BuildEnv.sh
>   #echo Storing current configuration into $OUTPUT_FILE
>-  echo "# Auto-generated by ${BASH_SOURCE[0]}" > $OUTPUT_FILE
>+  echo "# Auto-generated by ${BASH_SOURCE[0]}" >| $OUTPUT_FILE
>   GenerateShellCodeToSetVariable WORKSPACE $OUTPUT_FILE
>   GenerateShellCodeToSetVariable EDK_TOOLS_PATH $OUTPUT_FILE
>   GenerateShellCodeToUpdatePath $OUTPUT_FILE
>--
>2.14.1.3.gb7cf6e02401b

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH] BaseTools/BuildEnv: override "set -C" (noclobber) in sourcing shell env
Posted by Laszlo Ersek 7 years, 2 months ago
On 10/17/17 23:12, Laszlo Ersek wrote:
> The BuildEnv utility is sourced (executed by the user's interactive shell)
> when the user sets up the build session. Some users like to set -C
> (noclobber) for some additional safety in their shells, which trips up
> BuildEnv. Update the redirection operator so that it overrides noclobber.
> 
> Cc: Liming Gao <liming.gao@intel.com>
> Cc: Thomas Huth <thuth@redhat.com>
> Cc: Yonghong Zhu <yonghong.zhu@intel.com>
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Laszlo Ersek <lersek@redhat.com>
> ---
> 
> Notes:
>     Repo:   https://github.com/lersek/edk2.git
>     Branch: buildenv_clobber
> 
>  BaseTools/BuildEnv | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/BaseTools/BuildEnv b/BaseTools/BuildEnv
> index f74881111c8e..ff0c5115a5e1 100755
> --- a/BaseTools/BuildEnv
> +++ b/BaseTools/BuildEnv
> @@ -90,7 +90,7 @@ StoreCurrentConfiguration() {
>    #
>    OUTPUT_FILE=$CONF_PATH/BuildEnv.sh
>    #echo Storing current configuration into $OUTPUT_FILE
> -  echo "# Auto-generated by ${BASH_SOURCE[0]}" > $OUTPUT_FILE
> +  echo "# Auto-generated by ${BASH_SOURCE[0]}" >| $OUTPUT_FILE
>    GenerateShellCodeToSetVariable WORKSPACE $OUTPUT_FILE
>    GenerateShellCodeToSetVariable EDK_TOOLS_PATH $OUTPUT_FILE
>    GenerateShellCodeToUpdatePath $OUTPUT_FILE
> 

Thank you all for the reviews, patch pushed as commit 4bbf39632c84.

Laszlo
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel