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

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


Reid,

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.

--Vikram
http://www.cs.uiuc.edu/~vadve
http://llvm.cs.uiuc.edu/


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