From: "Wu, Hao A" <hao.a.wu@intel.com>
To: "devel@edk2.groups.io" <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
Date: Wed, 7 Aug 2019 06:41:41 +0000 [thread overview]
Message-ID: <B80AF82E9BFB8E4FBD8C89DA810C6A093C916E17@SHSMSX104.ccr.corp.intel.com> (raw)
In-Reply-To: <20190807042028.21988-3-michael.d.kinney@intel.com>
> -----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"Timeout"|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/EmulatorPkg
> **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/$PROCESSOR/Host"
> $BUILD_ROOT_ARCH
> fi
> --
> 2.21.0.windows.1
>
>
>
next prev parent reply other threads:[~2019-08-07 6:41 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 ` Wu, Hao A [this message]
2019-08-07 7:45 ` [edk2-devel] " Michael D Kinney
2019-08-07 7:59 ` Wu, Hao A
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=B80AF82E9BFB8E4FBD8C89DA810C6A093C916E17@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