ax_check_link_flag.m4 (1956B)
1 # =========================================================================== 2 # https://www.gnu.org/software/autoconf-archive/ax_check_link_flag.html 3 # =========================================================================== 4 # 5 # SYNOPSIS 6 # 7 # AX_CHECK_LINK_FLAG(FLAG, [ACTION-SUCCESS], [ACTION-FAILURE], [EXTRA-FLAGS], [INPUT]) 8 # 9 # DESCRIPTION 10 # 11 # Check whether the given FLAG works with the linker or gives an error. 12 # (Warnings, however, are ignored) 13 # 14 # ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on 15 # success/failure. 16 # 17 # If EXTRA-FLAGS is defined, it is added to the linker's default flags 18 # when the check is done. The check is thus made with the flags: "LDFLAGS 19 # EXTRA-FLAGS FLAG". This can for example be used to force the linker to 20 # issue an error when a bad flag is given. 21 # 22 # INPUT gives an alternative input source to AC_LINK_IFELSE. 23 # 24 # NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. Please keep this 25 # macro in sync with AX_CHECK_{PREPROC,COMPILE}_FLAG. 26 # 27 # LICENSE 28 # 29 # Copyright (c) 2008 Guido U. Draheim <guidod@gmx.de> 30 # Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com> 31 # 32 # Copying and distribution of this file, with or without modification, are 33 # permitted in any medium without royalty provided the copyright notice 34 # and this notice are preserved. This file is offered as-is, without any 35 # warranty. 36 37 #serial 6 38 39 AC_DEFUN([AX_CHECK_LINK_FLAG], 40 [AC_PREREQ(2.64)dnl for _AC_LANG_PREFIX and AS_VAR_IF 41 AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_ldflags_$4_$1])dnl 42 AC_CACHE_CHECK([whether the linker accepts $1], CACHEVAR, [ 43 ax_check_save_flags=$LDFLAGS 44 LDFLAGS="$LDFLAGS $4 $1" 45 AC_LINK_IFELSE([m4_default([$5],[AC_LANG_PROGRAM()])], 46 [AS_VAR_SET(CACHEVAR,[yes])], 47 [AS_VAR_SET(CACHEVAR,[no])]) 48 LDFLAGS=$ax_check_save_flags]) 49 AS_VAR_IF(CACHEVAR,yes, 50 [m4_default([$2], :)], 51 [m4_default([$3], :)]) 52 AS_VAR_POPDEF([CACHEVAR])dnl 53 ])dnl AX_CHECK_LINK_FLAGS