Subject: Re: [PATCH 1/3] Move libgit.a sources into a libgit/ subdirectory

From: Jonathan Nieder <[email-masked]>
Date: Thu, 17 Feb 2011 23:58:49 -0600

Jeff King wrote:

> I wonder if there should perhaps be lib/, with all of the libgit.a
> sources in it, and then lib/block-sha1, lib/ppc, lib/compat, etc. Those
> things do end up inside libgit.a, don't they?

Hmph.  Let's see:

 - our xdiff changes ought to move upstream so other projects can
   use them.  That is, xdiff ought to be installable as a shared
   library.  So maybe that can stay out of libgit/.

 - block-sha1/ and ppc/ are just alternatives to openssl sha1, which
   can be installed as a system library.  Maybe keeping block-sha1
   out of libgit/ would provide an incentive to make block-sha1 usable
   as a system library for other projects to try out, too.

 - most of compat/ is needed if Windows and old Unixen are to be able
   to build libgit/.  So it probably should be part of libgit.

 - compat/bswap.h is needed for libgit.

 - compat/strlcpy.c is part of libbsd, so if such dependencies are ok
   it could stay out.

I really didn't want too many extra levels of hierarchy, so except for
bswap.h I think this is okay for until libgit grows a Makefile.  I
might be overlooking some glibc-only functions, though.