git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] Explain what 'ginstall' is

From
H.Merijn Brand <h.m.brand@xs4all.nl>
Date
Dec 18, 2007, 08:38 UTC
Message-ID
<20071218093819.0b1caf16@pc09.procura.nl>
In-Reply-To
<200712180920.39633.jnareb@gmail.com>
On Tue, 18 Dec 2007 09:20:38 +0100, Jakub Narebski <jnareb@gmail.com> wrote:
Show 21 quoted lines
> On Tue, 18 Dec 2007, H.Merijn Brand wrote:
> > On Mon, 17 Dec 2007 17:21:08 -0800 (PST), Jakub Narebski wrote:
> > 
> >> Andy Dougherty <doughera@lafayette.edu> writes:
> >> 
> >>> [...].  Perhaps configure
> >>> should just go looking for a suitable install program instead of
> >>> assuming everyone has one.
> >> 
> >> First, configure is, and (I think) consensus is that it should remain
> >> optional.  This means that Makefile "guess" section should have good
> >> defaults for your operating system.
> > 
> > And what if you OS *does* have an install, but one that is completely
> > useless^Wdifferent from the GNU install? Like the utterly useless
> > install on HP-UX.
> 
> Then "guess" section should have INSTALL=ginstall, or something.
> Or just install with
> 
>   INSTALL=/opt/bin/ginstall make install

Chances are close to zero that HP-UX systems have installed any working or compliant version of install

Show 25 quoted lines
> or something like that.
> 
> >> Second, the default autoconf macro AC_PROG_INSTALL *requires* that
> >> there is BSD-compatible `install' program (as 'install-sh' or
> >> 'install.sh') in the sources.  Adding such script is (I think) not a
> >> problem;
> > 
> > Yeah!
> > 
> >> finding minimal portable[*1*] script is.  So if you know one...
> >> 
> >> Footnotes:
> >> ----------
> >> [*1*] By "portable" I mean here 'git portable', i.e. requiring only
> >> those shell constructs/features that git require, not necessary
> >> insanelt portable the way ./configure script is.
> > 
> > Something like this? (gui part still missing). This is what I now
> > use
> > 
> > --8<--- make-install
> 
> Errr... please read more carefully. There is need for BSD-compatibile
> `install` program as 'install-sh', not 'make-install' script. The idea
> is to use system-provided 'install' if it exists and is compatibile,

There lies the problem. HP-UX does have an 'install', but it is not compatible, and chances are (very) small that people have installed the GNU or any other BSD compliant install.

> because it should be faster than script version, and fallback to 
> provided install-sh only if system install is not found.

The problem again. It *does* find install, but it turns out to be unusable.

> install-sh has to understand '-d' and '-m <mode>' switches for git 
> install purposes, and probably implement all three (src dest, src dir, 
> dir) formats.

BTW the same, but worse exists for the 'patch' program. On HP-UX there is a program called 'patch' which is used for system upgrades, but it has nothing to do with the patch util the rest of the world so happily uses.

So far that is used in a few places in the test suite, but I heared it would not be too hard to eliminate the use of the hard-coded patch util

-- 
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/
Previous: Jakub NarebskiNext: Jakub Narebski
Message 5 of 12 in “Explain what 'ginstall' is”
  1. Explain what 'ginstall' isAndy Dougherty, Dec 17, 2007
  2. Jakub NarebskiDec 18, 2007
  3. H.Merijn BrandDec 18, 2007
  4. Jakub NarebskiDec 18, 2007
  5. H.Merijn BrandDec 18, 2007
  6. Jakub NarebskiDec 18, 2007
  7. H.Merijn BrandDec 18, 2007
  8. Jakub NarebskiDec 18, 2007
  9. H.Merijn BrandDec 18, 2007
  10. Jakub NarebskiDec 18, 2007
  11. H.Merijn BrandDec 18, 2007
  12. Jan HudecDec 23, 2007

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.