]> git.pond.sub.org Git - empserver/blob - m4/my_append_compile_flags.m4
client: Unbreak standalone build
[empserver] / m4 / my_append_compile_flags.m4
1 # SYNOPSIS
2 #
3 #   MY_APPEND_COMPILE_FLAGS([FLAG1 FLAG2 ...], [FLAGS-VARIABLE], [EXTRA-FLAGS], [INPUT])
4 #
5 # DESCRIPTION
6 #
7 #   For every FLAG1, FLAG2 it is checked whether the compiler works with the
8 #   flag.  If it does, the flag is added FLAGS-VARIABLE
9 #
10 #   Works just like AX_APPEND_COMPILE_FLAGS, except when testing
11 #   -Wno-foo, run the compiler with -Wfoo, because gcc complains about
12 #   unknown -Wno-foo only when other diagnostics are being produced.
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 #   MY_APPEND_LINK_FLAGS.
28 #
29 # Derived from AX_APPEND_COMPILE_FLAGS, covered by the following
30 # copyright and permission notice:
31 #
32 # LICENSE
33 #
34 #   Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com>
35 #
36 #   This program is free software: you can redistribute it and/or modify it
37 #   under the terms of the GNU General Public License as published by the
38 #   Free Software Foundation, either version 3 of the License, or (at your
39 #   option) any later version.
40 #
41 #   This program is distributed in the hope that it will be useful, but
42 #   WITHOUT ANY WARRANTY; without even the implied warranty of
43 #   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
44 #   Public License for more details.
45 #
46 #   You should have received a copy of the GNU General Public License along
47 #   with this program. If not, see <http://www.gnu.org/licenses/>.
48 #
49 #   As a special exception, the respective Autoconf Macro's copyright owner
50 #   gives unlimited permission to copy, distribute and modify the configure
51 #   scripts that are the output of Autoconf when processing the Macro. You
52 #   need not follow the terms of the GNU General Public License when using
53 #   or distributing such scripts, even though portions of the text of the
54 #   Macro appear in them. The GNU General Public License (GPL) does govern
55 #   all other use of the material that constitutes the Autoconf Macro.
56 #
57 #   This special exception to the GPL applies to versions of the Autoconf
58 #   Macro released by the Autoconf Archive. When you make and distribute a
59 #   modified version of the Autoconf Macro, you may extend this special
60 #   exception to the GPL to apply to your modified version as well.
61
62 AC_DEFUN([MY_APPEND_COMPILE_FLAGS],
63 [AX_REQUIRE_DEFINED([AX_CHECK_COMPILE_FLAG])
64 AX_REQUIRE_DEFINED([AX_APPEND_FLAG])
65 for flag in $1; do
66   tflag=`echo "$flag" | sed 's/^-Wno-/-W/'`
67   AX_CHECK_COMPILE_FLAG([$tflag], [AX_APPEND_FLAG([$flag], [$2])], [], [$3], [$4])
68 done
69 ])dnl MY_APPEND_COMPILE_FLAGS