[LLVMdev] Top Level Stuff

Vikram S. Adve vadve at uiuc.edu
Sat Jun 30 16:37:27 PDT 2007


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.

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.

--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




More information about the llvm-dev mailing list