Reviewed-by: [email protected]

> -----Original Message-----
> From: Chiu, Chasel
> Sent: Monday, October 8, 2018 4:11 PM
> To: [email protected]
> Cc: Yao, Jiewen <[email protected]>; Gao, Liming
> <[email protected]>; Zhu, Yonghong <[email protected]>; Chiu,
> Chasel <[email protected]>
> Subject: [PATCH V2] IntelFsp2Pkg/GenCfgOpt.py: Support PCD input from
> command line
> 
> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1231
> 
> Build system already support override PCD value by command
> line so add this support to GenCfgOpt.py
> Also update revision to 0.53
> 
> Test: Verified UPD header files generated can reflect different
>       PCD values from --pcd build command input
> 
> Cc: Jiewen Yao <[email protected]>
> Cc: Gao Liming <[email protected]>
> Cc: Zhu Yonghong <[email protected]>
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Chasel Chiu <[email protected]>
> ---
>  IntelFsp2Pkg/Tools/GenCfgOpt.py | 17 ++++++++++++++++-
>  1 file changed, 16 insertions(+), 1 deletion(-)
> 
> diff --git a/IntelFsp2Pkg/Tools/GenCfgOpt.py
> b/IntelFsp2Pkg/Tools/GenCfgOpt.py
> index 059cfcb7e4..15d33582ef 100644
> --- a/IntelFsp2Pkg/Tools/GenCfgOpt.py
> +++ b/IntelFsp2Pkg/Tools/GenCfgOpt.py
> @@ -88,6 +88,8 @@ are permitted provided that the following conditions
> are met:
>  **/
>  """
> 
> +BuildOptionPcd = []
> +
>  class CLogicalExpression:
>      def __init__(self):
>          self.index    = 0
> @@ -561,6 +563,12 @@ EndList
>                      self._PcdsDict[Match.group(1)] = Match.group(2)
>                      if self.Debug:
>                          print "INFO : PCD %s = [ %s ]" %
> (Match.group(1), Match.group(2))
> +                    i = 0
> +                    while i < len(BuildOptionPcd):
> +                        Match = re.match("\s*([\w\.]+)\s*\=\s*(\w+)",
> BuildOptionPcd[i])
> +                        if Match:
> +                            self._PcdsDict[Match.group(1)] =
> Match.group(2)
> +                        i += 1
>              else:
>                  Match = re.match("^\s*#\s+(!BSF|@Bsf|!HDR)\s+(.+)",
> DscLine)
>                  if Match:
> @@ -1462,7 +1470,7 @@ EndList
> 
> 
>  def Usage():
> -    print "GenCfgOpt Version 0.52"
> +    print "GenCfgOpt Version 0.53"
>      print "Usage:"
>      print "    GenCfgOpt  UPDTXT  PlatformDscFile BuildFvDir
> [-D Macros]"
>      print "    GenCfgOpt  HEADER  PlatformDscFile BuildFvDir
> InputHFile     [-D Macros]"
> @@ -1472,7 +1480,14 @@ def Main():
>      #
>      # Parse the options and args
>      #
> +    i = 1
> +
>      GenCfgOpt = CGenCfgOpt()
> +    while i < len(sys.argv):
> +        if sys.argv[i].strip().lower() == "--pcd":
> +            BuildOptionPcd.append(sys.argv[i+1])
> +            i += 1
> +        i += 1
>      argc = len(sys.argv)
>      if argc < 4:
>          Usage()
> --
> 2.13.3.windows.1

_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to