diff --git a/include/host.mk b/include/host.mk
index 1130d5b9a623a52682811c3d116b6593793821fd..278ad726ff3d04def5f69f774651ca14fa354132 100644
--- a/include/host.mk
+++ b/include/host.mk
@@ -9,9 +9,9 @@ include $(TMP_DIR)/.host.mk
 
 export TAR
 
-$(TMP_DIR)/.host.mk: $(INCLUDE_DIR)/host.mk
+$(TMP_DIR)/.host.mk: $(TOPDIR)/include/host.mk
+	@mkdir -p $(TMP_DIR)
 	@( \
-		echo -n "BASH:=$(shell which bash)"; \
 		HOST_OS=`uname`; \
 		case "$$HOST_OS" in \
 			Linux) HOST_ARCH=`uname -m`;; \
@@ -29,5 +29,6 @@ $(TMP_DIR)/.host.mk: $(INCLUDE_DIR)/host.mk
 		ZCAT=`which gzcat`; \
 		[ -n "$$ZCAT" -a -x "$$ZCAT" ] || ZCAT=`which zcat`; \
 		echo "ZCAT:=$$ZCAT" >> $@; \
+		echo "BASH:=$(shell which bash)" >> $@; \
 	)
 
diff --git a/include/prereq-build.mk b/include/prereq-build.mk
index 10bc68ae158585f6a0c54dda6d42c43622378a7e..ed8fdb6fceffd0c61d3a7a3f6c6b823ce4b6ecce 100644
--- a/include/prereq-build.mk
+++ b/include/prereq-build.mk
@@ -6,7 +6,6 @@
 #
 
 include $(TOPDIR)/rules.mk
-TMP_DIR:=$(TOPDIR)/tmp
 include $(INCLUDE_DIR)/prereq.mk
 include $(INCLUDE_DIR)/host.mk