pkg-autotools: add a AUTOCONF_AC_CHECK_FILE_VAL macro
authorThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Fri, 21 Mar 2014 04:34:03 +0000 (05:34 +0100)
committerPeter Korsgaard <peter@korsgaard.com>
Fri, 21 Mar 2014 06:26:53 +0000 (07:26 +0100)
When configure.ac scripts do AC_CHECK_FILE tests, they always fail in
cross-compilation contexts because it is not possible to check for
file existence during the build process. Therefore we have to preseed
the configure environment with ac_cv_file_<foo>=yes variable, <foo>
being the path of the file, where all slashes, dots or dashes have
been replaced by underscores.

In the context of the boot-wrapper-aarch64, we will have to use three
of these variables, with fairly complex paths. So instead of
replicating the logic each time, we create a
AUTOCONF_AC_CHECK_FILE_VAL macro to help defining such variables.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
package/pkg-autotools.mk

index 32ceef208631aef0345e862bce013a1d4b566e82..a6466120b67e5d588a34138fa1a06489a756cb94 100644 (file)
@@ -36,6 +36,16 @@ define CONFIG_UPDATE
        done
 endef
 
+# This function generates the ac_cv_file_<foo> value for a given
+# filename. This is needed to convince configure script doing
+# AC_CHECK_FILE() tests that the file actually exists, since such
+# tests cannot be done in a cross-compilation context. This function
+# takes as argument the path of the file. An example usage is:
+#
+#  FOOBAR_CONF_ENV = \
+#      $(call AUTOCONF_AC_CHECK_FILE_VAL,/dev/random)=yes
+AUTOCONF_AC_CHECK_FILE_VAL = ac_cv_file_$(subst -,_,$(subst /,_,$(subst .,_,$(1))))
+
 ################################################################################
 # inner-autotools-package -- defines how the configuration, compilation and
 # installation of an autotools package should be done, implements a