From: "Wu, Hao A" <hao.a.wu@intel.com>
To: "Kinney, Michael D" <michael.d.kinney@intel.com>,
"devel@edk2.groups.io" <devel@edk2.groups.io>
Cc: "Justen, Jordan L" <jordan.l.justen@intel.com>,
Andrew Fish <afish@apple.com>, "Ni, Ray" <ray.ni@intel.com>
Subject: Re: [edk2-devel] [Patch 2/3] EmulatorPkg: Remove UNIX_SEC_BUILD/WIN_SEC_BUILD
Date: Wed, 7 Aug 2019 07:59:45 +0000 [thread overview]
Message-ID: <B80AF82E9BFB8E4FBD8C89DA810C6A093C916EAB@SHSMSX104.ccr.corp.intel.com> (raw)
In-Reply-To: <E92EE9817A31E24EB0585FDF735412F5B9D849E4@ORSMSX113.amr.corp.intel.com>
> -----Original Message-----
> From: Kinney, Michael D
> Sent: Wednesday, August 07, 2019 3:45 PM
> To: Wu, Hao A; devel@edk2.groups.io; Kinney, Michael D
> Cc: Justen, Jordan L; Andrew Fish; Ni, Ray
> Subject: RE: [edk2-devel] [Patch 2/3] EmulatorPkg: Remove
> UNIX_SEC_BUILD/WIN_SEC_BUILD
>
> Hao Wu,
>
> I put the arch check in on purpose because more
> CPU archs might be added in the future.
Got it. I agree.
Please keep my RB tag in the previous reply.
Best Regards,
Hao Wu
>
> Mike
>
> > -----Original Message-----
> > From: Wu, Hao A
> > Sent: Tuesday, August 6, 2019 11:42 PM
> > To: devel@edk2.groups.io; Kinney, Michael D
> > <michael.d.kinney@intel.com>
> > Cc: Justen, Jordan L <jordan.l.justen@intel.com>;
> > Andrew Fish <afish@apple.com>; Ni, Ray
> > <ray.ni@intel.com>
> > Subject: RE: [edk2-devel] [Patch 2/3] EmulatorPkg:
> > Remove UNIX_SEC_BUILD/WIN_SEC_BUILD
> >
> > > -----Original Message-----
> > > From: devel@edk2.groups.io
> > [mailto:devel@edk2.groups.io] On Behalf Of
> > > Michael D Kinney
> > > Sent: Wednesday, August 07, 2019 12:20 PM
> > > To: devel@edk2.groups.io
> > > Cc: Justen, Jordan L; Andrew Fish; Ni, Ray
> > > Subject: [edk2-devel] [Patch 2/3] EmulatorPkg: Remove
> > > UNIX_SEC_BUILD/WIN_SEC_BUILD
> > >
> > > https://bugzilla.tianocore.org/show_bug.cgi?id=2055
> > >
> > > Remove the use of the defines UNIX_SEC_BUILD and
> > WIN_SEC_BUILD. This
> > > simplifies the build command for the EmulatorPkg.
> > Instead, use !if
> > > statements in the DSC file using (ARCH) and $(FAMILY)
> > to determine if
> > > the build is for a Windows or POSIX environment.
> > >
> > > The Readme.md, BAT, and sh files are also updated to
> > remove the use of
> > > these defines.
> > >
> > > Cc: Jordan Justen <jordan.l.justen@intel.com>
> > > Cc: Andrew Fish <afish@apple.com>
> > > Cc: Ray Ni <ray.ni@intel.com>
> > > Signed-off-by: Michael D Kinney
> > <michael.d.kinney@intel.com>
> > > ---
> > > EmulatorPkg/EmulatorPkg.dsc | 24
> > ++++++++++++------------
> > > EmulatorPkg/Readme.md | 8 ++++----
> > > EmulatorPkg/Win/VS2017/BuildVS.bat | 2 +-
> > > EmulatorPkg/build.sh | 8 ++++----
> > > 4 files changed, 21 insertions(+), 21 deletions(-)
> > >
> > > diff --git a/EmulatorPkg/EmulatorPkg.dsc
> > b/EmulatorPkg/EmulatorPkg.dsc
> > > index c4ec10d1d8..c9e4a5b34d 100644
> > > --- a/EmulatorPkg/EmulatorPkg.dsc
> > > +++ b/EmulatorPkg/EmulatorPkg.dsc
> > > @@ -240,18 +240,18 @@ [PcdsDynamicHii.common.DEFAULT]
> > >
> > >
> > gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut|L"Timeo
> > ut"|gEfiGlo
> > > balVariableGuid|0x0|10
> > >
> > > [Components]
> > > -!ifdef $(UNIX_SEC_BUILD)
> > > - ##
> > > - # Emulator, OS POSIX application
> > > - ##
> > > - EmulatorPkg/Unix/Host/Host.inf
> > > -!endif
> > > -
> > > -!ifdef $(WIN_SEC_BUILD)
> > > - ##
> > > - # Emulator, OS WIN application
> > > - ##
> > > - EmulatorPkg/Win/Host/WinHost.inf
> > > +!if "IA32" in $(ARCH) || "X64" in $(ARCH)
> >
> >
> > Just a thought, the only supported architectures within
> > EmulatorPkg.dsc are IA32 and X64 at this moment. Do you
> > think we can omit the arch check here?
> >
> > Anyway, the patch looks good to me:
> > Reviewed-by: Hao A Wu <hao.a.wu@intel.com>
> >
> > Best Regards,
> > Hao Wu
> >
> >
> > > + !if "MSFT" in $(FAMILY)
> > > + ##
> > > + # Emulator, OS WIN application
> > > + ##
> > > + EmulatorPkg/Win/Host/WinHost.inf
> > > + !else
> > > + ##
> > > + # Emulator, OS POSIX application
> > > + ##
> > > + EmulatorPkg/Unix/Host/Host.inf
> > > + !endif
> > > !endif
> > >
> > > !ifndef $(SKIP_MAIN_BUILD)
> > > diff --git a/EmulatorPkg/Readme.md
> > b/EmulatorPkg/Readme.md index
> > > 461975e859..5ea61ca7ab 100644
> > > --- a/EmulatorPkg/Readme.md
> > > +++ b/EmulatorPkg/Readme.md
> > > @@ -21,19 +21,19 @@
> > >
> > https://github.com/tianocore/tianocore.github.io/wiki/E
> > mulatorPkg
> > > **You can use the following command to build.**
> > > * 32bit emulator in Windows:
> > >
> > > - `build -p EmulatorPkg\EmulatorPkg.dsc -t VS2017
> > -D WIN_SEC_BUILD -a
> > > IA32`
> > > + `build -p EmulatorPkg\EmulatorPkg.dsc -t VS2017
> > -a IA32`
> > >
> > > * 64bit emulator in Windows:
> > >
> > > - `build -p EmulatorPkg\EmulatorPkg.dsc -t VS2017
> > -D WIN_SEC_BUILD -a
> > > X64`
> > > + `build -p EmulatorPkg\EmulatorPkg.dsc -t VS2017
> > -a X64`
> > >
> > > * 32bit emulator in Linux:
> > >
> > > - `build -p EmulatorPkg\EmulatorPkg.dsc -t GCC5 -D
> > UNIX_SEC_BUILD -a
> > > IA32`
> > > + `build -p EmulatorPkg\EmulatorPkg.dsc -t GCC5 -a
> > IA32`
> > >
> > > * 64bit emulator in Linux:
> > >
> > > - `build -p EmulatorPkg\EmulatorPkg.dsc -t GCC5 -D
> > UNIX_SEC_BUILD -a
> > > X64`
> > > + `build -p EmulatorPkg\EmulatorPkg.dsc -t GCC5 -a
> > X64`
> > >
> > > **You can start/run the emulator using the following
> > command:**
> > > * 32bit emulator in Windows:
> > > diff --git a/EmulatorPkg/Win/VS2017/BuildVS.bat
> > > b/EmulatorPkg/Win/VS2017/BuildVS.bat
> > > index 83aebc77dc..6fcf40cc0a 100644
> > > --- a/EmulatorPkg/Win/VS2017/BuildVS.bat
> > > +++ b/EmulatorPkg/Win/VS2017/BuildVS.bat
> > > @@ -1,3 +1,3 @@
> > > cd ../../../
> > > @call edksetup.bat
> > > -build -p EmulatorPkg\EmulatorPkg.dsc -t VS2017 -D
> > WIN_SEC_BUILD %*
> > > +build -p EmulatorPkg\EmulatorPkg.dsc -t VS2017 %*
> > > diff --git a/EmulatorPkg/build.sh
> > b/EmulatorPkg/build.sh index
> > > 2dab035ed5..60056e1b6c 100755
> > > --- a/EmulatorPkg/build.sh
> > > +++ b/EmulatorPkg/build.sh
> > > @@ -233,13 +233,13 @@ fi
> > >
> > > case $CLEAN_TYPE in
> > > clean)
> > > - build -p $WORKSPACE/EmulatorPkg/EmulatorPkg.dsc
> > -a $PROCESSOR -b
> > > $BUILDTARGET -t $HOST_TOOLS -D UNIX_SEC_BUILD -n 3
> > clean
> > > + build -p $WORKSPACE/EmulatorPkg/EmulatorPkg.dsc
> > -a $PROCESSOR -b
> > > $BUILDTARGET -t $HOST_TOOLS -n 3 clean
> > > build -p $WORKSPACE/EmulatorPkg/EmulatorPkg.dsc
> > -a $PROCESSOR -b
> > > $BUILDTARGET -t $TARGET_TOOLS -n 3 clean
> > > exit $?
> > > ;;
> > > cleanall)
> > > make -C $WORKSPACE/BaseTools clean
> > > - build -p $WORKSPACE/EmulatorPkg/EmulatorPkg.dsc
> > -a $PROCESSOR -b
> > > $BUILDTARGET -t $HOST_TOOLS -D UNIX_SEC_BUILD -n 3
> > clean
> > > + build -p $WORKSPACE/EmulatorPkg/EmulatorPkg.dsc
> > -a $PROCESSOR -b
> > > $BUILDTARGET -t $HOST_TOOLS -n 3 clean
> > > build -p $WORKSPACE/EmulatorPkg/EmulatorPkg.dsc
> > -a $PROCESSOR -b
> > > $BUILDTARGET -t $TARGET_TOOLS -n 3 clean
> > > build -p $WORKSPACE/ShellPkg/ShellPkg.dsc -a
> > IA32 -b $BUILDTARGET
> > > -t $TARGET_TOOLS -n 3 clean
> > > exit $?
> > > @@ -251,9 +251,9 @@ esac
> > > # Build the edk2 EmulatorPkg
> > > #
> > > if [[ $HOST_TOOLS == $TARGET_TOOLS ]]; then
> > > - build -p $WORKSPACE/EmulatorPkg/EmulatorPkg.dsc
> > $BUILD_OPTIONS -a
> > > $PROCESSOR -b $BUILDTARGET -t $TARGET_TOOLS -D
> > BUILD_$ARCH_SIZE -D
> > > UNIX_SEC_BUILD $NETWORK_SUPPORT $BUILD_NEW_SHELL
> > $BUILD_FAT -n
> > > 3
> > > + build -p $WORKSPACE/EmulatorPkg/EmulatorPkg.dsc
> > $BUILD_OPTIONS -a
> > > $PROCESSOR -b $BUILDTARGET -t $TARGET_TOOLS -D
> > BUILD_$ARCH_SIZE
> > > $NETWORK_SUPPORT $BUILD_NEW_SHELL $BUILD_FAT -n 3
> > else
> > > - build -p $WORKSPACE/EmulatorPkg/EmulatorPkg.dsc
> > $BUILD_OPTIONS -a
> > > $PROCESSOR -b $BUILDTARGET -t $HOST_TOOLS -D
> > BUILD_$ARCH_SIZE -D
> > > UNIX_SEC_BUILD -D SKIP_MAIN_BUILD -n 3 modules
> > > + build -p $WORKSPACE/EmulatorPkg/EmulatorPkg.dsc
> > $BUILD_OPTIONS -a
> > > $PROCESSOR -b $BUILDTARGET -t $HOST_TOOLS -D
> > BUILD_$ARCH_SIZE -D
> > > SKIP_MAIN_BUILD -n 3 modules
> > > build -p $WORKSPACE/EmulatorPkg/EmulatorPkg.dsc
> > $BUILD_OPTIONS -a
> > > $PROCESSOR -b $BUILDTARGET -t $TARGET_TOOLS -D
> > BUILD_$ARCH_SIZE
> > > $NETWORK_SUPPORT $BUILD_NEW_SHELL $BUILD_FAT -n 3
> > > cp
> > >
> > "$BUILD_OUTPUT_DIR/${BUILDTARGET}_$HOST_TOOLS/$PROCESSO
> > R/Host"
> > > $BUILD_ROOT_ARCH
> > > fi
> > > --
> > > 2.21.0.windows.1
> > >
> > >
> > >
next prev parent reply other threads:[~2019-08-07 8:05 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-08-07 4:20 [Patch 0/3] EmulatorPkg: Fix VS20xx IA32 boot and simplify build config Michael D Kinney
2019-08-07 4:20 ` [Patch 1/3] EmulatorPkg: Fix VS20xx IA32 boot failure Michael D Kinney
2019-08-07 6:18 ` [edk2-devel] " Wu, Hao A
2019-08-07 7:42 ` Michael D Kinney
2019-08-07 8:15 ` Wu, Hao A
2019-08-07 15:52 ` Michael D Kinney
2019-08-08 2:27 ` Michael D Kinney
2019-08-07 4:20 ` [Patch 2/3] EmulatorPkg: Remove UNIX_SEC_BUILD/WIN_SEC_BUILD Michael D Kinney
2019-08-07 6:41 ` [edk2-devel] " Wu, Hao A
2019-08-07 7:45 ` Michael D Kinney
2019-08-07 7:59 ` Wu, Hao A [this message]
2019-08-08 2:28 ` Michael D Kinney
2019-08-07 4:20 ` [Patch 3/3] EmulatorPkg: Add -D DISABLE_NEW_DEPRECATED_INTERFACES Michael D Kinney
2019-08-07 7:58 ` [edk2-devel] " Wu, Hao A
2019-08-08 2:31 ` Michael D Kinney
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=B80AF82E9BFB8E4FBD8C89DA810C6A093C916EAB@SHSMSX104.ccr.corp.intel.com \
--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