in-call@gmx.net writes:Basically, you are screwed. That being said, it might somewhat work to do the following: find /usr/local -depth -iname 'git*' -exec rm -rf {} \; But I think you'll catch more if you apply the following patch, then do ./configure --prefix=/opt/git make all doc sudo make install install-doc install-symlinks sudo rm -rf /opt/git sudo find /usr/local -lname '/opt/git/*' -delete There is some software called xstow which is supposed to do something similar to the "install-symlinks" target of this patch. -- David Kastrup, Kriemhildstr. 15, 44793 Bochum From: David Kastrup <dak@gnu.org> Date: Wed, 18 Jul 2007 16:45:36 +0200 Subject: [PATCH] Makefile: create an install-symlinks target [commit text mostly pinched from INSTALL] An alternative global installation method making it much easier to uninstall is to use a package-specific prefix like /opt/git, then create symlinks from /usr/local into that hierarchy. Uninstalling can then be achieved by # rm -rf /opt/git; find /usr/local -lname '/opt/git/*' -delete You can create a setup like that after having used one of the above install recipes with prefix=/opt/git by writing # make prefix=/opt/git symlinkprefix=/usr/local install-symlinks This works by copying the directory hierarchy of $prefix to $symlinkprefix (not copying or descending to any directories of the name git* matched case-insensitively), then linking all the rest. --- INSTALL | 12 ++++++++++++ Makefile | 10 +++++++++- 2 files changed, 21 insertions(+), 1 deletions(-) diff --git a/INSTALL b/INSTALL index 289b046..38d6fdd 100644 --- a/INSTALL +++ b/INSTALL @@ -21,6 +21,18 @@ set up install paths (via config.mak.autogen), so you can write instead $ make all doc ;# as yourself # make install install-doc ;# as root +An alternative global installation method making it much easier to +uninstall is to use a package-specific prefix like /opt/git, then +create symlinks from /usr/local into that hierarchy. Uninstalling can +then be achieved by + + # rm -rf /opt/git; find /usr/local -lname '/opt/git/*' -delete + +You can create a setup like that after having used one of the above +install recipes with prefix=/opt/git by writing + + # make prefix=/opt/git symlinkprefix=/usr/local install-symlinks + Issues of note: diff --git a/Makefile b/Makefile index 0055eef..caea6fb 100644 --- a/Makefile +++ b/Makefile @@ -147,6 +147,7 @@ ALL_LDFLAGS = $(LDFLAGS) STRIP ?= strip prefix = $(HOME) +symlinkprefix = /usr/local bindir = $(prefix)/bin gitexecdir = $(bindir) sharedir = $(prefix)/share @@ -727,6 +728,7 @@ bindir_SQ = $(subst ','\'',$(bindir)) gitexecdir_SQ = $(subst ','\'',$(gitexecdir)) template_dir_SQ = $(subst ','\'',$(template_dir)) prefix_SQ = $(subst ','\'',$(prefix)) +symlinkprefix_SQ = $(subst ','\'',$(symlinkprefix)) SHELL_PATH_SQ = $(subst ','\'',$(SHELL_PATH)) PERL_PATH_SQ = $(subst ','\'',$(PERL_PATH)) @@ -1039,7 +1041,13 @@ install-info: quick-install-doc: $(MAKE) -C Documentation quick-install - +# The somewhat strange looking lines start with an ignored $(MAKE) in +# order to be executed also in make -n calls. +install-symlinks: + @: $(MAKE) && echo cd '$(prefix_SQ)' && cd '$(prefix_SQ)' && $(FIND) . -type d ! \( -iname 'git*' -prune \) -exec echo $(INSTALL) -m 755 -d '$(symlinkprefix_SQ)/{}' \; + @cd '$(prefix_SQ)' && $(FIND) . -type d ! \( -iname 'git*' -prune \) -exec $(INSTALL) -m 755 -d '$(symlinkprefix_SQ)/{}' \; + @: $(MAKE) && echo cd '$(prefix_SQ)' && cd '$(prefix_SQ)' && $(FIND) . \( -type d -iname 'git*' -prune -o ! -type d \) -exec echo $(RM) -r '$(symlinkprefix_SQ)/{}' \; -exec echo ln -s '$(prefix_SQ)/{}' '$(symlinkprefix_SQ)/{}' \; + @cd '$(prefix_SQ)' && $(FIND) . \( -type d -iname 'git*' -prune -o ! -type d \) -exec $(RM) -r '$(symlinkprefix_SQ)/{}' \; -exec ln -s '$(prefix_SQ)/{}' '$(symlinkprefix_SQ)/{}' \; ### Maintainer's dist rules -- 1.5.3.1.96.g4568 - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
| Arjan van de Ven | [patch] Add basic sanity checks to the syscall execution patch |
| Andi Kleen | [PATCH CPA] [1/28] Shrink __PAGE_KERNEL/__PAGE_KERNEL_EXEC on non PAE kernels |
| Alex Dubov | Re: [2.6.20] tifm_7xx1/mmc not working |
| Jared Hulbert | [PATCH 00/10] AXFS: Advanced XIP filesystem |
git: | |
| Junio C Hamano | More precise tag following |
| walt | git versus CVS (versus bk) |
| Stephen R. van den Berg | RFC: grafts generalised |
| Pierre Habouzit | [PATCH 1/2] Add strbuf_cmp. |
| Richard Stallman | Real men don't attack straw men |
| K K | Re: No Blob without Puffy |
| Stephan A. Rickauer | Re: Net-SNMP segfaults under OpenBSD 4.3 |
| Brian A. Seklecki | sshd_config(5) PermitRootLogin yes |
| Jim Winstead Jr. | Re: Root Disk/Book Disk Compatibility |
| Howard Wei-Hao Pan | [Q] Does Linux work with PCMCIA devices? |
| Curtis Yarvin | Re: Problem with UNCOMPRESS |
| Ross Sponholtz | Re: S3 |
