Re: [PATCH] Explain what 'ginstall' is
- From
H.Merijn Brand <h.m.brand@xs4all.nl>
- Date
- Dec 18, 2007, 14:27 UTC
- Message-ID
- <20071218152739.060af760@pc09.procura.nl>
- In-Reply-To
- <200712181503.10614.jnareb@gmail.com>
On Tue, 18 Dec 2007 15:03:09 +0100, Jakub Narebski <jnareb@gmail.com> wrote:
Show 34 quoted lines
> On Tue, 18 Dec 2007, H.Merijn Brand wrote:
> > On Tue, 18 Dec 2007 13:32:59 +0100, Jakub Narebski <jnareb@gmail.com> wrote:
> >> H.Merijn Brand wrote:
> >>> On Tue, 18 Dec 2007 10:14:38 +0100, Jakub Narebski <jnareb@gmail.com> wrote:
> >>>>
> >>>> What is ./configure output in your case?
> >>
> >>> /pro/3gl/LINUX/git-2007-12-17 119> cp /pro/3gl/GNU/gcc/r3/gcc-4.2.2/install-sh install-sh
> >>
> >>> -- uncommented the AC_PROG_INSTALL line ...
> >>
> >>> OK, rebuild configure ...
> >>>
> >>> a5:/pro/3gl/LINUX/git-2007-12-17 129> make configure
> >>> GEN configure
> >>> a5:/pro/3gl/LINUX/git-2007-12-17 130> rm config.{log,status}
> >>> a5:/pro/3gl/LINUX/git-2007-12-17 131> configure --prefix=/pro/local \
> >>> --disable-nls --without-iconv --with-perl=/pro/bin/perl >& config-log
> >>> a5:/pro/3gl/LINUX/git-2007-12-17 132> grep -w install config-log config.log config.status
> >>> config-log:checking for a BSD-compatible install... /opt/imake/bin/install -c
> >>> config.log:configure:2218: checking for a BSD-compatible install
> >>> config.log:configure:2273: result: /opt/imake/bin/install -c
> >>> config.log:ac_cv_path_install='/opt/imake/bin/install -c'
> >>> config.status:INSTALL="/opt/imake/bin/install -c"
> >>
> >> Does chosen by ./configure script 'install' binary, namely
> >> /opt/imake/bin/install works correctly, meaning does it install
> >> git correctly?
> >
> > No. I reported this before, but not to the list. This is why I created
> > my own make-install shell:
>
> I though that you were talking about _default_ 'install' program
> (first in PATH). Is /opt/imake/bin/install used below?Yes. There is only ONE install program (that is a small lie, there is also /usr/sbin/install, but that is not accessible for mortal users)
> I have forgot to tell that beside uncommenting AC_PROG_INSTALL line > in configure.ac (and doing "make configure") you have to also uncomment > the "INSTALL = @INSTALL@" in config.mak.in for "make install" to use > install program found by ./configure script.
But I don't think it found install-sh.
/pro/3gl/LINUX/git-2007-12-17 103 > grep -w install config-log checking for a BSD-compatible install... /opt/imake/bin/install -c
Show 24 quoted lines
> > /pro/3gl/LINUX/git-2007-12-17 113> make install > > SUBDIR git-gui > > INDEX lib/ > > SUBDIR gitk-git > > make[1]: Nothing to be done for `all'. > > SUBDIR perl > > SUBDIR templates > > install -d -m 755 '/pro/local/bin' > > rm: /pro/local/bin/ directory > > Usage: mv [-f] [-i] [-e warn|force|ignore] f1 f2 > > mv [-f] [-i] [-e warn|force|ignore] f1 ... fn d1 > > mv [-f] [-i] [-e warn|force|ignore] d1 d2 > > Strange... > > By the way, I have took a look at hos ./configure script chooses which > 'install' to use, and at least for GNU Autoconf 2.59 it does not talk > about HP-UX at all, and checks binaries to reject by grepping for > a string, instead of checking if it install files correctly using some > script (at least checking if it install files and creates directories, > and accepts install options used, without checking for correct permissions > and group, etc.). > > Relevant fragment of generated ./configure script
http://www.xs4all.nl/~procura/configure
added a 'set -x' there:
configure: CHECKS for programs checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ANSI C... none needed + echo configure:2219: checking for a BSD-compatible install + 1>& 5 + echo checking for a BSD-compatible install... \c + 1>& 6 checking for a BSD-compatible install... + test -z + test = set + as_save_IFS=
+ IFS=: + IFS=
+ test -z . + IFS=
+ test -z /u/usr/merijn/bin/private + test -f /u/usr/merijn/bin/private/ginstall + test -f /u/usr/merijn/bin/private/scoinst + test -f /u/usr/merijn/bin/private/install + IFS=
etc etc for the rest of the $PATH ...
+ test -z /opt/imake/bin
+ test -f /opt/imake/bin/ginstall
+ test -f /opt/imake/bin/scoinst
+ test -f /opt/imake/bin/install
+ test install = install
+ grep dspmsg /opt/imake/bin/install
+ 1> /dev/null 2>& 1
+ test install = install
+ grep pwplus /opt/imake/bin/install
+ 1> /dev/null 2>& 1
+ ac_cv_path_install=/opt/imake/bin/install -c
+ break 3
+ test set = set
+ INSTALL=/opt/imake/bin/install -c
+ echo configure:2274: result: /opt/imake/bin/install -c
+ 1>& 5
+ echo /opt/imake/bin/install -c
+ 1>& 6
/opt/imake/bin/install -c
+ exit
+ exit_status=0
+ 1>& 5
+ echo
+ cat
+ 0< /var/tmp/sh8180.20
+ echo
+ 2>& 1
+ 2>& 1
+ sed -n s/'/'\\''/g;
s/^\([_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]*_cv_[_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]*\)=\(.*\)/\1='\2'/p
+ echo
+ cat
+ 0< /var/tmp/sh8180.21
+ echo
+ sort
+ echo SHELL
+ eval ac_val=$SHELL
:
:
+ ac_val=o
+ echo OBJEXT='o'
+ echo INSTALL_PROGRAM
+ eval ac_val=$INSTALL_PROGRAM
+ ac_val=
+ echo INSTALL_PROGRAM=''
+ echo INSTALL_SCRIPT
+ eval ac_val=$INSTALL_SCRIPT
+ ac_val=
+ echo INSTALL_SCRIPT=''
+ echo INSTALL_DATA
+ eval ac_val=$INSTALL_DATA
+ ac_val=
+ echo INSTALL_DATA=''
+ echo AR
+ eval ac_val=$AR
:
:
+ echo
+ test -n
+ test -s confdefs.h
+ cat
+ 0< /var/tmp/sh8180.23
+ echo
+ sed /^$/d confdefs.h
+ sort
+ echo
+ test 0 != 0
+ echo configure: exit 0
+ rm -f core *.core
+ rm -rf conftest* confdefs.h conf8180*Show 73 quoted lines
> -- >8 -- configure
>
> # Find a good install program. We prefer a C program (faster),
> # so one script is as good as another. But avoid the broken or
> # incompatible versions:
> # SysV /etc/install, /usr/sbin/install
> # SunOS /usr/etc/install
> # IRIX /sbin/install
> # AIX /bin/install
> # AmigaOS /C/install, which installs bootblocks on floppy discs
> # AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
> # AFS /usr/afsws/bin/install, which mishandles nonexistent args
> # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
> # OS/2's system install, which has a completely different semantic
> # ./install, which can be erroneously created by make from ./install.sh.
> echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
> echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6
> if test -z "$INSTALL"; then
> if test "${ac_cv_path_install+set}" = set; then
> echo $ECHO_N "(cached) $ECHO_C" >&6
> else
> as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
> for as_dir in $PATH
> do
> IFS=$as_save_IFS
> test -z "$as_dir" && as_dir=.
> # Account for people who put trailing slashes in PATH elements.
> case $as_dir/ in
> ./ | .// | /cC/* | \
> /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
> ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \
> /usr/ucb/* ) ;;
> *)
> # OSF1 and SCO ODT 3.0 have their own names for install.
> # Don't use installbsd from OSF since it installs stuff as root
> # by default.
> for ac_prog in ginstall scoinst install; do
> for ac_exec_ext in '' $ac_executable_extensions; do
> if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
> if test $ac_prog = install &&
> grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
> # AIX install. It has an incompatible calling convention.
> :
> elif test $ac_prog = install &&
> grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
> # program-specific install script used by HP pwplus--don't use.
> :
> else
> ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
> break 3
> fi
> fi
> done
> done
> ;;
> esac
> done
>
>
> fi
> if test "${ac_cv_path_install+set}" = set; then
> INSTALL=$ac_cv_path_install
> else
> # As a last resort, use the slow shell script. We don't cache a
> # path for INSTALL within a source directory, because that will
> # break other packages using the cache if that directory is
> # removed, or if the path is relative.
> INSTALL=$ac_install_sh
> fi
> fi
> echo "$as_me:$LINENO: result: $INSTALL" >&5
> echo "${ECHO_T}$INSTALL" >&6
> --
H.Merijn Brand Amsterdam Perl Mongers (http://amsterdam.pm.org/)
using & porting perl 5.6.2, 5.8.x, 5.10.x on HP-UX 10.20, 11.00, 11.11,
& 11.23, SuSE 10.1 & 10.2, AIX 5.2, and Cygwin. http://qa.perl.org
http://mirrors.develooper.com/hpux/ http://www.test-smoke.org
http://www.goldmark.org/jeff/stupid-disclaimers/