Re: [PATCH] Uninstall rule for top level Makefile

Previous thread: [PATCH] Add comments to update_tree_entry() by Andy Parkins on Monday, December 11, 2006 - 3:13 pm. (1 message)

Next thread: Re: stgit: No patches to pop by Jakub Narebski on Monday, December 11, 2006 - 3:54 pm. (1 message)
From: Andy Parkins
Date: Monday, December 11, 2006 - 3:14 pm

Signed-off-by: Andy Parkins <andyparkins@gmail.com>
---
 Makefile |   14 ++++++++++++++
 1 files changed, 14 insertions(+), 0 deletions(-)

diff --git a/Makefile b/Makefile
index a1861de..51c1747 100644
--- a/Makefile
+++ b/Makefile
@@ -821,6 +821,20 @@ install-doc:
 	$(MAKE) -C Documentation install
 
 
+### Uninstallation rules
+
+uninstall:
+	rm -f $(subst %,$(DESTDIR_SQ)$(gitexecdir_SQ)/%,$(ALL_PROGRAMS))
+	rm -f '$(DESTDIR_SQ)$(bindir_SQ)/git$X'
+	rm -f '$(DESTDIR_SQ)$(bindir_SQ)/gitk'
+	$(MAKE) -C templates DESTDIR='$(DESTDIR_SQ)' uninstall
+	$(MAKE) -C perl uninstall
+	if test 'z$(bindir_SQ)' != 'z$(gitexecdir_SQ)'; \
+	then \
+		rm -f '$(DESTDIR_SQ)$(gitexecdir_SQ)/git$X'
+		rm -f '$(DESTDIR_SQ)$(gitexecdir_SQ)/git$X'; \
+	fi
+	$(foreach p,$(BUILT_INS), rm -f '$(DESTDIR_SQ)$(gitexecdir_SQ)/$p';)
 
 
 ### Maintainer's dist rules
-- 
1.4.4.1.geeee8

-

From: Johannes Schindelin
Date: Tuesday, December 12, 2006 - 5:25 am

Hi,

see http://article.gmane.org/gmane.comp.version-control.git/8682 for a 
discussion about an uninstall target.

Ciao,
Dscho


-

From: Andy Parkins
Date: Tuesday, December 12, 2006 - 5:51 am

I read that thread, but don't see its relevance.  Have I missed something?

In summary:

"uninstall" is not useful in lieu of a package manager, but for developer 
types (like those on this mailing list) it is useful when you install in the 
wrong place (as I did just before I felt the need for an uninstall recipe).

The thread you linked to seemed to want the uninstall to not have hard-coded 
filenames.  That's what I did.

I assume I've missed something in the linked thread - what was it you wanted 
me to pick up from it?


Andy

-- 
Dr Andy Parkins, M Eng (hons), MIEE
andyparkins@gmail.com
-

From: Johannes Schindelin
Date: Tuesday, December 12, 2006 - 7:15 am

Hi,


The uninstall target _only_ solves the case you mentioned: when you 
installed Git in the wrong place. But then it is fragile: if you put the 
new path into config.mak, or you provided the PREFIX on the command line, 
and possibly do not remember what it was, the uninstall goes wrong.

But then, I do not care at all about that target being in the Makefile or 
not. I'll just ignore it, just as almost everybody else.

Ciao,
Dscho

-

From: Andy Parkins
Date: Tuesday, December 12, 2006 - 8:42 am

Absolutely.  I agree entirely.  The only reason I raised it was because I had 
cause to need it.  The quickest way I found was just to write the missing 
recipe.  As I'd written it, I thought I'd share.  As you say, it has no other 

Until I needed it; I didn't care that it wasn't there.  Even then "need" is 
perhaps too strong a word.  It was handy.  That's it.  If there are strong 
moral objections to it; it doesn't bother me.



Andy
-- 
Dr Andy Parkins, M Eng (hons), MIEE
andyparkins@gmail.com
-

Previous thread: [PATCH] Add comments to update_tree_entry() by Andy Parkins on Monday, December 11, 2006 - 3:13 pm. (1 message)

Next thread: Re: stgit: No patches to pop by Jakub Narebski on Monday, December 11, 2006 - 3:54 pm. (1 message)