make target/linux/* directories self-contained, use the selected kernel version for...
[openwrt-10.03/.git] / include / prereq-build.mk
index 11403c2fdcaf5ee68bffec541cc0245685f020db..10bc68ae158585f6a0c54dda6d42c43622378a7e 100644 (file)
@@ -6,7 +6,9 @@
 #
 
 include $(TOPDIR)/rules.mk
+TMP_DIR:=$(TOPDIR)/tmp
 include $(INCLUDE_DIR)/prereq.mk
+include $(INCLUDE_DIR)/host.mk
 
 define Require/non-root
        [ "$$(shell whoami)" != "root" ]
@@ -28,6 +30,16 @@ $(eval $(call Require,working-make, \
        Please install GNU make v3.81 or later. (This version has bugs) \
 ))
 
+define Require/case-sensitive-fs
+       rm -f $(TMP_DIR)/test.*
+       touch $(TMP_DIR)/test.fs
+       [ \! -f $(TMP_DIR)/test.FS ]
+endef
+
+$(eval $(call Require,case-sensitive-fs, \
+       OpenWrt can only be built on a case-sensitive filesystem \
+))
+
 define Require/working-gcc
        echo 'int main(int argc, char **argv) { return 0; }' | \
                gcc -x c -o $(TMP_DIR)/a.out -
@@ -93,3 +105,15 @@ $(eval $(call RequireCommand,patch, \
 $(eval $(call RequireCommand,perl, \
        Please install perl. \
 ))
+
+$(eval $(call RequireCommand,wget, \
+       Please install wget. \
+))
+
+define Require/gnutar
+       $(TAR) --version 2>&1 | grep GNU > /dev/null
+endef
+
+$(eval $(call Require,gnutar, \
+       Please install GNU tar. \
+))