public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "gaoliming" <gaoliming@byosoft.com.cn>
To: "'Michael D Kinney'" <michael.d.kinney@intel.com>,
	<devel@edk2.groups.io>
Cc: "'Ard Biesheuvel'" <ardb+tianocore@kernel.org>,
	"'Jiewen Yao'" <jiewen.yao@intel.com>,
	"'Jordan Justen'" <jordan.l.justen@intel.com>,
	"'Gerd Hoffmann'" <kraxel@redhat.com>,
	"'Michael Kubacki'" <michael.kubacki@microsoft.com>,
	"'Jian J Wang'" <jian.j.wang@intel.com>,
	"'Maciej Rabeda'" <maciej.rabeda@linux.intel.com>,
	"'Jiaxin Wu'" <jiaxin.wu@intel.com>,
	"'Siyuan Fu'" <siyuan.fu@intel.com>,
	"'Leif Lindholm'" <leif@nuviainc.com>,
	"'Zhiguang Liu'" <zhiguang.liu@intel.com>
Subject: 回复: [Patch V2 0/7] Reproduce builds across source format changes
Date: Tue, 2 Nov 2021 10:31:22 +0800	[thread overview]
Message-ID: <006201d7cf91$b9e15980$2da40c80$@byosoft.com.cn> (raw)
In-Reply-To: <20211101213737.586-1-michael.d.kinney@intel.com>

Mike:
  Seemly, this change is for debug image build reproduce. But, if the fixed
value is used, they are not correct for the debug image. If so, can RELEASE
image be used for the binary comparison?

Thanks
Liming
> -----邮件原件-----
> 发件人: Michael D Kinney <michael.d.kinney@intel.com>
> 发送时间: 2021年11月2日 5:38
> 收件人: devel@edk2.groups.io
> 抄送: Ard Biesheuvel <ardb+tianocore@kernel.org>; Jiewen Yao
> <jiewen.yao@intel.com>; Jordan Justen <jordan.l.justen@intel.com>; Gerd
> Hoffmann <kraxel@redhat.com>; Michael Kubacki
> <michael.kubacki@microsoft.com>; Jian J Wang <jian.j.wang@intel.com>;
> Maciej Rabeda <maciej.rabeda@linux.intel.com>; Jiaxin Wu
> <jiaxin.wu@intel.com>; Siyuan Fu <siyuan.fu@intel.com>; Liming Gao
> <gaoliming@byosoft.com.cn>; Leif Lindholm <leif@nuviainc.com>; Zhiguang
> Liu <zhiguang.liu@intel.com>
> 主题: [Patch V2 0/7] Reproduce builds across source format changes
> 
> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3688
> 
> New in V2
> ------------
> * Split MdePkg DebugLib class enhancements out into its own commit
> * Address ECC failures
> * Align macro continuation marks in same column
> 
> This change is required to help verify that source code formatting
> changes such as the use of uncrustify and line ending corrections
> do not have any functional differences.  Source format changes may
> add or remove line endings that change the source file line numbers
> of C statements or may change the use of spaces in C expressions
> used in an ASSERT() statements.  These types of changes can impact
> the generated binaries when DEBUG() and ASSERT() macros are
> enabled.  The following set of changes adds 2 defines that can be used
> to override the use of `__LINE__` in DEBUG() macros and the use of
> #Expression in ASSERT() macros.
> 
> * Add DEBUG_LINE_NUMBER define to DebugLib.h that is
>   by default mapped to `__LINE__`.  A build can pre-define
>   DEBUG_LINE_NUMBER to use a fixed value.
> * Add DEBUG_EXPRESSION_STRING(Expression) macros to
>   DebugLib.h that is by default mapped to #Expression.
>   A build can define DEBUG_EXPRESSION_STRING_VALUE to
>   set all expression strings to a fixed string value.
> * Use DEBUG_LINE_NUMBER instead of `__LINE__`.
> * Use DEBUG_EXPRESSION_STRING instead of #Expression.
> 
> Submodules that use `__LINE__` are not updated.  These do not
> currently impact build reproducibility unless the debug features
> of those submodules are enabled.
> 
> The one exception is the UnitTestFrameworkPkg cmocka submodule
> that uses `__LINE__`.  This means that the binaries generated by host
> based unit tests that use cmocka features may not be identical across
> a source format change.
> 
> Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>
> Cc: Jiewen Yao <jiewen.yao@intel.com>
> Cc: Jordan Justen <jordan.l.justen@intel.com>
> Cc: Gerd Hoffmann <kraxel@redhat.com>
> Cc: Michael Kubacki <michael.kubacki@microsoft.com>
> Cc: Jian J Wang <jian.j.wang@intel.com>
> Cc: Maciej Rabeda <maciej.rabeda@linux.intel.com>
> Cc: Jiaxin Wu <jiaxin.wu@intel.com>
> Cc: Siyuan Fu <siyuan.fu@intel.com>
> Cc: Liming Gao <gaoliming@byosoft.com.cn>
> Cc: Leif Lindholm <leif@nuviainc.com>
> Cc: Zhiguang Liu <zhiguang.liu@intel.com>
> Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com>
> 
> Michael D Kinney (7):
>   MdePkg/Include: Enhance DebugLib to support reproduce builds
>   MdePkg: Reproduce builds across source format changes
>   ArmPkg: Reproduce builds across source format changes
>   MdeModulePkg: Reproduce builds across source format changes
>   NetworkPkg: Reproduce builds across source format changes
>   SecurityPkg: Reproduce builds across source format changes
>   OvmfPkg: Reproduce builds across source format changes
> 
>  .../ProcessorSubClassDxe/ProcessorSubClass.c  |  2 +-
>  .../Type00/MiscBiosVendorFunction.c           |  2 +-
>  .../Type01/MiscSystemManufacturerFunction.c   |  2 +-
>  .../MiscBaseBoardManufacturerFunction.c       |  2 +-
>  .../Type03/MiscChassisManufacturerFunction.c  |  2 +-
>  ...MiscNumberOfInstallableLanguagesFunction.c |  2 +-
>  .../Type32/MiscBootInformationFunction.c      |  2 +-
>  .../Bus/Pci/PciHostBridgeDxe/PciHostBridge.c  |  2 +-
>  .../UefiBootManagerLib/BmDriverHealth.c       |  2 +-
>  MdePkg/Include/Library/DebugLib.h             | 43
> +++++++++++++++--
>  MdePkg/Include/Library/UnitTestLib.h          | 46 +++++++++----------
>  MdePkg/Library/BaseLib/SafeString.c           |  2 +-
>  NetworkPkg/Include/Library/NetLib.h           |  8 ++--
>  NetworkPkg/Library/DxeNetLib/DxeNetLib.c      |  2 +-
>  OvmfPkg/Csm/LegacyBiosDxe/LegacyPci.c         |  6 +--
>  .../PlatformBootManagerLib/BdsPlatform.c      |  4 +-
>  .../PlatformBootManagerLibBhyve/BdsPlatform.c |  2 +-
>  .../PlatformBootManagerLibGrub/BdsPlatform.c  |  4 +-
>  .../Include/Library/TcgStorageCoreLib.h       | 26 +++++------
>  19 files changed, 98 insertions(+), 63 deletions(-)
> 
> --
> 2.32.0.windows.1




  parent reply	other threads:[~2021-11-02  2:31 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-01 21:37 [Patch V2 0/7] Reproduce builds across source format changes Michael D Kinney
2021-11-01 21:37 ` [Patch V2 1/7] MdePkg/Include: Enhance DebugLib to support reproduce builds Michael D Kinney
2021-11-02  2:12   ` 回复: " gaoliming
2021-11-02  7:05     ` [edk2-devel] " Michael D Kinney
2021-11-04  5:24       ` 回复: " gaoliming
2021-11-01 21:37 ` [Patch V2 2/7] MdePkg: Reproduce builds across source format changes Michael D Kinney
2021-11-01 21:37 ` [Patch V2 3/7] ArmPkg: " Michael D Kinney
2021-11-01 21:37 ` [Patch V2 4/7] MdeModulePkg: " Michael D Kinney
2021-11-01 21:37 ` [Patch V2 5/7] NetworkPkg: " Michael D Kinney
2021-11-08 17:09   ` [edk2-devel] " Maciej Rabeda
2021-11-01 21:37 ` [Patch V2 6/7] SecurityPkg: " Michael D Kinney
2021-11-02  0:14   ` Yao, Jiewen
2021-11-01 21:37 ` [Patch V2 7/7] OvmfPkg: " Michael D Kinney
2021-11-05  3:18   ` Yao, Jiewen
2021-11-02  2:31 ` gaoliming [this message]
2021-11-02  7:10   ` [Patch V2 0/7] " Michael D Kinney
2021-11-04  5:15     ` 回复: [edk2-devel] " gaoliming

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-list 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='006201d7cf91$b9e15980$2da40c80$@byosoft.com.cn' \
    --to=devel@edk2.groups.io \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox