Patchwork [Ada] Add support for --program-prefix

login
register
mail settings
Submitter Arnaud Charlet
Date June 14, 2012, 12:49 p.m.
Message ID <20120614124901.GA9012@adacore.com>
Download mbox | patch
Permalink /patch/164921/
State New
Headers show

Comments

Arnaud Charlet - June 14, 2012, 12:49 p.m.
Take into account the prefix specified with --program-prefix when installing
and uninstalling the Ada tools.

Tested on x86_64-pc-linux-gnu, committed on trunk

2012-06-14  Jose Ruiz  <ruiz@adacore.com>

	* gcc-interface/Make-lang.in (ada.install-common, ada.uninstall):
	Use the prefix specified with the --program-prefix configure option
	to determine the install name of the Ada tools.
	(ada.all.cross): Use a for loop to iterate over the set of Ada tools
	instead of duplicate the same processing.
Joseph S. Myers - June 14, 2012, 3:25 p.m.
On Thu, 14 Jun 2012, Arnaud Charlet wrote:

> Take into account the prefix specified with --program-prefix when installing
> and uninstalling the Ada tools.
> 
> Tested on x86_64-pc-linux-gnu, committed on trunk
> 
> 2012-06-14  Jose Ruiz  <ruiz@adacore.com>
> 
> 	* gcc-interface/Make-lang.in (ada.install-common, ada.uninstall):
> 	Use the prefix specified with the --program-prefix configure option
> 	to determine the install name of the Ada tools.
> 	(ada.all.cross): Use a for loop to iterate over the set of Ada tools
> 	instead of duplicate the same processing.

Does this fix bug 864?  If so, you should mention

	PR ada/864

in the ChangeLog entry, and resolve that bug as fixed.
Arnaud Charlet - June 14, 2012, 4:40 p.m.
> > Take into account the prefix specified with --program-prefix when
> > installing
> > and uninstalling the Ada tools.
> > 
> > Tested on x86_64-pc-linux-gnu, committed on trunk
> > 
> > 2012-06-14  Jose Ruiz  <ruiz@adacore.com>
> > 
> > 	* gcc-interface/Make-lang.in (ada.install-common,
> > 	ada.uninstall):
> > 	Use the prefix specified with the --program-prefix configure option
> > 	to determine the install name of the Ada tools.
> > 	(ada.all.cross): Use a for loop to iterate over the set of Ada tools
> > 	instead of duplicate the same processing.
> 
> Does this fix bug 864?  If so, you should mention
> 
> 	PR ada/864
> 
> in the ChangeLog entry, and resolve that bug as fixed.

This was fixed independently of PR 864 (or we would have mentioned it),
but it's indeed related. I suspect there are still issues with the PR (such as
make check not working) though.

Also, the comment 20 still needs to be addressed AFAIK, so clearly PR 864
isn't done yet.

Arno

Patch

Index: gcc-interface/Make-lang.in
===================================================================
--- gcc-interface/Make-lang.in	(revision 188605)
+++ gcc-interface/Make-lang.in	(working copy)
@@ -1,6 +1,6 @@ 
 # Top level -*- makefile -*- fragment for GNU Ada (GNAT).
 #   Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-#   2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
+#   2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
 #   Free Software Foundation, Inc.
 
 #This file is part of GCC.
@@ -79,6 +79,10 @@ 
 	"INSTALL_DATA=$(INSTALL_DATA)"		\
 	"INSTALL_PROGRAM=$(INSTALL_PROGRAM)"
 
+# List of Ada tools to build and install
+ADA_TOOLS=gnatbind gnatchop gnat gnatkr gnatlink gnatls gnatmake \
+          gnatname gnatprep gnatxref gnatfind gnatclean gnatsym
+
 # Say how to compile Ada programs.
 .SUFFIXES: .ada .adb .ads
 
@@ -586,58 +590,12 @@ 
 # Build hooks:
 
 ada.all.cross:
-	-if [ -f gnatbind$(exeext) ] ; \
-	then \
-	  $(MV) gnatbind$(exeext)  gnatbind-cross$(exeext); \
-	fi
-	-if [ -f gnatchop$(exeext) ] ; \
-	then \
-	  $(MV) gnatchop$(exeext)   gnatchop-cross$(exeext); \
-	fi
-	-if [ -f gnat$(exeext) ] ; \
-	then \
-	   $(MV) gnat$(exeext)  gnat-cross$(exeext); \
-	fi
-	-if [ -f gnatkr$(exeext) ] ; \
-	then \
-	  $(MV) gnatkr$(exeext)    gnatkr-cross$(exeext); \
-	fi
-	-if [ -f gnatlink$(exeext) ] ; \
-	then \
-	   $(MV) gnatlink$(exeext)  gnatlink-cross$(exeext); \
-	fi
-	-if [ -f gnatls$(exeext) ] ; \
-	then \
-	  $(MV) gnatls$(exeext)    gnatls-cross$(exeext); \
-	fi
-	-if [ -f gnatmake$(exeext) ] ; \
-	then \
-	   $(MV) gnatmake$(exeext)  gnatmake-cross$(exeext); \
-	fi
-	-if [ -f gnatname$(exeext) ] ; \
-	then \
-	   $(MV) gnatname$(exeext)  gnatname-cross$(exeext); \
-	fi
-	-if [ -f gnatprep$(exeext) ] ; \
-	then \
-	   $(MV) gnatprep$(exeext)  gnatprep-cross$(exeext); \
-	fi
-	-if [ -f gnatxref$(exeext) ] ; \
-	then \
-	   $(MV) gnatxref$(exeext)  gnatxref-cross$(exeext); \
-	fi
-	-if [ -f gnatfind$(exeext) ] ; \
-	then \
-	   $(MV) gnatfind$(exeext)  gnatfind-cross$(exeext); \
-	fi
-	-if [ -f gnatclean$(exeext) ] ; \
-	then \
-	   $(MV) gnatclean$(exeext)  gnatclean-cross$(exeext); \
-	fi
-	-if [ -f gnatsym$(exeext) ] ; \
-	then \
-	   $(MV) gnatsym$(exeext)  gnatsym-cross$(exeext); \
-	fi
+	for tool in $(ADA_TOOLS) ; do \
+	  if [ -f $$tool$(exeext) ] ; \
+	  then \
+	    $(MV) $$tool$(exeext) $$tool-cross$(exeext); \
+	  fi; \
+	done
 
 ada.start.encap:
 ada.rest.encap:
@@ -756,205 +714,33 @@ 
 # Install hooks:
 # gnat1 is installed elsewhere as part of $(COMPILERS).
 
-# Install the binder program as $(target_noncanonical)-gnatbind
-# and also as either gnatbind (if native) or $(tooldir)/bin/gnatbind
-# likewise for gnatf, gnatchop, and gnatlink, gnatkr, gnatmake, gnat,
-# gnatprep, gnatls, gnatxref, gnatfind, gnatname, gnatclean,
-# gnatsym
+# Install the binder program as gnatbind (native) or $(prefix)gnatbind
+# (cross). $(prefix) comes from the --program-prefix configure option,
+# or from the --target option if the former is not specified.
+# Do the same for the rest of the Ada tools (gnatchop, gnat, gnatkr,
+# gnatlink, gnatls, gnatmake, gnatname, gnatprep, gnatxref, gnatfind,
+# gnatclean, gnatsym).
+# gnatsym is only built on some platforms, including VMS.
+# gnatdll is only used on Windows.
+# vxaddr2line is only used for cross VxWorks ports (it calls the underlying
+# cross addr2line).
 ada.install-common:
 	$(MKDIR) $(DESTDIR)$(bindir)
 	-if [ -f gnat1$(exeext) ] ; \
-	 then \
-	  if [ -f gnatbind-cross$(exeext) ] ; \
-	  then \
-	    $(RM) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatbind$(exeext); \
-	    $(INSTALL_PROGRAM) gnatbind-cross$(exeext) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatbind$(exeext); \
-	    if [ -d $(DESTDIR)$(tooldir)/bin/. ] ; then \
-	      rm -f $(DESTDIR)$(tooldir)/bin/gnatbind$(exeext); \
-	      $(INSTALL_PROGRAM) gnatbind-cross$(exeext) $(DESTDIR)$(tooldir)/bin/gnatbind$(exeext); \
-	    fi; \
-	  else \
-	    $(RM) $(DESTDIR)$(bindir)/gnatbind$(exeext); \
-	    $(INSTALL_PROGRAM) gnatbind$(exeext) $(DESTDIR)$(bindir)/gnatbind$(exeext); \
-	  fi ; \
-	fi
-	-if [ -f gnat1$(exeext) ] ; \
 	then \
-	  if [ -f gnatchop-cross$(exeext) ] ; \
-	  then \
-	    $(RM) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatchop$(exeext); \
-	    $(INSTALL_PROGRAM) gnatchop-cross$(exeext) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatchop$(exeext); \
-	    if [ -d $(DESTDIR)$(tooldir)/bin/. ] ; then \
-	       rm -f $(DESTDIR)$(tooldir)/bin/gnatchop$(exeext); \
-	       $(INSTALL_PROGRAM) gnatchop-cross$(exeext) $(DESTDIR)$(tooldir)/bin/gnatchop$(exeext); \
+	  for tool in $(ADA_TOOLS) ; do \
+	    if [ -f $$tool-cross$(exeext) ] ; \
+	    then \
+	      install_name=`echo $$tool|sed '$(program_transform_name)'`$(exeext); \
+	      $(RM) $(DESTDIR)$(bindir)/$$install_name; \
+	      $(INSTALL_PROGRAM) $$tool-cross$(exeext) $(DESTDIR)$(bindir)/$$install_name; \
+	    else \
+	      $(RM) $(DESTDIR)$(bindir)/$$tool$(exeext); \
+	      $(INSTALL_PROGRAM) $$tool$(exeext) $(DESTDIR)$(bindir)/$$tool$(exeext); \
 	    fi ; \
-	  else \
-	    $(RM) $(DESTDIR)$(bindir)/gnatchop$(exeext); \
-	    $(INSTALL_PROGRAM) gnatchop$(exeext) $(DESTDIR)$(bindir)/gnatchop$(exeext); \
-	  fi ; \
-	fi
-	-if [ -f gnat1$(exeext) ] ; \
-	then \
-	  if [ -f gnat-cross$(exeext) ] ; \
-	  then \
-	    $(RM) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnat$(exeext); \
-	    $(INSTALL_PROGRAM) gnat-cross$(exeext) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnat$(exeext); \
-	    if [ -d $(DESTDIR)$(tooldir)/bin/. ] ; then \
-	       rm -f $(DESTDIR)$(tooldir)/bin/gnat$(exeext); \
-	       $(INSTALL_PROGRAM) gnat-cross$(exeext) $(DESTDIR)$(tooldir)/bin/gnat$(exeext); \
-	    fi; \
-	  else \
-	    $(RM) $(DESTDIR)$(bindir)/gnat$(exeext); \
-	    $(INSTALL_PROGRAM) gnat$(exeext) $(DESTDIR)$(bindir)/gnat$(exeext); \
-	  fi ; \
-	fi
-	-if [ -f gnat1$(exeext) ] ; \
-	then \
-	  if [ -f gnatkr-cross$(exeext) ] ; \
-	  then \
-	    $(RM) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatkr$(exeext); \
-	    $(INSTALL_PROGRAM) gnatkr-cross$(exeext) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatkr$(exeext); \
-	    if [ -d $(DESTDIR)$(tooldir)/bin/. ] ; then \
-	       rm -f $(DESTDIR)$(tooldir)/bin/gnatkr$(exeext); \
-	       $(INSTALL_PROGRAM) gnatkr-cross$(exeext) $(DESTDIR)$(tooldir)/bin/gnatkr$(exeext); \
-	    fi; \
-	  else \
-	    $(RM) $(DESTDIR)$(bindir)/gnatkr$(exeext); \
-	    $(INSTALL_PROGRAM) gnatkr$(exeext) $(DESTDIR)$(bindir)/gnatkr$(exeext); \
-	  fi ; \
-	fi
-	-if [ -f gnat1$(exeext) ] ; \
-	then \
-	  if [ -f gnatlink-cross$(exeext) ] ; \
-	  then \
-	    $(RM) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatlink$(exeext); \
-	    $(INSTALL_PROGRAM) gnatlink-cross$(exeext) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatlink$(exeext); \
-	    if [ -d $(DESTDIR)$(tooldir)/bin/. ] ; then \
-	       rm -f $(DESTDIR)$(tooldir)/bin/gnatlink$(exeext); \
-	       $(INSTALL_PROGRAM) gnatlink-cross$(exeext) $(DESTDIR)$(tooldir)/bin/gnatlink$(exeext); \
-	    fi; \
-	  else \
-	    $(RM) $(DESTDIR)$(bindir)/gnatlink$(exeext); \
-	    $(INSTALL_PROGRAM) gnatlink$(exeext) $(DESTDIR)$(bindir)/gnatlink$(exeext); \
-	  fi ; \
-	fi
-	-if [ -f gnat1$(exeext) ] ; \
-	then \
-	  if [ -f gnatls-cross$(exeext) ] ; \
-	  then \
-	    $(RM) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatls$(exeext); \
-	    $(INSTALL_PROGRAM) gnatls-cross$(exeext) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatls$(exeext); \
-	    if [ -d $(DESTDIR)$(tooldir)/bin/. ] ; then \
-	       rm -f $(DESTDIR)$(tooldir)/bin/gnatls$(exeext); \
-	       $(INSTALL_PROGRAM) gnatls-cross$(exeext) $(DESTDIR)$(tooldir)/bin/gnatls$(exeext); \
-	    fi; \
-	  else \
-	    $(RM) $(DESTDIR)$(bindir)/gnatls$(exeext); \
-	    $(INSTALL_PROGRAM) gnatls$(exeext) $(DESTDIR)$(bindir)/gnatls$(exeext); \
-	  fi ; \
-	fi
-	-if [ -f gnat1$(exeext) ] ; \
-	then \
-	  if [ -f gnatmake-cross$(exeext) ] ; \
-	  then \
-	    $(RM) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatmake$(exeext); \
-	    $(INSTALL_PROGRAM) gnatmake-cross$(exeext) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatmake$(exeext); \
-	    if [ -d $(DESTDIR)$(tooldir)/bin/. ] ; then \
-	       rm -f $(DESTDIR)$(tooldir)/bin/gnatmake$(exeext); \
-	       $(INSTALL_PROGRAM) gnatmake-cross$(exeext) $(DESTDIR)$(tooldir)/bin/gnatmake$(exeext); \
-	    fi; \
-	  else \
-	    $(RM) $(DESTDIR)$(bindir)/gnatmake$(exeext); \
-	    $(INSTALL_PROGRAM) gnatmake$(exeext) $(DESTDIR)$(bindir)/gnatmake$(exeext); \
-	  fi ; \
-	fi
-	-if [ -f gnat1$(exeext) ] ; \
-	then \
-	  if [ -f gnatname-cross$(exeext) ] ; \
-	  then \
-	    $(RM) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatname$(exeext); \
-	    $(INSTALL_PROGRAM) gnatname-cross$(exeext) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatname$(exeext); \
-	  else \
-	    $(RM) $(DESTDIR)$(bindir)/gnatname$(exeext); \
-	    $(INSTALL_PROGRAM) gnatname$(exeext) $(DESTDIR)$(bindir)/gnatname$(exeext); \
-	  fi ; \
-	fi
-	-if [ -f gnat1$(exeext) ] ; \
-	then \
-	  if [ -f gnatprep-cross$(exeext) ] ; \
-	  then \
-	    $(RM) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatprep$(exeext); \
-	    $(INSTALL_PROGRAM) gnatprep-cross$(exeext) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatprep$(exeext); \
-	    if [ -d $(DESTDIR)$(tooldir)/bin/. ] ; then \
-	       rm -f $(DESTDIR)$(tooldir)/bin/gnatprep$(exeext); \
-	       $(INSTALL_PROGRAM) gnatprep-cross$(exeext) $(DESTDIR)$(tooldir)/bin/gnatprep$(exeext); \
-	    fi; \
-	  else \
-	    $(RM) $(DESTDIR)$(bindir)/gnatprep$(exeext); \
-	    $(INSTALL_PROGRAM) gnatprep$(exeext) $(DESTDIR)$(bindir)/gnatprep$(exeext); \
-	  fi ; \
-	fi
-	-if [ -f gnat1$(exeext) ] ; \
-	then \
-	  if [ -f gnatxref-cross$(exeext) ] ; \
-	  then \
-	    $(RM) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatxref$(exeext); \
-	    $(INSTALL_PROGRAM) gnatxref-cross$(exeext) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatxref$(exeext); \
-	  else \
-	    $(RM) $(DESTDIR)$(bindir)/gnatxref$(exeext); \
-	    $(INSTALL_PROGRAM) gnatxref$(exeext) $(DESTDIR)$(bindir)/gnatxref$(exeext); \
-	  fi ; \
-	fi
-	-if [ -f gnat1$(exeext) ] ; \
-	then \
-	  if [ -f gnatfind-cross$(exeext) ] ; \
-	  then \
-	    $(RM) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatfind$(exeext); \
-	    $(INSTALL_PROGRAM) gnatfind-cross$(exeext) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatfind$(exeext); \
-	  else \
-	    $(RM) $(DESTDIR)$(bindir)/gnatfind$(exeext); \
-	    $(INSTALL_PROGRAM) gnatfind$(exeext) $(DESTDIR)$(bindir)/gnatfind$(exeext); \
-	  fi ; \
-	fi
-	-if [ -f gnat1$(exeext) ] ; \
-	then \
-	  if [ -f gnatclean-cross$(exeext) ] ; \
-	  then \
-	    $(RM) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatclean$(exeext); \
-	    $(INSTALL_PROGRAM) gnatclean-cross$(exeext) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatclean$(exeext); \
-	  else \
-	    $(RM) $(DESTDIR)$(bindir)/gnatclean$(exeext); \
-	    $(INSTALL_PROGRAM) gnatclean$(exeext) $(DESTDIR)$(bindir)/gnatclean$(exeext); \
-	  fi ; \
-	fi
-#
-# Gnatsym is only built on some platforms, including VMS
-#
-	-if [ -f gnat1$(exeext) ] ; \
-	then \
-	  if [ -f gnatsym-cross$(exeext) ] ; \
-	  then \
-	    $(RM) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatsym$(exeext); \
-	    $(INSTALL_PROGRAM) gnatsym-cross$(exeext) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatsym$(exeext); \
-	  else \
-	    $(RM) $(DESTDIR)$(bindir)/gnatsym$(exeext); \
-	    $(INSTALL_PROGRAM) gnatsym$(exeext) $(DESTDIR)$(bindir)/gnatsym$(exeext); \
-	  fi ; \
-	fi
-#
-# Gnatdll is only used on Windows.
-#
-	-if [ -f gnat1$(exeext) ] ; \
-	then \
-	    $(RM) $(DESTDIR)$(bindir)/gnatdll$(exeext); \
-	    $(INSTALL_PROGRAM) gnatdll$(exeext) $(DESTDIR)$(bindir)/gnatdll$(exeext); \
-	fi
-#
-# vxaddr2line is only used for cross ports (it calls the underlying cross
-# addr2line).
-#
-	-if [ -f gnat1$(exeext) ] ; \
-	then \
+	  done; \
+	  $(RM) $(DESTDIR)$(bindir)/gnatdll$(exeext); \
+	  $(INSTALL_PROGRAM) gnatdll$(exeext) $(DESTDIR)$(bindir)/gnatdll$(exeext); \
 	  if [ -f vxaddr2line$(exeext) ] ; \
 	  then \
 	    $(RM) $(DESTDIR)$(bindir)/vxaddr2line$(exeext); \
@@ -980,50 +766,12 @@ 
 ada.install-plugin:
 
 ada.uninstall:
-	-$(RM) $(DESTDIR)$(bindir)/gnatbind$(exeext)
-	-$(RM) $(DESTDIR)$(bindir)/gnatchop$(exeext)
-	-$(RM) $(DESTDIR)$(bindir)/gnat$(exeext)
-	-$(RM) $(DESTDIR)$(bindir)/gnatfind$(exeext)
-	-$(RM) $(DESTDIR)$(bindir)/gnatdll$(exeext)
-	-$(RM) $(DESTDIR)$(bindir)/gnatkr$(exeext)
-	-$(RM) $(DESTDIR)$(bindir)/gnatlink$(exeext)
-	-$(RM) $(DESTDIR)$(bindir)/gnatls$(exeext)
-	-$(RM) $(DESTDIR)$(bindir)/gnatmake$(exeext)
-	-$(RM) $(DESTDIR)$(bindir)/gnatname$(exeext)
-	-$(RM) $(DESTDIR)$(bindir)/gnatprep$(exeext)
-	-$(RM) $(DESTDIR)$(bindir)/gnatxref$(exeext)
-	-$(RM) $(DESTDIR)$(bindir)/gnatclean$(exeext)
-	-$(RM) $(DESTDIR)$(bindir)/gnatsym$(exeext)
-	-$(RM) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatbind$(exeext)
-	-$(RM) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatchop$(exeext)
-	-$(RM) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnat$(exeext)
-	-$(RM) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatfind$(exeext)
-	-$(RM) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatdll$(exeext)
-	-$(RM) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatkr$(exeext)
-	-$(RM) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatlink$(exeext)
-	-$(RM) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatls$(exeext)
-	-$(RM) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatmake$(exeext)
-	-$(RM) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatname$(exeext)
-	-$(RM) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatprep$(exeext)
-	-$(RM) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatxref$(exeext)
-	-$(RM) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatclean$(exeext)
-	-$(RM) $(DESTDIR)$(bindir)/$(target_noncanonical)-gnatsym$(exeext)
-	-$(RM) $(DESTDIR)$(tooldir)/bin/gnatbind$(exeext)
-	-$(RM) $(DESTDIR)$(tooldir)/bin/gnatchop$(exeext)
-	-$(RM) $(DESTDIR)$(tooldir)/bin/gnat$(exeext)
-	-$(RM) $(DESTDIR)$(tooldir)/bin/gnatfind$(exeext)
+	for tool in $(ADA_TOOLS) ; do \
+	  install_name=`echo $$tool|sed '$(program_transform_name)'`$(exeext); \
+	  -$(RM) $(DESTDIR)$(bindir)/$$install_name; \
+	done
 	-$(RM) $(DESTDIR)$(tooldir)/bin/gnatdll$(exeext)
-	-$(RM) $(DESTDIR)$(tooldir)/bin/gnatkr$(exeext)
-	-$(RM) $(DESTDIR)$(tooldir)/bin/gnatlink$(exeext)
-	-$(RM) $(DESTDIR)$(tooldir)/bin/gnatls$(exeext)
-	-$(RM) $(DESTDIR)$(tooldir)/bin/gnatmake$(exeext)
-	-$(RM) $(DESTDIR)$(tooldir)/bin/gnatname$(exeext)
-	-$(RM) $(DESTDIR)$(tooldir)/bin/gnatprep$(exeext)
-	-$(RM) $(DESTDIR)$(tooldir)/bin/gnatxref$(exeext)
-	-$(RM) $(DESTDIR)$(tooldir)/bin/gnatclean$(exeext)
-	-$(RM) $(DESTDIR)$(tooldir)/bin/gnatsym$(exeext)
-# Gnatchop is only used on VMS
-	-$(RM) $(DESTDIR)$(bindir)/gnatchop$(exeext)
+	-$(RM) $(DESTDIR)$(tooldir)/bin/vxaddr2line$(exeext)
 
 # Clean hooks:
 # A lot of the ancillary files are deleted by the main makefile.