Thread (1 message) 1 message, 1 author, 2016-06-15

Re: minor makefile issues

From: David Kastrup <hidden>
Date: 2016-06-15 22:43:25

Joe Eykholt [off-list ref] writes:
Hi All,

Due to my unusual environment, I ran into two issues when installing
git 1.5.2.4 from source.
Although these are unusual, they might not be unique and the fixes are easy:

   1.  The make install failed because of line 49 in templates/Makefile:
          (cd blt && $(TAR) cf - .) | \
          (cd '$(DESTDIR_SQ)$(template_dir_SQ)' && $(TAR) xf -)
   because I have CDPATH set, the 'cd blt' actually outputs the new
directory on stdout
   which confuses the second tar.  Changing this to 'cd ./blt' fixes
it.  Perhaps this could
   be considered a bash bug.
No, it is a user bug.  You don't want a script to _ever_ walk around
on its own volition, so you must _not_ export CDPATH.  Instead, set it
in .bashrc without exporting it.  That way, it will be available with
every interactive shell, and not interfering with scripts.
   2.  My home directory containing my build tree is NFS-mounted, and
root doesn't have any
   permission to write it.  So, when doing 'make prefix=/usr/local
install-doc' as root, I got these errors:

   # make prefix=/usr/local install-doc
   make -C Documentation install
   make[1]: Entering directory
/net/da01/home/jre/build/git-1.5.2.4/Documentation'
   rm -f doc.dep+ doc.dep
   rm: cannot remove `doc.dep': Permission denied
   make[1]: *** [doc.dep] Error 1
   make[1]: Leaving directory
/net/da01/home/jre/build/git-1.5.2.4/Documentation'
   make: *** [install-doc] Error 2

I'm not sure what the best fix is for the second problem.  rm -f
ignores non-existent files but not permission errors.
I guess you could do 'rm -f doc.dep || true'.
First do "make doc" for your normal user, then make doc-install as
root.

-- 
David Kastrup, Kriemhildstr. 15, 44793 Bochum
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help