Am 16.10.2017 um 10:23 schrieb Junio C Hamano: > Johannes Sixt <j6t@xxxxxxxx> writes: > >> Yes, running "sudo make install" is a nightmare. sudo clears the path, >> and the git command is not found by the make invoked with root >> permissions. This changes the version string that gets compiled into >> the executable, which finally triggers a complete rebuild under >> root. Sad... > > In the meantime, would it help to intall as yourself under DESTDIR > set to where you can write into, and then limit the potential > damange done while pretending to be a privileged user to "cp -R" (or > "tar cf" in $DESTDIR piped to "tar xf" in /)? > > It appears that some dependencies are screwed up around "perl" > related things, which may want to get fixed. I agree that "make && > make install" that runs two 'make' under the same environment and > user shouldn't (re)build anything during the latter 'make', but we > somehow seem to do so. We do so only, if 'make install' does not run in the same environment and if there is no version file. I use the patch below. It works for me, but I could imagine that it suffers from the original problem if there is no git in PATH and there is no version file, i.e., when the source is not a release tarball. ----- 8< ----- Subject: [PATCH] version-gen: Use just built git if no other git is in PATH Signed-off-by: Johannes Sixt <j6t@xxxxxxxx> --- GIT-VERSION-GEN | 3 +++ 1 file changed, 3 insertions(+) diff --git a/GIT-VERSION-GEN b/GIT-VERSION-GEN index 0e88e23653..b610aa3249 100755 --- a/GIT-VERSION-GEN +++ b/GIT-VERSION-GEN @@ -3,6 +3,9 @@ GVF=GIT-VERSION-FILE DEF_VER=v2.15.0-rc1 +# use git that was just compiled if there is no git elsewhere in PATH +PATH=$PATH:. + LF=' ' -- 2.14.2.808.g3bc32f2729