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, 07:38 UTC
Message-ID
<20071218083843.42d7a15e@pc09.procura.nl>
In-Reply-To
<m3tzmgpzlu.fsf@roke.D-201>

On Mon, 17 Dec 2007 17:21:08 -0800 (PST), Jakub Narebski <jnareb@gmail.com> wrote:

Show 9 quoted lines
> 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.

> 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!
Show 7 quoted lines
> 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 #!/bin/sh

PREFIX=/pro/local BINDIR=$PREFIX/bin SHARED=$PREFIX/share

for p in git-fetch-pack git-hash-object git-index-pack git-fast-import \
	 git-daemon git-merge-index git-mktag git-mktree git-patch-id \
	 git-receive-pack git-send-pack git-shell git-show-index \
	 git-unpack-file git-update-server-info git-upload-pack \
	 git-pack-redundant git-var git-merge-tree git-imap-send \
	 git-merge-recursive  git-bisect git-checkout git-clone \
	 git-merge-one-file git-mergetool git-parse-remote git-pull \
	 git-rebase git-rebase--interactive git-repack git-request-pull \
	 git-sh-setup git-am git-merge git-merge-stupid git-merge-octopus \
	 git-merge-resolve git-lost-found git-quiltimport git-submodule \
	 git-filter-branch git-stash git-add--interactive git-archimport \
	 git-cvsimport git-relink git-cvsserver git-remote git-cvsexportcommit \
	 git-send-email git-svn git-instaweb git-merge-subtree ; do
    rm -f $BINDIR/$p
    cp $p $BINDIR
    chmod 755 $BINDIR/$p
    done

cp git $BINDIR cd templates rm -rf $SHARED/git-core mkdir $SHARED/git-core mkdir $SHARED/git-core/templates (cd blt && tar cf - .) | (cd $SHARED/git-core/templates/ && tar xf -) cd .. cd perl make make install UNINST=1 cd ..

for p in git-format-patch git-show git-whatchanged git-cherry \
	 git-get-tar-commit-id git-init git-repo-config git-fsck-objects \
	 git-cherry-pick git-peek-remote git-status git-add git-annotate \
	 git-apply git-archive git-blame git-branch git-bundle git-cat-file \
	 git-check-attr git-checkout-index git-check-ref-format git-clean \
	 git-commit git-commit-tree git-count-objects git-describe git-diff \
	 git-diff-files git-diff-index git-diff-tree git-fast-export \
	 git-fetch git-fetch-pack git-fetch--tool git-fmt-merge-msg \
	 git-for-each-ref git-fsck git-gc git-grep git-init-db git-log \
	 git-ls-files git-ls-tree git-ls-remote git-mailinfo git-mailsplit \
	 git-merge-base git-merge-file git-merge-ours git-mv git-name-rev \
	 git-pack-objects git-prune git-prune-packed git-push git-read-tree \
	 git-reflog git-send-pack git-config git-rerere git-reset \
	 git-rev-list git-rev-parse git-revert git-rm git-shortlog \
	 git-show-branch git-stripspace git-symbolic-ref git-tag git-tar-tree \
	 git-unpack-objects git-update-index git-update-ref \
	 git-upload-archive git-verify-pack git-verify-tag git-write-tree \
	 git-show-ref git-pack-refs ; do
    rm -f $BINDIR/$p
    ln $BINDIR/git $BINDIR/$p
    done
-->8---
-- 
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 3 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.