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 | 26 +++++++++++++-------------
EmulatorPkg/Readme.md | 8 ++++----
EmulatorPkg/Win/VS2017/BuildVS.bat | 2 +-
EmulatorPkg/build.sh | 8 ++++----
4 files changed, 22 insertions(+), 22 deletions(-)
diff --git a/EmulatorPkg/EmulatorPkg.dsc b/EmulatorPkg/EmulatorPkg.dsc
index ea8b6ce76e..153da464f1 100644
--- a/EmulatorPkg/EmulatorPkg.dsc
+++ b/EmulatorPkg/EmulatorPkg.dsc
@@ -4,7 +4,7 @@
# The Emulation Platform can be used to debug individual modules, prior to creating
# a real platform. This also provides an example for how an DSC is created.
#
-# Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
+# Copyright (c) 2006 - 2019, Intel Corporation. All rights reserved.<BR>
# Portions copyright (c) 2010 - 2011, Apple Inc. All rights reserved.<BR>
#
# SPDX-License-Identifier: BSD-2-Clause-Patent
@@ -236,18 +236,18 @@ [PcdsDynamicHii.common.DEFAULT]
gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut|L"Timeout"|gEfiGlobalVariableGuid|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)
+ !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
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#45101): https://edk2.groups.io/g/devel/message/45101
Mute This Topic: https://groups.io/mt/32794935/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-
> -----Original Message-----
> From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf Of
> Michael D Kinney
> Sent: Thursday, August 08, 2019 10:26 AM
> To: devel@edk2.groups.io
> Cc: Justen, Jordan L; Andrew Fish; Ni, Ray
> Subject: [edk2-devel] [Patch V2 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 | 26 +++++++++++++-------------
> EmulatorPkg/Readme.md | 8 ++++----
> EmulatorPkg/Win/VS2017/BuildVS.bat | 2 +-
> EmulatorPkg/build.sh | 8 ++++----
> 4 files changed, 22 insertions(+), 22 deletions(-)
>
> diff --git a/EmulatorPkg/EmulatorPkg.dsc b/EmulatorPkg/EmulatorPkg.dsc
> index ea8b6ce76e..153da464f1 100644
> --- a/EmulatorPkg/EmulatorPkg.dsc
> +++ b/EmulatorPkg/EmulatorPkg.dsc
> @@ -4,7 +4,7 @@
> # The Emulation Platform can be used to debug individual modules, prior to
> creating
> # a real platform. This also provides an example for how an DSC is created.
> #
> -# Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
> +# Copyright (c) 2006 - 2019, Intel Corporation. All rights reserved.<BR>
> # Portions copyright (c) 2010 - 2011, Apple Inc. All rights reserved.<BR>
> #
> # SPDX-License-Identifier: BSD-2-Clause-Patent
> @@ -236,18 +236,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)
> + !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
Reviewed-by: Hao A Wu <hao.a.wu@intel.com>
Best Regards,
Hao Wu
> 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
>
>
>
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#45118): https://edk2.groups.io/g/devel/message/45118
Mute This Topic: https://groups.io/mt/32794935/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-
© 2016 - 2026 Red Hat, Inc.