Re: [edk2-devel] 回复: [Patch 1/1] BaseTools/Source/C: Use /Z7 instead of /Zi for host tools

Michael D Kinney michael.d.kinney at intel.com
Mon Nov 7 07:20:30 UTC 2022


Hi Liming,

That seems like a bigger change.  

I see no harm in always producing symbols when build C host tools.

Mike

> -----Original Message-----
> From: devel at edk2.groups.io <devel at edk2.groups.io> On Behalf Of gaoliming via groups.io
> Sent: Sunday, November 6, 2022 8:23 PM
> To: Kinney, Michael D <michael.d.kinney at intel.com>; devel at edk2.groups.io
> Cc: Feng, Bob C <bob.c.feng at intel.com>; Chen, Christine <yuwei.chen at intel.com>
> Subject: [edk2-devel] 回复: [Patch 1/1] BaseTools/Source/C: Use /Z7 instead of /Zi for host tools
> 
> Mike:
>   I suggest to remove /Zi and /DEBUG option for BaseTools C tool generation,
> because only tool developer may require the debug version C tool.
> 
> Thanks
> Liming
> > -----邮件原件-----
> > 发件人: Michael D Kinney <michael.d.kinney at intel.com>
> > 发送时间: 2022年11月6日 4:36
> > 收件人: devel at edk2.groups.io
> > 抄送: Bob Feng <bob.c.feng at intel.com>; Liming Gao
> > <gaoliming at byosoft.com.cn>; Yuwei Chen <yuwei.chen at intel.com>
> > 主题: [Patch 1/1] BaseTools/Source/C: Use /Z7 instead of /Zi for host
> tools
> >
> > REF:https://bugzilla.tianocore.org/show_bug.cgi?id=4139
> >
> > Update ms.common and *.mak files to use /Z7 instead of /Zi to embed
> > symbol information in obj files for host tools built with VS compilers.
> > This prevents vcxxx.pdb files from being generated in the root of
> > the local edk2 repository or in BaseTools directories.
> >
> > Cc: Bob Feng <bob.c.feng at intel.com>
> > Cc: Liming Gao <gaoliming at byosoft.com.cn>
> > Cc: Yuwei Chen <yuwei.chen at intel.com>
> > Signed-off-by: Michael D Kinney <michael.d.kinney at intel.com>
> > ---
> >  BaseTools/Source/C/Makefiles/ms.common                 | 5 ++---
> >  BaseTools/Source/C/VfrCompile/Pccts/antlr/AntlrDDK.mak | 4 ++--
> >  BaseTools/Source/C/VfrCompile/Pccts/antlr/AntlrMS.mak  | 6 +++---
> >  BaseTools/Source/C/VfrCompile/Pccts/dlg/DlgDDK.mak     | 4 ++--
> >  BaseTools/Source/C/VfrCompile/Pccts/dlg/DlgMS.mak      | 7 +++----
> >  5 files changed, 12 insertions(+), 14 deletions(-)
> >
> > diff --git a/BaseTools/Source/C/Makefiles/ms.common
> > b/BaseTools/Source/C/Makefiles/ms.common
> > index b2dbcf376c04..8391f10d5dd2 100644
> > --- a/BaseTools/Source/C/Makefiles/ms.common
> > +++ b/BaseTools/Source/C/Makefiles/ms.common
> > @@ -57,6 +57,5 @@ LINKER = $(LD)
> >
> >  INC = $(INC) -I . -I $(SOURCE_PATH)\Include -I $(ARCH_INCLUDE) -I
> > $(SOURCE_PATH)\Common
> >
> > -CFLAGS = $(CFLAGS) /nologo /Zi /c /O2 /MT /W4 /WX /D
> > _CRT_SECURE_NO_DEPRECATE /D _CRT_NONSTDC_NO_DEPRECATE
> > -CPPFLAGS = $(CPPFLAGS) /EHsc /nologo /Zi /c /O2 /MT /D
> > _CRT_SECURE_NO_DEPRECATE /D _CRT_NONSTDC_NO_DEPRECATE
> > -
> > +CFLAGS = $(CFLAGS) /nologo /Z7 /c /O2 /MT /W4 /WX /D
> > _CRT_SECURE_NO_DEPRECATE /D _CRT_NONSTDC_NO_DEPRECATE
> > +CPPFLAGS = $(CPPFLAGS) /EHsc /nologo /Z7 /c /O2 /MT /D
> > _CRT_SECURE_NO_DEPRECATE /D _CRT_NONSTDC_NO_DEPRECATE
> > diff --git a/BaseTools/Source/C/VfrCompile/Pccts/antlr/AntlrDDK.mak
> > b/BaseTools/Source/C/VfrCompile/Pccts/antlr/AntlrDDK.mak
> > index 71b7c6b0b141..cde91a47159e 100644
> > --- a/BaseTools/Source/C/VfrCompile/Pccts/antlr/AntlrDDK.mak
> > +++ b/BaseTools/Source/C/VfrCompile/Pccts/antlr/AntlrDDK.mak
> > @@ -16,7 +16,7 @@ SET=$(PCCTS_HOME)\support\set
> >  # Compiler stuff
> >  CC = cl
> >  CFLAGS = /nologo -I "." -I "$(PCCTS_H)" -I "$(SET)" -D "USER_ZZSYN" -D
> "PC"
> > \
> > -        -D "ZZLEXBUFSIZE=65536"  -D "LONGFILENAMES" /Zi /W3
> > -D__USE_PROTOS /wd4700
> > +        -D "ZZLEXBUFSIZE=65536"  -D "LONGFILENAMES" /Z7 /W3
> > -D__USE_PROTOS /wd4700
> >
> >  ANTLR_OBJS = antlr.obj scan.obj err.obj bits.obj build.obj fset2.obj \
> >              fset.obj gen.obj globals.obj hash.obj lex.obj main.obj \
> > @@ -225,7 +225,7 @@ set.obj: $(SET)\set.c \
> >
> >      $(CC) -c $(CFLAGS) $(SET)\set.c
> >
> > -clean:
> > +clean:
> >      del *.obj
> >
> >  distclean:
> > diff --git a/BaseTools/Source/C/VfrCompile/Pccts/antlr/AntlrMS.mak
> > b/BaseTools/Source/C/VfrCompile/Pccts/antlr/AntlrMS.mak
> > index b30a73bb7424..6fc4d5c15d6c 100644
> > --- a/BaseTools/Source/C/VfrCompile/Pccts/antlr/AntlrMS.mak
> > +++ b/BaseTools/Source/C/VfrCompile/Pccts/antlr/AntlrMS.mak
> > @@ -16,8 +16,8 @@ SET=$(PCCTS_HOME)\support\set
> >  # Compiler stuff
> >  CC = cl
> >  CFLAGS = /nologo -I "." -I "$(PCCTS_H)" -I "$(SET)" -D "USER_ZZSYN" -D
> "PC"
> > \
> > -        -D "ZZLEXBUFSIZE=65536"  /D "LONGFILENAMES" /Zi /W3
> > -D__USE_PROTOS /wd4700 \
> > -         /D _CRT_SECURE_NO_DEPRECATE /D
> > _CRT_NONSTDC_NO_DEPRECATE
> > +        -D "ZZLEXBUFSIZE=65536"  /D "LONGFILENAMES" /Z7 /W3
> > -D__USE_PROTOS /wd4700 \
> > +         /D _CRT_SECURE_NO_DEPRECATE /D
> > _CRT_NONSTDC_NO_DEPRECATE
> >
> >  ANTLR_OBJS = antlr.obj scan.obj err.obj bits.obj build.obj fset2.obj \
> >              fset.obj gen.obj globals.obj hash.obj lex.obj main.obj \
> > @@ -226,7 +226,7 @@ set.obj: $(SET)\set.c \
> >
> >      $(CC) -c $(CFLAGS) $(SET)\set.c
> >
> > -clean:
> > +clean:
> >      -del *.obj
> >      -del *.ilk
> >      -del *.pdb
> > diff --git a/BaseTools/Source/C/VfrCompile/Pccts/dlg/DlgDDK.mak
> > b/BaseTools/Source/C/VfrCompile/Pccts/dlg/DlgDDK.mak
> > index 156d524acc94..dcc259543c4c 100644
> > --- a/BaseTools/Source/C/VfrCompile/Pccts/dlg/DlgDDK.mak
> > +++ b/BaseTools/Source/C/VfrCompile/Pccts/dlg/DlgDDK.mak
> > @@ -16,7 +16,7 @@ SET=$(PCCTS_HOME)\support\set
> >  # Compiler stuff
> >  CC = cl
> >  CFLAGS = /nologo -I "." -I "$(PCCTS_H)" -I "$(SET)" -D "USER_ZZSYN" -D
> "PC"
> > \
> > -        -D "ZZLEXBUFSIZE=65536"  /D "LONGFILENAMES" /W3 /Zi
> > +        -D "ZZLEXBUFSIZE=65536"  /D "LONGFILENAMES" /W3 /Z7
> >
> >  DLG_OBJS = dlg_p.obj dlg_a.obj main.obj err.obj support.obj \
> >             output.obj relabel.obj automata.obj
> > @@ -113,7 +113,7 @@ set.obj: $(SET)\set.c \
> >
> >      $(CC) -c $(CFLAGS) $(SET)\set.c
> >
> > -clean:
> > +clean:
> >      del *.obj
> >
> >  distclean:
> > diff --git a/BaseTools/Source/C/VfrCompile/Pccts/dlg/DlgMS.mak
> > b/BaseTools/Source/C/VfrCompile/Pccts/dlg/DlgMS.mak
> > index 2714308d4fa0..c2cac00f53df 100644
> > --- a/BaseTools/Source/C/VfrCompile/Pccts/dlg/DlgMS.mak
> > +++ b/BaseTools/Source/C/VfrCompile/Pccts/dlg/DlgMS.mak
> > @@ -16,8 +16,8 @@ SET=$(PCCTS_HOME)\support\set
> >  # Compiler stuff
> >  CC = cl
> >  CFLAGS = /nologo -I "." -I "$(PCCTS_H)" -I "$(SET)" -D "USER_ZZSYN" -D
> "PC"
> > \
> > -        -D "ZZLEXBUFSIZE=65536"  /D "LONGFILENAMES" /W3 /Zi \
> > -        /D _CRT_SECURE_NO_DEPRECATE /D
> > _CRT_NONSTDC_NO_DEPRECATE
> > +        -D "ZZLEXBUFSIZE=65536"  /D "LONGFILENAMES" /W3 /Z7 \
> > +        /D _CRT_SECURE_NO_DEPRECATE /D
> > _CRT_NONSTDC_NO_DEPRECATE
> >
> >  DLG_OBJS = dlg_p.obj dlg_a.obj main.obj err.obj support.obj \
> >             output.obj relabel.obj automata.obj
> > @@ -112,7 +112,7 @@ set.obj: $(SET)\set.c \
> >
> >      $(CC) -c $(CFLAGS) $(SET)\set.c
> >
> > -clean:
> > +clean:
> >      -del *.obj
> >      -del *.ilk
> >      -del *.pdb
> > @@ -123,4 +123,3 @@ cleanall:
> >      -del *.pdb
> >  		-del *.exe
> >      -del $(EDK_TOOLS_PATH)\Bin\Win32\dlg.exe
> > -
> > --
> > 2.37.1.windows.1
> 
> 
> 
> 
> 
> 
> 



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#96021): https://edk2.groups.io/g/devel/message/96021
Mute This Topic: https://groups.io/mt/94860007/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-




More information about the edk2-devel-archive mailing list