$NetBSD: patch-aa,v 1.10 2007/08/17 20:55:34 joerg Exp $

---
 Makefile.in |   74 ++++++++++++++++++++++++++----------------------------------
 1 file changed, 33 insertions(+), 41 deletions(-)

Upstream-Status: Inappropriate [licensing]

Index: mtools-3.9.9/Makefile.in
===================================================================
--- mtools-3.9.9.orig/Makefile.in	2007-10-12 11:18:46.000000000 +0100
+++ mtools-3.9.9/Makefile.in	2007-10-12 11:28:14.000000000 +0100
@@ -195,30 +195,22 @@ html: mtools.html mtools_toc.html
 
 # Don't cd, to avoid breaking install-sh references.
 install-info: info
-	$(top_srcdir)/mkinstalldirs $(infodir)
+	$(top_srcdir)/mkinstalldirs ${DESTDIR}$(infodir)
 	if test -f mtools.info; then \
 	  for i in mtools.info*; do \
-	    $(INSTALL_DATA) $$i $(infodir)/$$i; \
+	    $(INSTALL_DATA) $$i ${DESTDIR}$(infodir)/$$i; \
 	  done; \
 	else \
 	  for i in $(srcdir)/mtools.info*; do \
-	    $(INSTALL_DATA) $$i $(infodir)/`echo $$i | sed 's|^$(srcdir)/||'`; \
+	    $(INSTALL_DATA) $$i ${DESTDIR}$(infodir)/`echo $$i | sed 's|^$(srcdir)/||'`; \
 	  done; \
 	fi; \
-	if [ -n "$(INSTALL_INFO)" ] ; then \
-		if [ -f $(infodir)/dir.info ] ; then \
-			$(INSTALL_INFO) $(infodir)/mtools.info $(infodir)/dir.info; \
-		fi; \
-		if [ -f $(infodir)/dir ] ; then \
-			$(INSTALL_INFO) $(infodir)/mtools.info $(infodir)/dir; \
-		fi; \
-	fi
 
 uninstall-info:
 	cd $(infodir) && rm -f mtools.info*
 
-install:	$(bindir)/mtools @BINFLOPPYD@ install-man install-links \
-		$(bindir)/mkmanifest install-scripts install-info
+install:	${DESTDIR}$(bindir)/mtools ${DESTDIR}$(bindir)/floppyd install-man install-links \
+		${DESTDIR}$(bindir)/mkmanifest install-scripts install-info
 
 uninstall:	uninstall-bin uninstall-man uninstall-links \
 		uninstall-scripts
@@ -228,52 +220,52 @@ distclean: clean texclean
 maintainer-clean: distclean
 
 
-$(bindir)/floppyd: floppyd
-	$(top_srcdir)/mkinstalldirs $(bindir)
-	$(INSTALL_PROGRAM) floppyd $(bindir)/floppyd
+${DESTDIR}$(bindir)/floppyd: floppyd
+	$(top_srcdir)/mkinstalldirs ${DESTDIR}$(bindir)
+	$(INSTALL_PROGRAM) floppyd ${DESTDIR}$(bindir)/floppyd
 
-$(bindir)/floppyd_installtest: floppyd_installtest
-	$(top_srcdir)/mkinstalldirs $(bindir)
-	$(INSTALL_PROGRAM) floppyd_installtest $(bindir)/floppyd_installtest
+${DESTDIR}$(bindir)/floppyd_installtest: floppyd_installtest
+	$(top_srcdir)/mkinstalldirs ${DESTDIR}$(bindir)
+	$(INSTALL_PROGRAM) floppyd_installtest ${DESTDIR}$(bindir)/floppyd_installtest
 
-$(bindir)/mtools: mtools
-	$(top_srcdir)/mkinstalldirs $(bindir)
-	$(INSTALL_PROGRAM) mtools $(bindir)/mtools
+${DESTDIR}$(bindir)/mtools: mtools
+	$(top_srcdir)/mkinstalldirs ${DESTDIR}$(bindir)
+	$(INSTALL_PROGRAM) mtools ${DESTDIR}$(bindir)/mtools
 
-$(bindir)/mkmanifest: mkmanifest
-	$(top_srcdir)/mkinstalldirs $(bindir)
-	$(INSTALL_PROGRAM) mkmanifest $(bindir)/mkmanifest
+${DESTDIR}$(bindir)/mkmanifest: mkmanifest
+	$(top_srcdir)/mkinstalldirs ${DESTDIR}$(bindir)
+	$(INSTALL_PROGRAM) mkmanifest ${DESTDIR}$(bindir)/mkmanifest
 
 #$(ETCDIR)/mtools: mtools.etc
 #	cp mtools.etc $(ETCDIR)/mtools
 
-install-links: $(bindir)/mtools
+install-links: ${DESTDIR}$(bindir)/mtools
 	@for j in $(LINKS); do \
-		rm -f $(bindir)/$$j ; \
-		$(LN_S) mtools $(bindir)/$$j ; \
-		echo $(bindir)/$$j ; \
+		rm -f ${DESTDIR}$(bindir)/$$j ; \
+		$(LN_S) mtools ${DESTDIR}$(bindir)/$$j ; \
+		echo ${DESTDIR}$(bindir)/$$j ; \
 	done
 
 ## "z" is the older version of "gz"; the name is just *too* short
-install-scripts: $(bindir)/mtools
-	@$(top_srcdir)/mkinstalldirs $(bindir)
+install-scripts: ${DESTDIR}$(bindir)/mtools
+	@$(top_srcdir)/mkinstalldirs ${DESTDIR}$(bindir)
 	@for j in $(SCRIPTS) ; do \
-		$(INSTALL_PROGRAM) $(srcdir)/scripts/$$j $(bindir)/$$j ; \
-		echo $(bindir)/$$j ; \
+		$(INSTALL_SCRIPT) $(srcdir)/scripts/$$j ${DESTDIR}$(bindir)/$$j ; \
+		echo ${DESTDIR}$(bindir)/$$j ; \
 	done
-	rm -f $(bindir)/lz
-	$(LN_S) uz $(bindir)/lz
+	rm -f ${DESTDIR}$(bindir)/lz
+	$(LN_S) uz ${DESTDIR}$(bindir)/lz
 
 install-man:
-	@$(top_srcdir)/mkinstalldirs $(MAN1DIR)
+	@$(top_srcdir)/mkinstalldirs ${DESTDIR}$(MAN1DIR)
 	@for j in $(MAN1); do \
-		$(INSTALL_DATA) $(srcdir)/$$j $(MAN1DIR)/$$j ; \
-		echo $(MAN1DIR)/$$j ; \
+		$(INSTALL_DATA) $(srcdir)/$$j ${DESTDIR}$(MAN1DIR)/$$j ; \
+		echo ${DESTDIR}$(MAN1DIR)/$$j ; \
 	done
-	@$(top_srcdir)/mkinstalldirs $(MAN5DIR)
+	@$(top_srcdir)/mkinstalldirs ${DESTDIR}$(MAN5DIR)
 	@for j in $(MAN5); do \
-		$(INSTALL_DATA) $(srcdir)/$$j $(MAN5DIR)/$$j ; \
-		echo $(MAN5DIR)/$$j ; \
+		$(INSTALL_DATA) $(srcdir)/$$j ${DESTDIR}$(MAN5DIR)/$$j ; \
+		echo ${DESTDIR}$(MAN5DIR)/$$j ; \
 	done
 
 uninstall-bin:
