blob: 5b6f1af51def119fb8335a5c99519271ebcc3c21 [file] [log] [blame]
Jeremy Kerr0668cd42018-07-26 13:01:32 +08001# ============================================================================
2# https://www.gnu.org/software/autoconf-archive/ax_append_compile_flags.html
3# ============================================================================
4#
5# SYNOPSIS
6#
7# AX_APPEND_COMPILE_FLAGS([FLAG1 FLAG2 ...], [FLAGS-VARIABLE], [EXTRA-FLAGS], [INPUT])
8#
9# DESCRIPTION
10#
11# For every FLAG1, FLAG2 it is checked whether the compiler works with the
12# flag. If it does, the flag is added FLAGS-VARIABLE
13#
14# If FLAGS-VARIABLE is not specified, the current language's flags (e.g.
15# CFLAGS) is used. During the check the flag is always added to the
16# current language's flags.
17#
18# If EXTRA-FLAGS is defined, it is added to the current language's default
19# flags (e.g. CFLAGS) when the check is done. The check is thus made with
20# the flags: "CFLAGS EXTRA-FLAGS FLAG". This can for example be used to
21# force the compiler to issue an error when a bad flag is given.
22#
23# INPUT gives an alternative input source to AC_COMPILE_IFELSE.
24#
25# NOTE: This macro depends on the AX_APPEND_FLAG and
26# AX_CHECK_COMPILE_FLAG. Please keep this macro in sync with
27# AX_APPEND_LINK_FLAGS.
28#
29# LICENSE
30#
31# Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com>
32#
33# This program is free software: you can redistribute it and/or modify it
34# under the terms of the GNU General Public License as published by the
35# Free Software Foundation, either version 3 of the License, or (at your
36# option) any later version.
37#
38# This program is distributed in the hope that it will be useful, but
39# WITHOUT ANY WARRANTY; without even the implied warranty of
40# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
41# Public License for more details.
42#
43# You should have received a copy of the GNU General Public License along
44# with this program. If not, see <https://www.gnu.org/licenses/>.
45#
46# As a special exception, the respective Autoconf Macro's copyright owner
47# gives unlimited permission to copy, distribute and modify the configure
48# scripts that are the output of Autoconf when processing the Macro. You
49# need not follow the terms of the GNU General Public License when using
50# or distributing such scripts, even though portions of the text of the
51# Macro appear in them. The GNU General Public License (GPL) does govern
52# all other use of the material that constitutes the Autoconf Macro.
53#
54# This special exception to the GPL applies to versions of the Autoconf
55# Macro released by the Autoconf Archive. When you make and distribute a
56# modified version of the Autoconf Macro, you may extend this special
57# exception to the GPL to apply to your modified version as well.
58
59#serial 6
60
61AC_DEFUN([AX_APPEND_COMPILE_FLAGS],
62[AX_REQUIRE_DEFINED([AX_CHECK_COMPILE_FLAG])
63AX_REQUIRE_DEFINED([AX_APPEND_FLAG])
64for flag in $1; do
65 AX_CHECK_COMPILE_FLAG([$flag], [AX_APPEND_FLAG([$flag], [$2])], [], [$3], [$4])
66done
67])dnl AX_APPEND_COMPILE_FLAGS