aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Marangi <ansuelsmth@gmail.com>2023-01-09 14:23:23 +0100
committerChristian Marangi <ansuelsmth@gmail.com>2023-01-09 21:25:06 +0100
commit35135842ca8b633c0f8ee32b70eee92d918345d6 (patch)
treeb72f90c92b7f52a876620cb2b312523e4debc47d
parentf1aa8f34ffe3af1bd922ca8e92f8726dd883b7f9 (diff)
downloadupstream-35135842ca8b633c0f8ee32b70eee92d918345d6.tar.gz
upstream-35135842ca8b633c0f8ee32b70eee92d918345d6.tar.bz2
upstream-35135842ca8b633c0f8ee32b70eee92d918345d6.zip
include/prereq.mk: add RequireCHeader helper
Add RequireCHeader helper that will try to compile a fake c program with the requested header included. This is useful to check if a specific header is present in the system without checking for the specific path. This is a generilized version of the current ncurses test. Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
-rw-r--r--include/prereq.mk12
1 files changed, 12 insertions, 0 deletions
diff --git a/include/prereq.mk b/include/prereq.mk
index 0033535e78..d34539ec30 100644
--- a/include/prereq.mk
+++ b/include/prereq.mk
@@ -63,6 +63,18 @@ define RequireHeader
$$(eval $$(call Require,$(1),$(2)))
endef
+# 1: header to test
+# 2: failure message
+# 3: optional compile time test
+# 4: optional link library test (example -lncurses)
+define RequireCHeader
+ define Require/$(1)
+ echo 'int main(int argc, char **argv) { $(3); return 0; }' | gcc -include $(1) -x c -o $(TMP_DIR)/a.out - $(4)
+ endef
+
+ $$(eval $$(call Require,$(1),$(2)))
+endef
+
define CleanupPython2
define Require/python2-cleanup
if [ -f "$(STAGING_DIR_HOST)/bin/python" ] && \