threads / discuss / 40905

Is it possible to build `git` such that the install directory and the deployment prefix is not the same?

Subject: Is it possible to build `git` such that the install directory and the deployment prefix is not the same?

## tl;dr

3 messages between Nov 28, 2015 and Nov 28, 2015.

replies: 2people: 2as markdown or json

Henry Qin· Nov 28, 2015, 07:19 UTC · lore
Dear Git developers,

I've looked around the online forums and also asked this question on Stackoverflow, but have not gotten an answer.

http://stackoverflow.com/questions/33901216/is-it-possible-to-build-git-such-that-the-install-directory-and-the-deployment
Here is the question, copied below for your convenience:

""" I am attempting to build git from source, and I would like make install to put the binaries into a directory called dist in my source directory, so I use the following configure line.

./configure --prefix=`pwd`/dist

Unfortunately, this also causes the build output to assume that this is the final install location for git, and therefore hardcode the path into various scripts and binaries such as libexec/git-core/git-difftool.

Is there a way to specify during either configure or make that I want a different path for actual deployment, such as /usr/bin/local, but still have make install go into the directory pwd/dist? """

Thanks, ~Henry

Junio C Hamano· Nov 28, 2015, 07:54 UTC · re: Henry Qin · lore

Re: Is it possible to build `git` such that the install directory and the deployment prefix is not the same?

Henry Qin <root@hq6.me> writes:
Show 8 quoted lines
> Here is the question, copied below for your convenience:
>
> """
> I am attempting to build git from source, and I would like make
> install to put the binaries into a directory called dist in my source
> directory, so I use the following configure line.
>
> ./configure --prefix=`pwd`/dist
You probably want to use DESTDIR instead, e.g.
    $ make prefix=/usr/local DESTDIR=/var/tmp/dest

The standard way to phrase your question is "how do I 'make install' to install to a fake location so that I can tar up the result into a tarball?" (the key part being "so that..."), I think.

Henry Qin· Nov 28, 2015, 07:58 UTC · re: Junio C Hamano · lore

Re: Is it possible to build `git` such that the install directory and the deployment prefix is not the same?

Thanks a lot, Junio and Dennis!
~Henry

On Fri, Nov 27, 2015 at 11:47 PM, Dennis Kaarsemaker <dennis@kaarsemaker.net> wrote:

Show 14 quoted lines
> On vr, 2015-11-27 at 23:19 -0800, Henry Qin wrote:
>
>> Is there a way to specify during either configure or make that I want
>> a different path for actual deployment, such as /usr/bin/local, but
>
> There is, using the DESTDIR variable:
>
> make PREFIX=/usr/local
> DESTDIR=$(PWD)/dist make install
> --
> Dennis Kaarsemaker
> www.kaarsemaker.net
>
>
On Fri, Nov 27, 2015 at 11:54 PM, Junio C Hamano <gitster@pobox.com> wrote:
Show 19 quoted lines
> Henry Qin <root@hq6.me> writes:
>
>> Here is the question, copied below for your convenience:
>>
>> """
>> I am attempting to build git from source, and I would like make
>> install to put the binaries into a directory called dist in my source
>> directory, so I use the following configure line.
>>
>> ./configure --prefix=`pwd`/dist
>
> You probably want to use DESTDIR instead, e.g.
>
>     $ make prefix=/usr/local DESTDIR=/var/tmp/dest
>
> The standard way to phrase your question is "how do I 'make install'
> to install to a fake location so that I can tar up the result into a
> tarball?" (the key part being "so that..."), I think.
>

← back to recent threads