[cfe-dev] final distributed clang patch
clattner at apple.com
Mon Jul 7 23:41:06 PDT 2008
On Jul 7, 2008, at 9:13 AM, Peter Neumark wrote:
> Here is the final patch for clang to support network distributed
> compilation. (clang.patch file)
> There is also the server part attached. (the tar.gz file)
I haven't looked at your patch in detail, but some thoughts in no
1) it would be very useful to separate and submit the mechanical
changes independent from any other changes in your patch. As Eli
mentioned, duplicating the -E printer is not acceptable. We should
refactor that code into a form acceptable for your work independently
of the rest of the patch.
2) It is generally bad form to have headers like NetSession.h #include
system-specific stuff (like sys/socket or netinet/in.h) these
#includes should move to a .cpp file. I like that you put the system
specific code in a platform abstraction layer, it just needs to be a
3) I think we should have a high level discussion about how the new
dist-cc implementation integrates with clang. I had envisioned a
different *driver* on the client side that shared code but was
independent of the clang driver. It doesn't make any sense to
distribute many of the things the clang driver does (e.g. -Eonly, -ast-
dump, etc). If we can come to a design, I think a number of the
changes you made would be unneeded. This would basically amount to
your "-dist-preprocesslocally" option, but would be simpler. Once
that is working well, more aggressive models can be attempted.
4) It would be good to have some HTML documentation for this,
including end-user documentation on how to set it up and use it. This
should go in clang/docs.
5) Have you done any timings of this?
Thanks for working on this. It is very exciting to see progress on
this project! I know a number of people who are very interested in
More information about the cfe-dev