| From 697ab0905c59561562dc52cd3b925781e07814f3 Mon Sep 17 00:00:00 2001 |
| From: Philippe Proulx <eeppeliteloop@gmail.com> |
| Date: Wed, 2 Nov 2016 01:40:12 -0400 |
| Subject: [PATCH] m4/ax_lib_elfutils.m4: add cache variable |
| |
| This patch adds an autoconf cache variable to override the |
| AC_RUN_IFELSE() test result when cross-compiling. |
| |
| Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com> |
| [Philippe: grabbed from this pull request: |
| https://github.com/efficios/babeltrace/pull/52 |
| ] |
| --- |
| m4/ax_lib_elfutils.m4 | 32 +++++++++++++++++--------------- |
| 1 file changed, 17 insertions(+), 15 deletions(-) |
| |
| diff --git a/m4/ax_lib_elfutils.m4 b/m4/ax_lib_elfutils.m4 |
| index fcfe06b..f4fcb0d 100644 |
| --- a/m4/ax_lib_elfutils.m4 |
| +++ b/m4/ax_lib_elfutils.m4 |
| @@ -21,7 +21,9 @@ |
| # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
| # |
| # Check the currently installed version of elfutils by using the |
| -# _ELFUTILS_PREREQ macro defined in elfutils/version.h. |
| +# `_ELFUTILS_PREREQ` macro defined in <elfutils/version.h>. |
| +# |
| +# The cache variable for this test is `bt_cv_lib_elfutils`. |
| # |
| # AX_LIB_ELFUTILS(MAJOR_VERSION, MINOR_VERSION, [ACTION-IF-TRUE], [ACTION-IF-FALSE]) |
| # --------------------------------------------------------------------------- |
| @@ -29,7 +31,6 @@ AC_DEFUN([AX_LIB_ELFUTILS], [ |
| m4_pushdef([major_version], [$1]) |
| m4_pushdef([minor_version], [$2]) |
| |
| - AC_MSG_CHECKING([for elfutils version >= major_version.minor_version]) |
| m4_if([$#], 3, [ |
| m4_pushdef([true_action], [$3]) |
| ], [ |
| @@ -43,20 +44,21 @@ AC_DEFUN([AX_LIB_ELFUTILS], [ |
| AC_MSG_ERROR(elfutils >= major_version.minor_version is required)]) |
| ]) |
| |
| - AC_RUN_IFELSE([ |
| - AC_LANG_SOURCE([ |
| - #include <stdlib.h> |
| - #include <elfutils/version.h> |
| + AC_CACHE_CHECK( |
| + [for elfutils version >= major_version.minor_version], |
| + [bt_cv_lib_elfutils], [ |
| + AC_RUN_IFELSE([AC_LANG_SOURCE([ |
| + #include <stdlib.h> |
| + #include <elfutils/version.h> |
| + |
| + int main(void) { |
| + return _ELFUTILS_PREREQ(major_version, minor_version) ? EXIT_SUCCESS : EXIT_FAILURE; |
| + } |
| + ])], [bt_cv_lib_elfutils=yes], [bt_cv_lib_elfutils=no]) |
| + ] |
| + ) |
| |
| - int main(void) { |
| - return _ELFUTILS_PREREQ(major_version, minor_version) ? EXIT_SUCCESS : EXIT_FAILURE; |
| - } |
| - ]) |
| - ], |
| - echo yes |
| - true_action, |
| - echo no |
| - false_action) |
| + AS_IF([test "x$bt_cv_lib_elfutils" = "xyes"], [true_action], [false_action]) |
| |
| m4_popdef([false_action]) |
| m4_popdef([true_action]) |
| -- |
| 2.9.3 |
| |