* [PATCH v1 0/1] BaseTools/tools_def: Add WINGCC49 support @ 2018-06-19 23:26 Chris Co 2018-06-19 23:26 ` [PATCH v1 1/1] " Chris Co 0 siblings, 1 reply; 5+ messages in thread From: Chris Co @ 2018-06-19 23:26 UTC (permalink / raw) To: edk2-devel@lists.01.org; +Cc: Yonghong Zhu, Liming Gao, Leif Lindholm REF: https://github.com/christopherco/edk2/tree/wingcc_build This patch adds a build option for invoking GCC49 ARM cross compiler in the Windows environment to build firmware for Windows 10 IoT devices using NXP i.MX6 and i.MX7 SoCs. In addition, this build option targets the Microsoft ASL compiler instead of iasl. The Microsoft ASL compiler is necessary to expose Windows-specific Pin Function Config Descriptors on Windows IoT devices. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Christopher Co <christopher.co@microsoft.com> Cc: Yonghong Zhu <yonghong.zhu@intel.com> Cc: Liming Gao <liming.gao@intel.com> Cc: Leif Lindholm <leif.lindholm@linaro.org> Chris Co (1): BaseTools/tools_def: Add WINGCC49 support BaseTools/Conf/tools_def.template | 55 ++++++++++++++++++++ 1 file changed, 55 insertions(+) -- 2.7.4 ^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH v1 1/1] BaseTools/tools_def: Add WINGCC49 support 2018-06-19 23:26 [PATCH v1 0/1] BaseTools/tools_def: Add WINGCC49 support Chris Co @ 2018-06-19 23:26 ` Chris Co 2018-06-21 4:55 ` Gao, Liming 0 siblings, 1 reply; 5+ messages in thread From: Chris Co @ 2018-06-19 23:26 UTC (permalink / raw) To: edk2-devel@lists.01.org; +Cc: Yonghong Zhu, Liming Gao, Leif Lindholm From: Chris Co <chrco@microsoft.com> This patch adds a build option for invoking GCC49 ARM cross compiler in the Windows environment to build firmware for Windows 10 IoT devices using NXP i.MX6 and i.MX7 SoCs. In addition, this build option targets the Microsoft ASL compiler instead of iasl. The Microsoft ASL compiler is necessary to expose Windows-specific Pin Function Config Descriptors on Windows IoT devices. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Christopher Co <christopher.co@microsoft.com> Cc: Yonghong Zhu <yonghong.zhu@intel.com> Cc: Liming Gao <liming.gao@intel.com> Cc: Leif Lindholm <leif.lindholm@linaro.org> --- BaseTools/Conf/tools_def.template | 55 ++++++++++++++++++++ 1 file changed, 55 insertions(+) diff --git a/BaseTools/Conf/tools_def.template b/BaseTools/Conf/tools_def.template index 11a79029b890..192732a677af 100755 --- a/BaseTools/Conf/tools_def.template +++ b/BaseTools/Conf/tools_def.template @@ -5468,6 +5468,61 @@ RELEASE_GCC49_AARCH64_DLINK_FLAGS = DEF(GCC49_AARCH64_DLINK_FLAGS) #################################################################################### # +# WINGCC 4.9 - This configuration is used to compile under Windows to produce +# PE/COFF binaries using GCC 4.9. +# +#################################################################################### +*_WINGCC49_*_*_FAMILY = GCC + +*_WINGCC49_*_MAKE_PATH = DEF(GCC_HOST_PREFIX)make +*_WINGCC49_*_*_DLL = ENV(GCC49_DLL) +*_WINGCC49_*_ASL_PATH = asl.exe + +*_WINGCC49_*_PP_FLAGS = DEF(GCC_PP_FLAGS) +*_WINGCC49_*_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) +*_WINGCC49_*_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) +*_WINGCC49_*_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) +*_WINGCC49_*_APP_FLAGS = +*_WINGCC49_*_ASL_FLAGS = /MsftInternal +*_WINGCC49_*_ASL_OUTFLAGS = DEF(MS_ASL_OUTFLAGS) + +################## +# WINGCC49 ARM definitions +################## +*_WINGCC49_ARM_OBJCOPY_PATH = noop +*_WINGCC49_ARM_CC_PATH = ENV(WINGCC49_ARM_PREFIX)gcc +*_WINGCC49_ARM_SLINK_PATH = ENV(WINGCC49_ARM_PREFIX)ar +*_WINGCC49_ARM_DLINK_PATH = ENV(WINGCC49_ARM_PREFIX)gcc +*_WINGCC49_ARM_ASLDLINK_PATH = ENV(WINGCC49_ARM_PREFIX)gcc +*_WINGCC49_ARM_ASM_PATH = ENV(WINGCC49_ARM_PREFIX)gcc +*_WINGCC49_ARM_PP_PATH = ENV(WINGCC49_ARM_PREFIX)gcc +*_WINGCC49_ARM_VFRPP_PATH = ENV(WINGCC49_ARM_PREFIX)gcc +*_WINGCC49_ARM_ASLCC_PATH = ENV(WINGCC49_ARM_PREFIX)gcc +*_WINGCC49_ARM_ASLPP_PATH = ENV(WINGCC49_ARM_PREFIX)gcc +*_WINGCC49_ARM_RC_PATH = ENV(WINGCC49_ARM_PREFIX)objcopy +*_WINGCC49_ARM_SYMRENAME_PATH = noop + +*_WINGCC49_ARM_ARCHCC_FLAGS = -mthumb +*_WINGCC49_ARM_PLATFORM_FLAGS = -march=armv7-a + +*_WINGCC49_ARM_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) +*_WINGCC49_ARM_ASLDLINK_FLAGS = DEF(GCC49_ARM_ASLDLINK_FLAGS) +*_WINGCC49_ARM_ASM_FLAGS = DEF(GCC49_ARM_ASM_FLAGS) +*_WINGCC49_ARM_DLINK_FLAGS = DEF(GCC49_ARM_DLINK_FLAGS) +*_WINGCC49_ARM_DLINK2_FLAGS = DEF(GCC49_ARM_DLINK2_FLAGS) +*_WINGCC49_ARM_DTCPP_FLAGS = DEF(GCC_DTCPP_FLAGS) +*_WINGCC49_ARM_PLATFORM_FLAGS = -march=armv7-a +*_WINGCC49_ARM_PP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_PP_FLAGS) +*_WINGCC49_ARM_RC_FLAGS = DEF(GCC_ARM_RC_FLAGS) +*_WINGCC49_ARM_VFRPP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_VFRPP_FLAGS) +*_WINGCC49_ARM_CC_XIPFLAGS = DEF(GCC49_ARM_CC_XIPFLAGS) + + DEBUG_WINGCC49_ARM_CC_FLAGS = DEF(GCC49_ARM_CC_FLAGS) -O0 +RELEASE_WINGCC49_ARM_CC_FLAGS = DEF(GCC49_ARM_CC_FLAGS) -Wno-unused-but-set-variable -Wno-unused-const-variable + NOOPT_WINGCC49_ARM_CC_FLAGS = DEF(GCC49_ARM_CC_FLAGS) -O0 + +#################################################################################### +# # GCC 5 - This configuration is used to compile under Linux to produce # PE/COFF binaries using GCC 5 # -- 2.7.4 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH v1 1/1] BaseTools/tools_def: Add WINGCC49 support 2018-06-19 23:26 ` [PATCH v1 1/1] " Chris Co @ 2018-06-21 4:55 ` Gao, Liming 2018-06-22 1:28 ` Chris Co 0 siblings, 1 reply; 5+ messages in thread From: Gao, Liming @ 2018-06-21 4:55 UTC (permalink / raw) To: Chris Co, edk2-devel@lists.01.org; +Cc: Zhu, Yonghong, Leif Lindholm Chris: I suggest to name this tool chain as GCC49xASL and align to other ASL tool chain, such as VS2015xASL. And, ASL_PATH can be set to DEF(WIN_ASL_BIN). WINGCC49_ARM_PREFIX is not required. GCC49_ARM_PREFIX can still be used. Besides, please add this tool chain introduction in file header, like VS2015xASL. Then, other people can know how to set up the environment and use this tool chain. Thanks Liming >-----Original Message----- >From: Chris Co [mailto:Christopher.Co@microsoft.com] >Sent: Wednesday, June 20, 2018 7:27 AM >To: edk2-devel@lists.01.org >Cc: Zhu, Yonghong <yonghong.zhu@intel.com>; Gao, Liming ><liming.gao@intel.com>; Leif Lindholm <leif.lindholm@linaro.org> >Subject: [PATCH v1 1/1] BaseTools/tools_def: Add WINGCC49 support > >From: Chris Co <chrco@microsoft.com> > >This patch adds a build option for invoking GCC49 ARM cross >compiler in the Windows environment to build firmware for >Windows 10 IoT devices using NXP i.MX6 and i.MX7 SoCs. > >In addition, this build option targets the Microsoft ASL >compiler instead of iasl. The Microsoft ASL compiler is >necessary to expose Windows-specific Pin Function Config >Descriptors on Windows IoT devices. > >Contributed-under: TianoCore Contribution Agreement 1.1 >Signed-off-by: Christopher Co <christopher.co@microsoft.com> >Cc: Yonghong Zhu <yonghong.zhu@intel.com> >Cc: Liming Gao <liming.gao@intel.com> >Cc: Leif Lindholm <leif.lindholm@linaro.org> >--- > BaseTools/Conf/tools_def.template | 55 ++++++++++++++++++++ > 1 file changed, 55 insertions(+) > >diff --git a/BaseTools/Conf/tools_def.template >b/BaseTools/Conf/tools_def.template >index 11a79029b890..192732a677af 100755 >--- a/BaseTools/Conf/tools_def.template >+++ b/BaseTools/Conf/tools_def.template >@@ -5468,6 +5468,61 @@ RELEASE_GCC49_AARCH64_DLINK_FLAGS = >DEF(GCC49_AARCH64_DLINK_FLAGS) > > >########################################################### >######################### > # >+# WINGCC 4.9 - This configuration is used to compile under Windows to >produce >+# PE/COFF binaries using GCC 4.9. >+# >+########################################################## >########################## >+*_WINGCC49_*_*_FAMILY = GCC >+ >+*_WINGCC49_*_MAKE_PATH = DEF(GCC_HOST_PREFIX)make >+*_WINGCC49_*_*_DLL = ENV(GCC49_DLL) >+*_WINGCC49_*_ASL_PATH = asl.exe >+ >+*_WINGCC49_*_PP_FLAGS = DEF(GCC_PP_FLAGS) >+*_WINGCC49_*_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) >+*_WINGCC49_*_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) >+*_WINGCC49_*_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) >+*_WINGCC49_*_APP_FLAGS = >+*_WINGCC49_*_ASL_FLAGS = /MsftInternal >+*_WINGCC49_*_ASL_OUTFLAGS = DEF(MS_ASL_OUTFLAGS) >+ >+################## >+# WINGCC49 ARM definitions >+################## >+*_WINGCC49_ARM_OBJCOPY_PATH = noop >+*_WINGCC49_ARM_CC_PATH = ENV(WINGCC49_ARM_PREFIX)gcc >+*_WINGCC49_ARM_SLINK_PATH = ENV(WINGCC49_ARM_PREFIX)ar >+*_WINGCC49_ARM_DLINK_PATH = ENV(WINGCC49_ARM_PREFIX)gcc >+*_WINGCC49_ARM_ASLDLINK_PATH = >ENV(WINGCC49_ARM_PREFIX)gcc >+*_WINGCC49_ARM_ASM_PATH = ENV(WINGCC49_ARM_PREFIX)gcc >+*_WINGCC49_ARM_PP_PATH = ENV(WINGCC49_ARM_PREFIX)gcc >+*_WINGCC49_ARM_VFRPP_PATH = ENV(WINGCC49_ARM_PREFIX)gcc >+*_WINGCC49_ARM_ASLCC_PATH = ENV(WINGCC49_ARM_PREFIX)gcc >+*_WINGCC49_ARM_ASLPP_PATH = ENV(WINGCC49_ARM_PREFIX)gcc >+*_WINGCC49_ARM_RC_PATH = >ENV(WINGCC49_ARM_PREFIX)objcopy >+*_WINGCC49_ARM_SYMRENAME_PATH = noop >+ >+*_WINGCC49_ARM_ARCHCC_FLAGS = -mthumb >+*_WINGCC49_ARM_PLATFORM_FLAGS = -march=armv7-a >+ >+*_WINGCC49_ARM_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) >+*_WINGCC49_ARM_ASLDLINK_FLAGS = >DEF(GCC49_ARM_ASLDLINK_FLAGS) >+*_WINGCC49_ARM_ASM_FLAGS = DEF(GCC49_ARM_ASM_FLAGS) >+*_WINGCC49_ARM_DLINK_FLAGS = DEF(GCC49_ARM_DLINK_FLAGS) >+*_WINGCC49_ARM_DLINK2_FLAGS = DEF(GCC49_ARM_DLINK2_FLAGS) >+*_WINGCC49_ARM_DTCPP_FLAGS = DEF(GCC_DTCPP_FLAGS) >+*_WINGCC49_ARM_PLATFORM_FLAGS = -march=armv7-a >+*_WINGCC49_ARM_PP_FLAGS = $(ARCHCC_FLAGS) >$(PLATFORM_FLAGS) DEF(GCC_PP_FLAGS) >+*_WINGCC49_ARM_RC_FLAGS = DEF(GCC_ARM_RC_FLAGS) >+*_WINGCC49_ARM_VFRPP_FLAGS = $(ARCHCC_FLAGS) >$(PLATFORM_FLAGS) DEF(GCC_VFRPP_FLAGS) >+*_WINGCC49_ARM_CC_XIPFLAGS = DEF(GCC49_ARM_CC_XIPFLAGS) >+ >+ DEBUG_WINGCC49_ARM_CC_FLAGS = DEF(GCC49_ARM_CC_FLAGS) - >O0 >+RELEASE_WINGCC49_ARM_CC_FLAGS = DEF(GCC49_ARM_CC_FLAGS) - >Wno-unused-but-set-variable -Wno-unused-const-variable >+ NOOPT_WINGCC49_ARM_CC_FLAGS = DEF(GCC49_ARM_CC_FLAGS) - >O0 >+ >+########################################################## >########################## >+# > # GCC 5 - This configuration is used to compile under Linux to produce > # PE/COFF binaries using GCC 5 > # >-- >2.7.4 ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v1 1/1] BaseTools/tools_def: Add WINGCC49 support 2018-06-21 4:55 ` Gao, Liming @ 2018-06-22 1:28 ` Chris Co 2018-06-22 1:56 ` Gao, Liming 0 siblings, 1 reply; 5+ messages in thread From: Chris Co @ 2018-06-22 1:28 UTC (permalink / raw) To: Gao, Liming, edk2-devel@lists.01.org; +Cc: Zhu, Yonghong, Leif Lindholm > -----Original Message----- > From: Gao, Liming <liming.gao@intel.com> > Sent: Wednesday, June 20, 2018 9:56 PM > To: Chris Co <Christopher.Co@microsoft.com>; edk2-devel@lists.01.org > Cc: Zhu, Yonghong <yonghong.zhu@intel.com>; Leif Lindholm > <leif.lindholm@linaro.org> > Subject: RE: [PATCH v1 1/1] BaseTools/tools_def: Add WINGCC49 support > > Chris: > I suggest to name this tool chain as GCC49xASL and align to other ASL tool > chain, such as VS2015xASL. > And, ASL_PATH can be set to DEF(WIN_ASL_BIN). WINGCC49_ARM_PREFIX > is not required. GCC49_ARM_PREFIX can still be used. > > Besides, please add this tool chain introduction in file header, like > VS2015xASL. Then, other people can know how to set up the environment > and use this tool chain. > Thanks for the feedback Liming. Just confirming - should I still use GCC49_ARM_PREFIX? I thought the convention was {TOOL_CHAIN_TAG}_{ARCHITECTURE}_PREFIX where TOOL_CHAIN_TAG=GCC49xASL. > Thanks > Liming > >-----Original Message----- > >From: Chris Co [mailto:Christopher.Co@microsoft.com] > >Sent: Wednesday, June 20, 2018 7:27 AM > >To: edk2-devel@lists.01.org > >Cc: Zhu, Yonghong <yonghong.zhu@intel.com>; Gao, Liming > ><liming.gao@intel.com>; Leif Lindholm <leif.lindholm@linaro.org> > >Subject: [PATCH v1 1/1] BaseTools/tools_def: Add WINGCC49 support > > > >From: Chris Co <chrco@microsoft.com> > > > >This patch adds a build option for invoking GCC49 ARM cross compiler in > >the Windows environment to build firmware for Windows 10 IoT devices > >using NXP i.MX6 and i.MX7 SoCs. > > > >In addition, this build option targets the Microsoft ASL compiler > >instead of iasl. The Microsoft ASL compiler is necessary to expose > >Windows-specific Pin Function Config Descriptors on Windows IoT > >devices. > > > >Contributed-under: TianoCore Contribution Agreement 1.1 > >Signed-off-by: Christopher Co <christopher.co@microsoft.com> > >Cc: Yonghong Zhu <yonghong.zhu@intel.com> > >Cc: Liming Gao <liming.gao@intel.com> > >Cc: Leif Lindholm <leif.lindholm@linaro.org> > >--- > > BaseTools/Conf/tools_def.template | 55 ++++++++++++++++++++ > > 1 file changed, 55 insertions(+) > > > >diff --git a/BaseTools/Conf/tools_def.template > >b/BaseTools/Conf/tools_def.template > >index 11a79029b890..192732a677af 100755 > >--- a/BaseTools/Conf/tools_def.template > >+++ b/BaseTools/Conf/tools_def.template > >@@ -5468,6 +5468,61 @@ RELEASE_GCC49_AARCH64_DLINK_FLAGS = > >DEF(GCC49_AARCH64_DLINK_FLAGS) > > > > > >######################################################### > ## > >######################### > > # > >+# WINGCC 4.9 - This configuration is used to compile under Windows to > >produce > >+# PE/COFF binaries using GCC 4.9. > >+# > >+######################################################## > ## > >########################## > >+*_WINGCC49_*_*_FAMILY = GCC > >+ > >+*_WINGCC49_*_MAKE_PATH = DEF(GCC_HOST_PREFIX)make > >+*_WINGCC49_*_*_DLL = ENV(GCC49_DLL) > >+*_WINGCC49_*_ASL_PATH = asl.exe > >+ > >+*_WINGCC49_*_PP_FLAGS = DEF(GCC_PP_FLAGS) > >+*_WINGCC49_*_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) > >+*_WINGCC49_*_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) > >+*_WINGCC49_*_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) > >+*_WINGCC49_*_APP_FLAGS = > >+*_WINGCC49_*_ASL_FLAGS = /MsftInternal > >+*_WINGCC49_*_ASL_OUTFLAGS = DEF(MS_ASL_OUTFLAGS) > >+ > >+################## > >+# WINGCC49 ARM definitions > >+################## > >+*_WINGCC49_ARM_OBJCOPY_PATH = noop > >+*_WINGCC49_ARM_CC_PATH = ENV(WINGCC49_ARM_PREFIX)gcc > >+*_WINGCC49_ARM_SLINK_PATH = ENV(WINGCC49_ARM_PREFIX)ar > >+*_WINGCC49_ARM_DLINK_PATH = > ENV(WINGCC49_ARM_PREFIX)gcc > >+*_WINGCC49_ARM_ASLDLINK_PATH = > >ENV(WINGCC49_ARM_PREFIX)gcc > >+*_WINGCC49_ARM_ASM_PATH = > ENV(WINGCC49_ARM_PREFIX)gcc > >+*_WINGCC49_ARM_PP_PATH = ENV(WINGCC49_ARM_PREFIX)gcc > >+*_WINGCC49_ARM_VFRPP_PATH = > ENV(WINGCC49_ARM_PREFIX)gcc > >+*_WINGCC49_ARM_ASLCC_PATH = > ENV(WINGCC49_ARM_PREFIX)gcc > >+*_WINGCC49_ARM_ASLPP_PATH = > ENV(WINGCC49_ARM_PREFIX)gcc > >+*_WINGCC49_ARM_RC_PATH = > >ENV(WINGCC49_ARM_PREFIX)objcopy > >+*_WINGCC49_ARM_SYMRENAME_PATH = noop > >+ > >+*_WINGCC49_ARM_ARCHCC_FLAGS = -mthumb > >+*_WINGCC49_ARM_PLATFORM_FLAGS = -march=armv7-a > >+ > >+*_WINGCC49_ARM_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) > >+*_WINGCC49_ARM_ASLDLINK_FLAGS = > >DEF(GCC49_ARM_ASLDLINK_FLAGS) > >+*_WINGCC49_ARM_ASM_FLAGS = DEF(GCC49_ARM_ASM_FLAGS) > >+*_WINGCC49_ARM_DLINK_FLAGS = > DEF(GCC49_ARM_DLINK_FLAGS) > >+*_WINGCC49_ARM_DLINK2_FLAGS = > DEF(GCC49_ARM_DLINK2_FLAGS) > >+*_WINGCC49_ARM_DTCPP_FLAGS = DEF(GCC_DTCPP_FLAGS) > >+*_WINGCC49_ARM_PLATFORM_FLAGS = -march=armv7-a > >+*_WINGCC49_ARM_PP_FLAGS = $(ARCHCC_FLAGS) > >$(PLATFORM_FLAGS) DEF(GCC_PP_FLAGS) > >+*_WINGCC49_ARM_RC_FLAGS = DEF(GCC_ARM_RC_FLAGS) > >+*_WINGCC49_ARM_VFRPP_FLAGS = $(ARCHCC_FLAGS) > >$(PLATFORM_FLAGS) DEF(GCC_VFRPP_FLAGS) > >+*_WINGCC49_ARM_CC_XIPFLAGS = > DEF(GCC49_ARM_CC_XIPFLAGS) > >+ > >+ DEBUG_WINGCC49_ARM_CC_FLAGS = DEF(GCC49_ARM_CC_FLAGS) > - > >O0 > >+RELEASE_WINGCC49_ARM_CC_FLAGS = DEF(GCC49_ARM_CC_FLAGS) > - > >Wno-unused-but-set-variable -Wno-unused-const-variable > >+ NOOPT_WINGCC49_ARM_CC_FLAGS = DEF(GCC49_ARM_CC_FLAGS) > - > >O0 > >+ > >+######################################################## > ## > >########################## > >+# > > # GCC 5 - This configuration is used to compile under Linux to produce > > # PE/COFF binaries using GCC 5 > > # > >-- > >2.7.4 ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v1 1/1] BaseTools/tools_def: Add WINGCC49 support 2018-06-22 1:28 ` Chris Co @ 2018-06-22 1:56 ` Gao, Liming 0 siblings, 0 replies; 5+ messages in thread From: Gao, Liming @ 2018-06-22 1:56 UTC (permalink / raw) To: Chris Co, edk2-devel@lists.01.org; +Cc: Zhu, Yonghong, Leif Lindholm Yes. GCC49_ARM_PREFIX can be reused. The difference in GCC49 and GCC49xASL is ASL compiler. Their GCC part is same. > -----Original Message----- > From: Chris Co [mailto:Christopher.Co@microsoft.com] > Sent: Friday, June 22, 2018 9:28 AM > To: Gao, Liming <liming.gao@intel.com>; edk2-devel@lists.01.org > Cc: Zhu, Yonghong <yonghong.zhu@intel.com>; Leif Lindholm <leif.lindholm@linaro.org> > Subject: RE: [PATCH v1 1/1] BaseTools/tools_def: Add WINGCC49 support > > > -----Original Message----- > > From: Gao, Liming <liming.gao@intel.com> > > Sent: Wednesday, June 20, 2018 9:56 PM > > To: Chris Co <Christopher.Co@microsoft.com>; edk2-devel@lists.01.org > > Cc: Zhu, Yonghong <yonghong.zhu@intel.com>; Leif Lindholm > > <leif.lindholm@linaro.org> > > Subject: RE: [PATCH v1 1/1] BaseTools/tools_def: Add WINGCC49 support > > > > Chris: > > I suggest to name this tool chain as GCC49xASL and align to other ASL tool > > chain, such as VS2015xASL. > > And, ASL_PATH can be set to DEF(WIN_ASL_BIN). WINGCC49_ARM_PREFIX > > is not required. GCC49_ARM_PREFIX can still be used. > > > > Besides, please add this tool chain introduction in file header, like > > VS2015xASL. Then, other people can know how to set up the environment > > and use this tool chain. > > > > Thanks for the feedback Liming. > Just confirming - should I still use GCC49_ARM_PREFIX? I thought the convention was {TOOL_CHAIN_TAG}_{ARCHITECTURE}_PREFIX > where TOOL_CHAIN_TAG=GCC49xASL. > > > Thanks > > Liming > > >-----Original Message----- > > >From: Chris Co [mailto:Christopher.Co@microsoft.com] > > >Sent: Wednesday, June 20, 2018 7:27 AM > > >To: edk2-devel@lists.01.org > > >Cc: Zhu, Yonghong <yonghong.zhu@intel.com>; Gao, Liming > > ><liming.gao@intel.com>; Leif Lindholm <leif.lindholm@linaro.org> > > >Subject: [PATCH v1 1/1] BaseTools/tools_def: Add WINGCC49 support > > > > > >From: Chris Co <chrco@microsoft.com> > > > > > >This patch adds a build option for invoking GCC49 ARM cross compiler in > > >the Windows environment to build firmware for Windows 10 IoT devices > > >using NXP i.MX6 and i.MX7 SoCs. > > > > > >In addition, this build option targets the Microsoft ASL compiler > > >instead of iasl. The Microsoft ASL compiler is necessary to expose > > >Windows-specific Pin Function Config Descriptors on Windows IoT > > >devices. > > > > > >Contributed-under: TianoCore Contribution Agreement 1.1 > > >Signed-off-by: Christopher Co <christopher.co@microsoft.com> > > >Cc: Yonghong Zhu <yonghong.zhu@intel.com> > > >Cc: Liming Gao <liming.gao@intel.com> > > >Cc: Leif Lindholm <leif.lindholm@linaro.org> > > >--- > > > BaseTools/Conf/tools_def.template | 55 ++++++++++++++++++++ > > > 1 file changed, 55 insertions(+) > > > > > >diff --git a/BaseTools/Conf/tools_def.template > > >b/BaseTools/Conf/tools_def.template > > >index 11a79029b890..192732a677af 100755 > > >--- a/BaseTools/Conf/tools_def.template > > >+++ b/BaseTools/Conf/tools_def.template > > >@@ -5468,6 +5468,61 @@ RELEASE_GCC49_AARCH64_DLINK_FLAGS = > > >DEF(GCC49_AARCH64_DLINK_FLAGS) > > > > > > > > >######################################################### > > ## > > >######################### > > > # > > >+# WINGCC 4.9 - This configuration is used to compile under Windows to > > >produce > > >+# PE/COFF binaries using GCC 4.9. > > >+# > > >+######################################################## > > ## > > >########################## > > >+*_WINGCC49_*_*_FAMILY = GCC > > >+ > > >+*_WINGCC49_*_MAKE_PATH = DEF(GCC_HOST_PREFIX)make > > >+*_WINGCC49_*_*_DLL = ENV(GCC49_DLL) > > >+*_WINGCC49_*_ASL_PATH = asl.exe > > >+ > > >+*_WINGCC49_*_PP_FLAGS = DEF(GCC_PP_FLAGS) > > >+*_WINGCC49_*_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) > > >+*_WINGCC49_*_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) > > >+*_WINGCC49_*_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) > > >+*_WINGCC49_*_APP_FLAGS = > > >+*_WINGCC49_*_ASL_FLAGS = /MsftInternal > > >+*_WINGCC49_*_ASL_OUTFLAGS = DEF(MS_ASL_OUTFLAGS) > > >+ > > >+################## > > >+# WINGCC49 ARM definitions > > >+################## > > >+*_WINGCC49_ARM_OBJCOPY_PATH = noop > > >+*_WINGCC49_ARM_CC_PATH = ENV(WINGCC49_ARM_PREFIX)gcc > > >+*_WINGCC49_ARM_SLINK_PATH = ENV(WINGCC49_ARM_PREFIX)ar > > >+*_WINGCC49_ARM_DLINK_PATH = > > ENV(WINGCC49_ARM_PREFIX)gcc > > >+*_WINGCC49_ARM_ASLDLINK_PATH = > > >ENV(WINGCC49_ARM_PREFIX)gcc > > >+*_WINGCC49_ARM_ASM_PATH = > > ENV(WINGCC49_ARM_PREFIX)gcc > > >+*_WINGCC49_ARM_PP_PATH = ENV(WINGCC49_ARM_PREFIX)gcc > > >+*_WINGCC49_ARM_VFRPP_PATH = > > ENV(WINGCC49_ARM_PREFIX)gcc > > >+*_WINGCC49_ARM_ASLCC_PATH = > > ENV(WINGCC49_ARM_PREFIX)gcc > > >+*_WINGCC49_ARM_ASLPP_PATH = > > ENV(WINGCC49_ARM_PREFIX)gcc > > >+*_WINGCC49_ARM_RC_PATH = > > >ENV(WINGCC49_ARM_PREFIX)objcopy > > >+*_WINGCC49_ARM_SYMRENAME_PATH = noop > > >+ > > >+*_WINGCC49_ARM_ARCHCC_FLAGS = -mthumb > > >+*_WINGCC49_ARM_PLATFORM_FLAGS = -march=armv7-a > > >+ > > >+*_WINGCC49_ARM_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) > > >+*_WINGCC49_ARM_ASLDLINK_FLAGS = > > >DEF(GCC49_ARM_ASLDLINK_FLAGS) > > >+*_WINGCC49_ARM_ASM_FLAGS = DEF(GCC49_ARM_ASM_FLAGS) > > >+*_WINGCC49_ARM_DLINK_FLAGS = > > DEF(GCC49_ARM_DLINK_FLAGS) > > >+*_WINGCC49_ARM_DLINK2_FLAGS = > > DEF(GCC49_ARM_DLINK2_FLAGS) > > >+*_WINGCC49_ARM_DTCPP_FLAGS = DEF(GCC_DTCPP_FLAGS) > > >+*_WINGCC49_ARM_PLATFORM_FLAGS = -march=armv7-a > > >+*_WINGCC49_ARM_PP_FLAGS = $(ARCHCC_FLAGS) > > >$(PLATFORM_FLAGS) DEF(GCC_PP_FLAGS) > > >+*_WINGCC49_ARM_RC_FLAGS = DEF(GCC_ARM_RC_FLAGS) > > >+*_WINGCC49_ARM_VFRPP_FLAGS = $(ARCHCC_FLAGS) > > >$(PLATFORM_FLAGS) DEF(GCC_VFRPP_FLAGS) > > >+*_WINGCC49_ARM_CC_XIPFLAGS = > > DEF(GCC49_ARM_CC_XIPFLAGS) > > >+ > > >+ DEBUG_WINGCC49_ARM_CC_FLAGS = DEF(GCC49_ARM_CC_FLAGS) > > - > > >O0 > > >+RELEASE_WINGCC49_ARM_CC_FLAGS = DEF(GCC49_ARM_CC_FLAGS) > > - > > >Wno-unused-but-set-variable -Wno-unused-const-variable > > >+ NOOPT_WINGCC49_ARM_CC_FLAGS = DEF(GCC49_ARM_CC_FLAGS) > > - > > >O0 > > >+ > > >+######################################################## > > ## > > >########################## > > >+# > > > # GCC 5 - This configuration is used to compile under Linux to produce > > > # PE/COFF binaries using GCC 5 > > > # > > >-- > > >2.7.4 ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2018-06-22 1:56 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2018-06-19 23:26 [PATCH v1 0/1] BaseTools/tools_def: Add WINGCC49 support Chris Co 2018-06-19 23:26 ` [PATCH v1 1/1] " Chris Co 2018-06-21 4:55 ` Gao, Liming 2018-06-22 1:28 ` Chris Co 2018-06-22 1:56 ` Gao, Liming
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox