[LLVMdev] Top Level Stuff

Reid Spencer rspencer at reidspencer.com
Sat Jun 30 16:52:31 PDT 2007


On Sat, 2007-06-30 at 18:37 -0500, Vikram S. Adve wrote:
> I just have a couple of comments on this:
> 
> 1. Minor issue: I think the README should be in text format (or text  
> and HTML) so that someone checking it out on the command line can  
> read it easily.

Okay, good point :)

> 
> 2. If the projects directory goes away, we should provide a different  
> mechanism for someone starting a new project based on LLVM to use as  
> a template.  This could include, minimally, a Makefile and a README,  
> but could also include other features (which I think do not exist  
> now) such as test templates, documentation, etc.

Yes, we're not trying to discourage people from their own projects, just
trying not to force them to place it at /llvm/trunk/projects !  I would
rather provide some utilities in, say, /utils/mkproject (a shell script)
that creates a new directory that is set up to use llvm (e.g. the
configure script knows about --with-llvm= option).

Reid.

> 
> --Vikram
> http://www.cs.uiuc.edu/~vadve
> http://llvm.org
> 
> 
> On Jun 30, 2007, at 5:53 PM, Reid Spencer wrote:
> 
> > All,
> >
> > The current SVN repository has several modules at the top level (llvm,
> > test-suite, java, stacker, etc.). The modules contain the software  
> > that
> > makes up the LLVM Project. However, there is nothing at the top level
> > that explains any of this. So, I am considering doing the following at
> > the top level of the repository (i.e. in
> > http://llvm.org/svn/llvm-project):
> >
> > 1. /README.html
> > Just a short README file in HTML format so that people browsing  
> > into the
> > repository can get the lay of the land. This would indicate what the
> > LLVM Project is, what its modules are, where you can find the main
> > website, documentation for each module, etc.
> >
> > 2. /website/
> > I think the LLVM web site (hosted at http://llvm.org/) should be a
> > subversion module named website. It should not contain the releases
> > (huge files) and should be converted from the original llvm-www CVS
> > module. Additionally, we should set httpd up so that it rewrites any /
> > request to /svn/llvm-project/website. This will allow subversion to
> > auto-update the web site without us having to do a checkout
> >
> > 3. /docs/
> > Right now the /docs/ url is mapped to /svn/llvm-project/llvm/trunk/ 
> > docs/
> > which is okay temporarily, but I'd like to see /docs/ become a
> > subversion module that provides documentation for the project at the
> > meta-level. When llvm-gcc, hlvm and the new C front end all hit the
> > repository there will be a need for some documentation about things  
> > that
> > are common across all modules and about the project as a whole. Right
> > now these are handled either by the web site or by the llvm module.
> >
> > 4. /utils/ (or perhaps /tools/)
> > I think there's an opportunity for us to put some common tools that  
> > are
> > used by several modules into a top level module named /utils/.  
> > Initially
> > this could be a merge of the hlvm and llvm module /utils/ directory
> > (excluding things like tblgen which is llvm specific).
> >
> > 4. "projects"
> > I don't think its appropriate for the llvm/trunk/projects directory to
> > be the place where a "project" is checked out. In fact, I'm not  
> > sure the
> > notion of "project" even makes sense any more. I would prefer that we
> > just have a set of modules at the top level and those modules have  
> > some
> > inter-dependencies. For example, you should be able to just check out
> > the "test-suite" module at the top level and run it. I think the  
> > primary
> > motivation for having it in the llvm/projects directory was so that  
> > such
> > projects could auto-configure when LLVM was configured. For newcomers
> > this is unusual and for llvm developers its a maintenance burden. If a
> > project depends on another project, it should just use the normal
> > configure mechanism (e.g. --with-llvm=/path/to/llvm). We could provide
> > some tools in /utils/ to make this easier.  Furthermore, not having to
> > support "projects" in the makefile system will make the makefiles much
> > easier to understand and will make the conversion to scons easier.
> >
> > Your thoughts?
> >
> > Reid.
> >
> > _______________________________________________
> > LLVM Developers mailing list
> > LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
> 
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev




More information about the llvm-dev mailing list