Use loops; be more tolerant of missing trees

diff --git a/Makefile b/Makefile
index 6c0c472..812ea92 100644
--- a/Makefile
+++ b/Makefile
@@ -56,10 +56,10 @@
 	mkdir -p $(INSTALLROOT)$(INSTALLDIR)/$(KCROSS)bin
 	set -xe ; for d in linux asm-$(ARCH) asm-generic $(ASMARCH); do \
 	  mkdir -p $(INSTALLROOT)$(INSTALLDIR)/$(CROSS)include/$$d ; \
-	  cp -rfL $(KRNLSRC)/include/$$d/.  $(INSTALLROOT)$(INSTALLDIR)/$(KCROSS)include/$$d/. ; \
-	  cp -rfL $(KRNLOBJ)/include/$$d/.  $(INSTALLROOT)$(INSTALLDIR)/$(KCROSS)include/$$d/. ; \
-	  [ ! -d $(KRNLOBJ)/include2/$$d ] || \
-	    cp -rfL $(KRNLOBJ)/include2/$$d/. $(INSTALLROOT)$(INSTALLDIR)/$(KCROSS)include/$$d/. ; \
+	  for r in $(KRNLSRC)/include $(KRNLOBJ)/include $(KRNLOBJ)/include2 ; do \
+	    [ ! -d $$r/$$d ] || \
+	      cp -rfL $$r/$$d/. $(INSTALLROOT)$(INSTALLDIR)/$(KCROSS)include/$$d/. ; \
+	  done ; \
 	done
 	cd $(INSTALLROOT)$(INSTALLDIR)/$(KCROSS)include && ln -sf asm-$(ARCH) asm
 	cp -rf include/. $(INSTALLROOT)$(INSTALLDIR)/$(KCROSS)include/.