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