Subject: Re: Build without BUILT_INS

From: Andreas Ericsson <[email-masked]>
Date: Tue, 24 Apr 2012 10:32:14 +0200

On 04/24/2012 04:42 AM, Junio C Hamano wrote:
> Steven Penny<[email-masked]>  writes:
> 
>> I would like to build Git for Windows without the hard links in libexec/git-core
>>
>> I tried doing
>>
>> make install prefix=/c/git BUILT_INS=
>>
>> and I get this error
> 
> Unsurprising.
> 
> What are you trying to do?  Are you trying to build a git that does not
> know any of the built-in commands like "checkout", "commit", etc?  Or do
> you still want a full-featured git, but because you know the code to
> perform "git foo" for any builtin command "foo" is contained in git
> executable itself, you want to "rm -f git-foo" from the filesystem?
> 
> The latter is a bad idea to begin with, as it will break older scripts
> that trust the promise that by having git --exec-path early on the $PATH
> older forms "git-foo" will always work.
> 
> If you really want to do so, the right way is not by mucking BUILT_INS
> to empty.  I do not know how GfW is built, but if it uses our usual
> Makefile, find the place where it installs the git-foo forms of links
> after it installs the main git executable, and comment it out.
> 
> And no, it will *not* be a compilation option, as the resulting
> installation will break the age-old promise we made to script writers.
> 

Otoh, we did warn that we were going to deprecate the 'git-foo' form back
in 2005 when the git wrapper was rewritten in C, so perhaps we should
consider marking it as deprecated now so we can get rid of them altogether
altogether in another seven years. ;)

-- 
Andreas Ericsson                   [email-masked]
OP5 AB                             www.op5.se
Tel: +46 8-230225                  Fax: +46 8-230231

Considering the successes of the wars on alcohol, poverty, drugs and
terror, I think we should give some serious thought to declaring war
on peace.