[LLVMdev] Open Source Contributions (was Re: Benchmarks)

Vikram S. Adve vadve at cs.uiuc.edu
Sun May 2 10:27:01 PDT 2004


There are no IP issues or restrictions I know of that prevent us from 
accepting contributions or providing direct CVS write access to 
non-UIUC people.  If we can solve the technical issues, Chris and I 
would both be in favor of making write access available, in some 
controlled way.  (As Chris said, I think it would be really unfortunate 
if we had to fork off the CVS repository but again, inside or outside 
the UIUC domain is a non-issue.)

Replacing CVS with something else may be our only option, but I would 
want to make sure that it is as widely available as CVS, so that 
prospective users don't have to download and install version management 
sofware to use llvm.


On May 1, 2004, at 8:03 PM, Reid Spencer wrote:

> On Fri, 2004-04-30 at 10:57, Chris Lattner wrote:
>> There is a chance, but as Vikram mentioned, it's not extremely likely 
>> to
>> happen in the immediate future.  However, if you or someone else 
>> wrote the
>> makefiles neccesary to the suite to the llvm/test/Programs hierarchy, 
>> we
>> would be happy to add them and have our automated testers run them.  
>> :)
>> In particular, I'd really like to try to foster some more community
>> involvement in all aspects of LLVM, including coding, porting, 
>> testing,
>> documentation, performance tweaking, ...  Our group obviously has a 
>> lot
>> invested in LLVM and we will continue doing lots of interesting 
>> things,
>> but unfortunately we do have limited people-bandwidth.  If you 
>> *really*
>> want something done (like any open source project), the best way is 
>> to do
>> it yourself of convince someone to do it for you.
>> I'm not try to complain here: we have had a number of high-quality
>> contributions from several different people, I just wanted to point 
>> out
>> that asking us to do something isn't the only way to get it done.  :-)
>> -Chris
> I'd be happy to contribute more and in fact, there are lots of things I
> could and would contribute. Pretty much the only thing that stops me  
> is
> the project's CVS policy. Submitting patches is fine for smaller tasks
> (single file bug fixes etc.) but larger tasks (like adding a whole test
> suite) really need CVS write access to be done efficiently and
> correctly.
> Perhaps its just me, but I don't have time to dicker with patch
> creation, wait for individual files to be added, processing emails that
> let me know when things have been added, wait for further responses on
> modifications, etc.  I have a full-time job, a full-time family, and a
> full-time second career (erm, perhaps I'm just over-booked? :)  I need
> some efficiency if I'm to do anything. From my perspective, the process
> is _way_ more efficient if I can just create a branch, do what I need 
> to
> do and then tell you "look at branch xyz and merge if you like it". Its
> possible with CVS to restrict access to main line commits to certain
> users so you can still maintain control of the main development trend.
> Furthermore, providing CVS access should reduce your administrative
> burden. Instead of patching a pile of individual files, you can simply
> look at the changes introduced by a branch and decide if its something
> you want to keep or inform the branch author of the things that need to
> be modified. You can also set the "gold standard" for contributions to
> make sure that (a) branches are maintained with the mainline by the
> author (thereby reducing mainline conflicts on merge), (b) the software
> on the branch must build correctly, (c) the branch software must be 
> well
> integrated into the build system, (d) the branch software must not 
> break
> any existing tests, (e) etc., etc.
> I understand the University has certain legal restrictions about
> granting access to non-student and non-faculty users. That may be the
> trump card that prevents wider use of CVS by contributors to LLVM. If
> that is the case, I would suggest that (a) the project simply accept
> that contributions from others will be minimal or (b) move the CVS
> repository somewhere that doesn't have the University's restrictions.
> That last option, however, may have additional intellectual property
> issues.
> While it would be unwise to freely grant write access to the CVS
> repository to anyone that asked for it, you might want to think about
> some qualifications necessary to allow that to happen in a controlled
> fashion.  I for one don't have any problems being asked to qualify for
> CVS write access. If such access were available to serious and capable
> contributors, I believe you'd get a lot more contributions (as I've 
> seen
> on other projects).  Furthermore, the contributions are generally of a
> higher quality because the technical requirements go up. Its something
> of a self-sorting process.
> Ultimately the decision is yours. LLVM is still great either way. :)
> Reid.

More information about the llvm-dev mailing list