This patch adds $(DESTDIR) to xinetd's installation paths, to support 
installation to a cross-compiled RFS area.

The content of this patch was inspired by the OpenWrt project:
https://dev.openwrt.org/browser/packages/net/xinetd/patches/002-destdir.patch

Signed-off-by: Danomi Manchego <danomimanchego123@gmail.com>

diff -urN xinetd-2.3.15.ORIG/Makefile.in xinetd-2.3.15/Makefile.in
--- xinetd-2.3.15.ORIG/Makefile.in	2007-09-20 13:01:52.000000000 -0400
+++ xinetd-2.3.15/Makefile.in	2012-06-18 10:20:00.540864388 -0400
@@ -75,27 +75,27 @@
 
 install: build
 	for i in $(DAEMONDIR) $(BINDIR) $(MANDIR)/man5 $(MANDIR)/man8 ; do \
-	   test -d $$i || mkdir -p $$i ; done
-	$(INSTALL_CMD) -m 755 xinetd/xinetd $(DAEMONDIR)
-	$(INSTALL_CMD) -m 755 xinetd/itox $(DAEMONDIR)
-	$(INSTALL_CMD) -m 755 $(SRCDIR)/xinetd/xconv.pl $(DAEMONDIR)
-	$(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xinetd.conf.man $(MANDIR)/man5/xinetd.conf.5
-	$(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xinetd.log.man $(MANDIR)/man8/xinetd.log.8
-	$(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xinetd.man $(MANDIR)/man8/xinetd.8
-	$(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/itox.8 $(MANDIR)/man8/itox.8
-	$(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xconv.pl.8 $(MANDIR)/man8/xconv.pl.8
+	   test -d $(DESTDIR)$$i || mkdir -p $(DESTDIR)$$i ; done
+	$(INSTALL_CMD) -m 755 xinetd/xinetd $(DESTDIR)$(DAEMONDIR)
+	$(INSTALL_CMD) -m 755 xinetd/itox $(DESTDIR)$(DAEMONDIR)
+	$(INSTALL_CMD) -m 755 $(SRCDIR)/xinetd/xconv.pl $(DESTDIR)$(DAEMONDIR)
+	$(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xinetd.conf.man $(DESTDIR)$(MANDIR)/man5/xinetd.conf.5
+	$(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xinetd.log.man $(DESTDIR)$(MANDIR)/man8/xinetd.log.8
+	$(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xinetd.man $(DESTDIR)$(MANDIR)/man8/xinetd.8
+	$(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/itox.8 $(DESTDIR)$(MANDIR)/man8/itox.8
+	$(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xconv.pl.8 $(DESTDIR)$(MANDIR)/man8/xconv.pl.8
 	@echo "You must put your xinetd.conf in /etc/xinetd.conf"
 	@echo "There is a sample config file in xinetd/sample.conf and you can"
 	@echo "use xconv.pl to convert your old inetd.conf file to an xinetd format"
 
 uninstall:
-	rm -f $(DAEMONDIR)/xinetd
-	rm -f $(DAEMONDIR)/itox
-	rm -f $(DAEMONDIR)/xconv.pl
-	rm -f $(MANDIR)/man5/xinetd.conf.5
-	rm -f $(MANDIR)/man8/xinetd.log.8
-	rm -f $(MANDIR)/man8/xinetd.8
-	rm -f $(MANDIR)/man8/itox.8
+	rm -f $(DESTDIR)$(DAEMONDIR)/xinetd
+	rm -f $(DESTDIR)$(DAEMONDIR)/itox
+	rm -f $(DESTDIR)$(DAEMONDIR)/xconv.pl
+	rm -f $(DESTDIR)$(MANDIR)/man5/xinetd.conf.5
+	rm -f $(DESTDIR)$(MANDIR)/man8/xinetd.log.8
+	rm -f $(DESTDIR)$(MANDIR)/man8/xinetd.8
+	rm -f $(DESTDIR)$(MANDIR)/man8/itox.8
  
 distclean: clean
 	rm -f config.cache config.log Makefile config.status xinetd/itox
