On Mon, Jun 10, 2013 at 4:45 PM, Jeff King <peff@xxxxxxxx> wrote: > That is what libgit.a _is_ now. I do not mean to imply any additional > judgement on what it could be. But if the goal is to make libgit.a > "functions that programs outside git.git would want, and nothing else", > we may want to additionally split out a "libgit-internal.a" consisting > of code that is used by multiple externals in git, but which would not > be appropriate for clients to use. That might make sense, but that still doesn't clarify what belongs in ./*.o, and what belongs in ./builtin/*.o. And right now that creates a mess where you have code shared between ./builtin/*.o that is defined in cache.h (overlay_tree_on_cache), and some in builtin.h (init_copy_notes_for_rewrite). And it's not clear what should be done when code in ./*.o needs to access functionality in ./builtin/*.o, specially if that code is only useful for git builtins, and nothing else. -- Felipe Contreras -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html