[edk2] [Patch] BaseTools:Override the MAKE_FLAGS by BuildOptions in DSC

Yonghong Zhu posted 1 patch 6 years, 10 months ago
Failed in applying to current master (apply log)
BaseTools/Source/Python/AutoGen/AutoGen.py | 7 +++++++
1 file changed, 7 insertions(+)
[edk2] [Patch] BaseTools:Override the MAKE_FLAGS by BuildOptions in DSC
Posted by Yonghong Zhu 6 years, 10 months ago
The issue that *_*_*_MAKE_FLAGS doesn't work in DSC [BuildOptions]
section. It means MAKE flags can't be set in platform DSC file.

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com>
---
 BaseTools/Source/Python/AutoGen/AutoGen.py | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/BaseTools/Source/Python/AutoGen/AutoGen.py b/BaseTools/Source/Python/AutoGen/AutoGen.py
index 405bfa1..1787dec 100644
--- a/BaseTools/Source/Python/AutoGen/AutoGen.py
+++ b/BaseTools/Source/Python/AutoGen/AutoGen.py
@@ -1905,10 +1905,17 @@ class PlatformAutoGen(AutoGen):
                 self._BuildCommand += SplitOption(self.ToolDefinition["MAKE"]["PATH"])
                 if "FLAGS" in self.ToolDefinition["MAKE"]:
                     NewOption = self.ToolDefinition["MAKE"]["FLAGS"].strip()
                     if NewOption != '':
                         self._BuildCommand += SplitOption(NewOption)
+                if "MAKE" in self.EdkIIBuildOption:
+                    if "FLAGS" in self.EdkIIBuildOption["MAKE"]:
+                        Flags = self.EdkIIBuildOption["MAKE"]["FLAGS"]
+                        if Flags.startswith('='):
+                            self._BuildCommand = [self._BuildCommand[0]] + [Flags[1:]]
+                        else:
+                            self._BuildCommand += [Flags]
         return self._BuildCommand
 
     ## Get tool chain definition
     #
     #  Get each tool defition for given tool chain from tools_def.txt and platform
-- 
2.6.1.windows.1

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [Patch] BaseTools:Override the MAKE_FLAGS by BuildOptions in DSC
Posted by Gao, Liming 6 years, 9 months ago
Reviewed-by: Liming Gao <liming.gao@intel.com>

> -----Original Message-----
> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of Yonghong Zhu
> Sent: Saturday, February 24, 2018 9:54 PM
> To: edk2-devel@lists.01.org
> Subject: [edk2] [Patch] BaseTools:Override the MAKE_FLAGS by BuildOptions in DSC
> 
> The issue that *_*_*_MAKE_FLAGS doesn't work in DSC [BuildOptions]
> section. It means MAKE flags can't be set in platform DSC file.
> 
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com>
> ---
>  BaseTools/Source/Python/AutoGen/AutoGen.py | 7 +++++++
>  1 file changed, 7 insertions(+)
> 
> diff --git a/BaseTools/Source/Python/AutoGen/AutoGen.py b/BaseTools/Source/Python/AutoGen/AutoGen.py
> index 405bfa1..1787dec 100644
> --- a/BaseTools/Source/Python/AutoGen/AutoGen.py
> +++ b/BaseTools/Source/Python/AutoGen/AutoGen.py
> @@ -1905,10 +1905,17 @@ class PlatformAutoGen(AutoGen):
>                  self._BuildCommand += SplitOption(self.ToolDefinition["MAKE"]["PATH"])
>                  if "FLAGS" in self.ToolDefinition["MAKE"]:
>                      NewOption = self.ToolDefinition["MAKE"]["FLAGS"].strip()
>                      if NewOption != '':
>                          self._BuildCommand += SplitOption(NewOption)
> +                if "MAKE" in self.EdkIIBuildOption:
> +                    if "FLAGS" in self.EdkIIBuildOption["MAKE"]:
> +                        Flags = self.EdkIIBuildOption["MAKE"]["FLAGS"]
> +                        if Flags.startswith('='):
> +                            self._BuildCommand = [self._BuildCommand[0]] + [Flags[1:]]
> +                        else:
> +                            self._BuildCommand += [Flags]
>          return self._BuildCommand
> 
>      ## Get tool chain definition
>      #
>      #  Get each tool defition for given tool chain from tools_def.txt and platform
> --
> 2.6.1.windows.1
> 
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.01.org
> https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel