[LLVMdev] [cfe-dev] RFC: A Great Renaming of Things (or: Let's Repaint ALL the Bikesheds!)

Philip Ashmore contact at philipashmore.com
Tue Nov 27 16:40:42 PST 2012


Hi there.

What about repainting the top-level bike-shed - the build system itself?

I've got a framework called "v3c" in SourceForge that has a top-level 
makefile.
 From that makefile you can just do "make" to build it with debug 
information,
"make release" for a release build,
"make -j7 distcheck" to throw a few cores at the build,
"make -j7 git branch=a.b.c release debian" to checkout version a.b.c to 
a separate directory and build a debian package with it.

I've got several projects in SourceForge that "inherit" this 
functionality, and some (like v3c-storyboard) use several of them at once.

This would end the notion of "in-tree" components - projects become 
"derived" from llvm, like clang.

I don't know if it's even possible to try one version of clang with a 
different version of llvm, or whether that even makes sense, but this 
way, you can if you want to.

Then there's doxygen integration - providing you set up things 
consistently, your AnOther project inherits the doxygen tag files from 
the projects it inherits from.

So, in the case of v3c-storyboard, it inherits the documentation from 
v3c, treedb, meta-treedb, v3c-dcom, cxxparse and v3c-qt, which 
integrates Qt's doxygen documentation.

Plus the build flags of the parent projects are available for reuse in 
client projects.

It's all automake/pkg-config/git based but I hope it can serve as a 
point of reference - what my bike-shed looks like.

A bike-shed too far?

Regards,
Philip Ashmore



More information about the llvm-dev mailing list