And the compiler name is clang (part of the LLVM open source project
http://llvm.org), the tools are installed as Xcode (the name of the target).
> On May 11, 2015, at 8:50 PM, Jordan Justen <jordan.l.jus...@intel.com> wrote:
>
> Liming, Amy,
>
> I'm confused. I didn't even see the original post of the patch to
> edk2-devel. Maybe Amy is not subscribed?
>
> I don't think removing a feature (EDK II NASM support), and calling it
> 'Basetools update for CLAN support' is a good way to proceed.
>
> Maybe just install NASM instead?
>
> There was also some discussions of allowing toolchains, or toolchain
> families to choose the priority for source file extensions. Did that
> go anywhere?
>
Good point I forgot about that. If we don’t have that support then we probably
need to make a NASM version and a non-nasm version.
I’d also like to understand the reasons for the changes. And we probably should
split up into smaller patches.
For example I did not understand the removal of the comment about xcode-select?
#
# use xcode-select to change Xcode version of command line tools
#
*_XCODE5_*_CC_PATH = clang
*_XCODE5_*_SLINK_PATH = libtool
*_XCODE5_*_DLINK_PATH = ld
*_XCODE5_*_ASM_PATH = as
*_XCODE5_*_PP_PATH = clang
*_XCODE5_*_VFRPP_PATH = clang
*_XCODE5_*_ASL_PATH = iasl
*_XCODE5_*_ASLCC_PATH = clang
*_XCODE5_*_ASLPP_PATH = clang
*_XCODE5_*_ASLDLINK_PATH = ld
I’ve learned from experience with NASM (Mac Ports etc) that we really need to
add the Path back into these guys. I hit a bug that ld was pointing at the Mac
Ports version and it was too old to understand the dwarf info from the
compiler.
With Xcode /usr/bin/clang is just a redirector to the currently selected clang.
The default location is /Applications/Xcode.app/Contents/Developer/, but you
can install multiple copies of the tools and switch via the command line.
Thanks,
Andrew Fish
> -Jordan
>
> On 2015-05-11 18:33:59, Gao, Liming wrote:
>> Andrew:
>>
>> I convert this patch to git format for your review.
>>
>> 1) On Mtoc tool, user can configure tools_def.txt to point its path.
>> I don't think it is necessary to integrate it into EDKII BaseTools.
>>
>>
>>
>> Thanks
>>
>> Liming
>>
>> From: Andrew Fish [mailto:af...@apple.com]
>> Sent: Tuesday, May 12, 2015 1:25 AM
>> To: edk2-devel@lists.sourceforge.net
>> Cc: Davis, Brad A; Chiu, Chasel; Chan, Amy; Chaganty, Rangasai V
>> Subject: Re: [edk2] Basetools update for CLAN support
>>
>>
>>
>>
>>
>> On May 10, 2015, at 8:30 PM, Gao, Liming <liming....@intel.com> wrote:
>>
>>
>>
>> 2) Nasm build rules have been used for the other tool chain and
>> platform. And, we also agree to use nasm in EDKII. I don't think we can
>> drop it now in the default configuration.
>>
>> 3) I don't see those flags in build_rule.txt. I am curious how use them
>> in CLANG build.
>>
>>
>>
>> Thanks
>>
>> Liming
>>
>> From: Chiu, Chasel
>> Sent: Friday, May 08, 2015 5:35 PM
>> To: Gao, Liming; Chan, Amy; edk2-devel@lists.sourceforge.net
>> Cc: Mudusuru, Giri P; Chaganty, Rangasai V; Davis, Brad A
>> Subject: RE: Basetools update for CLAN support
>>
>>
>>
>>
>>
>> See my reply.
>>
>>
>>
>> Thanks!
>>
>> Chasel
>>
>>
>>
>>
>>
>> From: Gao, Liming
>> Sent: Friday, May 8, 2015 5:23 PM
>> To: Chan, Amy; edk2-devel@lists.sourceforge.net
>> Cc: Chiu, Chasel; Mudusuru, Giri P; Chaganty, Rangasai V; Davis, Brad A
>> Subject: RE: Basetools update for CLAN support
>>
>>
>>
>> Amy:
>>
>> I have two comments.
>>
>> 1. PosixLink for EDKII BaseTools, not for third party tool. I
>> don't think it is good to add Mtoc here. [cc] in the past we put this
>> mtoc in BaseTools, we can move to other place but actually I have no
>> idea why we need mtoc to compile CLANG on MAC OS. We might can eliminate
>> it.
>>
>>
>>
>> To enable debugging we have clang compile to Mach-0 (native execution
>> format on a Mac). The mtoc tool is a Mach-O to PE/COFF conversion tool. It
>> is open sourced by Apple as part of CCTOOLS. It works like the ELF to
>> PE/COFF conversion code that is in the edk2 BaseTools.
>>
>>
>>
>> I have no problem with someone checking the binary in the tree for mtoc,
>> as it is open sourced code.
>>
>> 2. Why remove nasm build rules from build_rule.template? [cc]
>> Thunk16.nasm build failure due to "DQ 0" -> "DQ 0.0" and more errors.
>> Removed this can build S file instead and pass.
>>
>> 3. Who uses *_XCODE5_*_PLATFORM_FLAGS and
>> *_XCODE5_X64_PLINK_FLAGS? [cc] CLANG building on MAC OS.
>>
>>
>>
>>
>>
>> The PLATFORM_FLAGS originated in the ARM port.
>>
>>
>>
>> I do the maintenance to keep Xcode working. So you can send me a patch and
>> I can review it, test it and commit it.
>>
>>
>>
>> I recently made a change to our internal version of the flags and I can
>> sync that back too. I add -fcolor-diagnostics to the compiler lines as
>> this enabled color diagnostic (error messages) from clang when building
>> under the edk2.
>>
>>
>>
>> Thanks,
>>
>>
>>
>> Andrew Fish
>>
>> Thanks
>>
>> Liming
>>
>> From: Chan, Amy
>> Sent: Friday, May 8, 2015 4:48 PM
>> To: edk2-devel@lists.sourceforge.net
>> Cc: Chiu, Chasel; Mudusuru, Giri P; Chaganty, Rangasai V; Davis, Brad A;
>> Gao, Liming
>> Subject: Basetools update for CLAN support
>>
>>
>>
>> Hello all,
>>
>>
>>
>> Recently we found we need to make some changes on BaseTools to build our
>> RC with CALNG-on-MacPC:
>>
>> 1. Add one file BaseTools\BinWrappers\PosixLike\mtoc
>>
>> 2. Update BaseTools\Conf\build_rule.template
>>
>> 3. Update BaseTools\Conf ools_def.template
>>
>> Please see the attached file for detail, Password is Intel123
>>
>>
>>
>> However the same BaseTools has been using by some customers who should
>> already complain and ask change for this...
>>
>> We are not sure whether those change is a correct, whether we can avoid
>> it by some simple build flags change.
>>
>>
>>
>> Please kindly give us some advice if you have any idea.
>>
>>
>>
>> Thanks and regards,
>>
>> Amy
>>
>>
>> ------------------------------------------------------------------------------
>> One dashboard for servers and applications across
>> Physical-Virtual-Cloud
>> Widest out-of-the-box monitoring support with 50+ applications
>> Performance metrics, stats and reports that give you Actionable Insights
>> Deep dive visibility with transaction tracing using APM Insight.
>>
>> http://ad.doubleclick.net/ddm/clk/290420510;117567292;y_______________________________________________
>> edk2-devel mailing list
>> edk2-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/edk2-devel
>>
>>
>
> ------------------------------------------------------------------------------
> One dashboard for servers and applications across Physical-Virtual-Cloud
> Widest out-of-the-box monitoring support with 50+ applications
> Performance metrics, stats and reports that give you Actionable Insights
> Deep dive visibility with transaction tracing using APM Insight.
> http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/edk2-devel
------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel