+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/getopt
+ getopt --help 2>&1 | grep long >/dev/null
+endef
+$(eval $(call Require,getopt, \
+ Please install GNU getopt \
+))
+
+define Require/fileutils
+ gcp --help || cp --help
+endef
+$(eval $(call Require,fileutils, \
+ Please install GNU fileutils \
+))
+