lib_3p system

Stefan (metze) Metzmacher metze at
Thu Jul 17 01:46:06 MDT 2014

Am 17.07.2014 04:52, schrieb Ira Cooper:
> On Wed, Jul 16, 2014 at 9:50 PM, Jelmer Vernooij <jelmer at> wrote:
>> On Wed, Jul 16, 2014 at 09:42:59PM -0400, Ira Cooper wrote:
>>> On Wed, Jul 16, 2014 at 8:36 PM, Jelmer Vernooij <jelmer at>
>> wrote:
>>>> On Wed, Jul 16, 2014 at 07:03:55PM -0400, Ira Cooper wrote:
>>>>> In all the work I've been asked for my rationale for the work I am
>> done.
>>>>> It is about cleanliness and solid software engineering.  We can't be
>> sure
>>>>> we AREN'T using libraries that are totally integrated into our build
>>>>> system.  While we can try, and we can claim, the true proof is
>> removing
>>>>> them.
>>>>> In the interests of doing this, I've actually gone ahead and removed
>>>> them,
>>>>> on a branch. and put in support for downloading a tar file, manually.
>>>>> The first patch on my new branch shows a file that was including our
>>>> local
>>>>> popt headers, instead of following and finding the system ones.  I
>>>> suspect
>>>>> it is the only one, but until there is more testing on more systems,
>> I
>>>>> won't feel truly sure of that.
>>>>> If we wish to support a "fat" tarball for our releases, that is fine.
>>>>  But
>>>>> for day to day to development, the intent of this change is to make
>> it so
>>>>> developers who don't wish to have these libraries or their sources on
>>>> their
>>>>> system, do not have them there.
>>>>> If you want more rationale than Simo's rationale, Jeremy's and
>> Volker's,
>>>> I
>>>>> suggest you look at my first patch on this branch.  It shows what I
>> truly
>>>>> fear.  Insidious errors.  This error was innocent it looks like...
>>>>> thankfully.
>>>>> This is why I do not support third party libraries in the tree.
>>  These
>>>> type
>>>>> of mistakes are too easy to make, and too easy to tempt ourselves
>> into.
>>>>> Git branch is at:
>>>>> The supporting "lib_3p" tar file:
>>>>>  (This should move to a better
>>>>> location and be versioned etc, if we do this.)
>>>>> I'll construct the actual git repo to go with the tarfile tomorrow.
>>>>> I suggest you look at the code, and the overall concept.  I think
>> you'll
>>>>> find it a vast improvement, and a solid middle ground.
>>>>> (Yes, this is a request for review, and comments.)
>>>> Can you rename it to something with a more obvious name? "p3" doesn't
>>>> mean anything to me. Perhaps "lib/external" ?
>>>> Please update lib/, which is there to update
>>>> some of these libraries. (I've got a pending patch to make it update
>> zlib)
>>>> Can you move each library in a separate commit? Git doesn't deal well
>>>> with moves of lots of files unless you specify the magic options (see
>>>> e.g. the output of "git log lib/zlib").
>>> lib_3p stands for "Libraries, Third Party." "external" is a bit too vague
>>> for this use.  I really want an exact meaning.
>> In that case, what about just naming it lib/third_party or
>> lib/3rd_party ?
> lib/ is for the first party libraries.

3rd_party/ would be much better than lib_3p...


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 246 bytes
Desc: OpenPGP digital signature
URL: <>

More information about the samba-technical mailing list