This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Novice Questions: Interface To Compiler Front End?


I am building a new language front end for GCC (yes, I know, yet another
one). I've read all the documentation I can find and I've built both the
3.2.1 and 3.3.1 releases. So far so good. Now, what I'm looking for is a
library and a set of header files that I can use in building my new
front end.  I have noticed that there is a libbackend.a which seems to
contain all the back end code. What I was hoping is that there would be
a libfrontend.a that contains the front end code that I could link
against in my new front end.  Is there a way to configure GCC to build
such a thing? I couldn't see one.  Am I missing something here? 

Please Note: Because this is a new language, somewhat different from
other front ends, and likely to be highly experimental over the next
year, I am pretty certain you don't want me to integrate it into the
current GCC sources (yet).  So, I plan to build a separate front end
interface (like Ada) that uses the tree macros and AST support and
downstream code generation. What I was hoping is that there would be
just a few header files to include and a library I could link with to
build my own front end. Is this a poor choice? Is adding a new language
directory to the ${top_srcdir}/gcc directory required as opposed to just

If building a libfrontend.a seems like a good idea to everyone but just
hasn't been done yet, I'd be willing to contribute the time to make it
happen as it will simplify my task later on.

Thanks in advance for any help or direction you can provide.

Best Regards,

Reid Spencer
eXtensible Systems, Inc.

Attachment: signature.asc
Description: This is a digitally signed message part

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]