[LLVMdev] To APR Or Not To APR. That is the question.

John Criswell criswell at cs.uiuc.edu
Mon Sep 13 08:18:50 PDT 2004


Dear All,

Time to add my two cents:

I think incorporating something like APR into the LLVM tree is fine, 
given that it works, its licensing doesn't interefere with our licensing 
(and doesn't give me a headache), and we can merge it into the LLVM 
source base relatively seamlessly (i.e. users don't need to install it 
before building LLVM and APR plays nice with our build system).

I think building our own lib/System is going to be a bit of a time sink, 
especially with our limited access to other platforms.  And adding third 
party libraries is okay as long as the user doesn't have to install 
extra stuff to use LLVM.

The licensing, I think, will be okay.  The remainder of the problem lies 
with how well APR works and how well it will integrate with our build 
system.  For that, I think we'll simply have to try it out and see if it 
works.

Are there any other libraries available that will do the things we need 
to do?  It strikes me that we haven't enumerated what we need and what 
our options are.

If we go ahead and do incorporate APR, I would recommend the following:

a) Keep APR as a separate library and write lib/System as a wrapper 
around it.

b) Maintain a vendor branch for APR so that changes from the Apache 
Foundation are more easily merged into the tree (the CVS docs describe 
how to do this in the "Tracking Third Party Sources" section).

-- John T.

-- 
*********************************************************************
* John T. Criswell                         Email: criswell at uiuc.edu *
* Research Programmer                                               *
* University of Illinois at Urbana-Champaign                        *
*                                                                   *
* "It's today!" said Piglet. "My favorite day," said Pooh.          *
*********************************************************************





More information about the llvm-dev mailing list