[cfe-dev] Compiler driver

Ted Kremenek kremenek at apple.com
Wed Jan 9 12:59:50 PST 2008


On Jan 8, 2008, at 9:13 PM, Sanghyeon Seo wrote:

> Attached is a compiler driver I use. It is imaginatively named "ccc",
> and implemented in Python.

This is great.

I think a script like this is a very useful good start for having a  
way to use clang as a drop-in replacement for GCC.  Eventually I  
imagine we will want a non-script approach for purposes of efficiency,  
completeness, etc., but I think that at least in the short term this  
script could be very useful to many people.

Chris and I talked about this, and we both think it should go into the  
repository.

Besides just checking in the file, I was wondering if it would be  
possible for you to do a few other things as well:

1) Could you add an explicit check in 'ccc' for no command line  
arguments?

   (kremenek at grue:Downloads)$ ./ccc
   llvm-ld -native -o a.out
   llvm-ld: Not enough positional command line arguments specified!
   Must specify at least 1 positional arguments: See: llvm-ld --help

The above seems a little verbose and confusing to someone who doesn't  
know what is going on.  In comparison:

   (kremenek at grue:Downloads)$ gcc
   i686-apple-darwin9-gcc-4.0.1: no input files

2) To house the script we should probably create a new subdirectory in  
the clang tree; e.g. "utils".

3) Please add the LLVM copyright notice to the top of the file:

#
#                     The LLVM Compiler Infrastructure
#
# This file is distributed under the University of Illinois Open Source
# License. See LICENSE.TXT for details.
#

4) A brief comment at the top of the file (below the copyright notice)  
about what the script does.

5) Add a (brief) blurb to the web page about the script.  This can be  
done by editing the appropriate files in "www".  The blurb can be very  
minimal, but this is a good way for people to know that the script  
exists.  You can also mention a few limitations/requirements for the  
script to work.

I am more than happy to do (5) myself.  I'm not an expert on Python,  
so I would prefer that you modified the script file yourself (1-4).

Thanks again!



More information about the cfe-dev mailing list