Richard Pennington
2014-Sep-06 02:23 UTC
[LLVMdev] RFC: Another go at a cross compiler config file.
A while back (2012) there were a few messages related to using YAML config files to set up how clang would build stuff, especially for cross compilers. My ELLCC project is entirely cross compilation focused, so today I decided to play around with the config file idea. Right now it only handles replacing a "-target foo" option with the options defined in the file foo in the resource/config directory, but I think it has potential for doing quite a bit more. I describe it a little more on my blog at http://ellcc.org/blog/?p=11877 Any comments/criticisms would be greatly appreciated. -Rich -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140905/adcca508/attachment.html>
Bob Wilson
2014-Sep-08 16:46 UTC
[LLVMdev] RFC: Another go at a cross compiler config file.
> On Sep 5, 2014, at 7:23 PM, Richard Pennington <rich at pennware.com> wrote: > > A while back (2012) there were a few messages related to using YAML config files to set up how clang would build stuff, especially for cross compilers. My ELLCC project is entirely cross compilation focused, so today I decided to play around with the config file idea. Right now it only handles replacing a "-target foo" option with the options defined in the file foo in the resource/config directory, but I think it has potential for doing quite a bit more. > > I describe it a little more on my blog at http://ellcc.org/blog/?p=11877 <http://ellcc.org/blog/?p=11877> > > Any comments/criticisms would be greatly appreciated.There aren’t a lot of details on your blog, but the basic idea sounds great. I’m looking forward to seeing patches for this! -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140908/503cc821/attachment.html>
Joerg Sonnenberger
2014-Sep-08 17:14 UTC
[LLVMdev] [cfe-dev] RFC: Another go at a cross compiler config file.
On Fri, Sep 05, 2014 at 09:23:34PM -0500, Richard Pennington wrote:> Right now it only handles replacing a "-target foo" option > with the options defined in the file foo in the resource/config > directory, but I think it has potential for doing quite a bit more.Please don't overload the -target option like that, but make it a separate option. Joerg
Bob Wilson
2014-Sep-08 17:59 UTC
[LLVMdev] [cfe-dev] RFC: Another go at a cross compiler config file.
> On Sep 8, 2014, at 10:14 AM, Joerg Sonnenberger <joerg at britannica.bec.de> wrote: > > On Fri, Sep 05, 2014 at 09:23:34PM -0500, Richard Pennington wrote: >> Right now it only handles replacing a "-target foo" option >> with the options defined in the file foo in the resource/config >> directory, but I think it has potential for doing quite a bit more. > > Please don't overload the -target option like that, but make it a > separate option.I disagree. One of the problems with clang’s driver now is that we have such a long list of built-in targets. From the user’s point of view, whether the target settings come from a yaml file or from hardcoded logic in the driver should be an implementation detail. It would be great if we could default to specify _all_ targets like this, and then choose which targets to build into the driver based solely on performance. (It will be a while before any mechanism like this can support all the features for some of the more complicated targets, so I’m not proposing that we completely switch to that approach now, but I would like to see us move in that direction.) On that note, Richard, do you have any thoughts on how we could support building these yaml specification into the driver? It seems like many of the targets that are currently hardcoded could be handled with this approach, but the compile-time cost of reading a separate yaml file would be unacceptable in some situations. —Bob
Richard Pennington
2014-Sep-15 12:09 UTC
[LLVMdev] RFC: Another go at a cross compiler config file.
I've updated my blog with the current state of my compilation configuration prototype. http://ellcc.org/blog/?p=13246 Again, any comments/criticisms greatly appreciated. -Rich On 09/05/2014 09:23 PM, Richard Pennington wrote:> A while back (2012) there were a few messages related to using YAML > config files to set up how clang would build stuff, especially for > cross compilers. My ELLCC project is entirely cross compilation > focused, so today I decided to play around with the config file idea. > Right now it only handles replacing a "-target foo" option with the > options defined in the file foo in the resource/config directory, but > I think it has potential for doing quite a bit more. > > I describe it a little more on my blog at http://ellcc.org/blog/?p=11877 > > Any comments/criticisms would be greatly appreciated. >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140915/0fa81de6/attachment.html>
David Chisnall
2015-Jan-12 19:18 UTC
[LLVMdev] RFC: Another go at a cross compiler config file.
Hi, Did this make it into review / commit? It's probably too late for 3.6 if it didn't, but I'd love to see it in 3.7. It would also be nice if this support could be something a bit more general in LLVM, rather than specifically in clang, so that other llvm tools (e.g. llvm-objdump) could take advantage of a similar format for target description files if they need something more than just the triple argument. David> On 15 Sep 2014, at 13:09, Richard Pennington <rich at pennware.com> wrote: > > I've updated my blog with the current state of my compilation configuration prototype. http://ellcc.org/blog/?p=13246 > Again, any comments/criticisms greatly appreciated. > > -Rich > > On 09/05/2014 09:23 PM, Richard Pennington wrote: >> A while back (2012) there were a few messages related to using YAML config files to set up how clang would build stuff, especially for cross compilers. My ELLCC project is entirely cross compilation focused, so today I decided to play around with the config file idea. Right now it only handles replacing a "-target foo" option with the options defined in the file foo in the resource/config directory, but I think it has potential for doing quite a bit more. >> >> I describe it a little more on my blog at http://ellcc.org/blog/?p=11877 >> >> Any comments/criticisms would be greatly appreciated. >> > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev