m4: merge TangentOrg/ddm4
[awesomized/libmemcached] / m4 / ax_save_flags.m4
1 # ===========================================================================
2 # https://www.gnu.org/software/autoconf-archive/ax_save_flags.html
3 # ===========================================================================
4 #
5 # SYNOPSIS
6 #
7 # AX_SAVE_FLAGS([NAMESPACE])
8 #
9 # DESCRIPTION
10 #
11 # Save common compilation flags into temporary variables.
12 #
13 # Compilation flags includes: CPPFLAGS, CFLAGS, CXXFLAGS, LDFLAGS, LIBS,
14 # OBJCFLAGS.
15 #
16 # By default these flags are saved to a global (empty) namespace, but user
17 # could specify a specific NAMESPACE to AX_SAVE_FLAGS macro and latter
18 # restore it by using AX_RESTORE_FLAGS(NAMESPACE).
19 #
20 # AX_SAVE_FLAGS(mypackage)
21 # CPPFLAGS="-Imypackagespath ${CPPFLAGS}"
22 # dnl .. do some detection ...
23 # AX_RESTORE_FLAGS(mypackage)
24 #
25 # LICENSE
26 #
27 # Copyright (c) 2009 Filippo Giunchedi <filippo@esaurito.net>
28 # Copyright (c) 2011 The Board of Trustees of the Leland Stanford Junior University
29 # Copyright (c) 2011 Russ Allbery <rra@stanford.edu>
30 # Copyright (c) 2013 Bastien ROUCARIES <roucaries.bastien+autoconf@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 8
38
39 # list of flag to save
40 AC_DEFUN([_AX_SAVE_FLAGS_LIST],[dnl
41 [CCASFLAGS],dnl
42 [CFLAGS],dnl
43 [CPPFLAGS],dnl
44 [CXXFLAGS],dnl
45 [ERLCFLAGS],dnl
46 [FCFLAGS],dnl
47 [FCLIBS],dnl
48 [FFLAGS],dnl
49 [FLIBS],dnl
50 [GCJFLAGS],dnl
51 [JAVACFLAGS],dnl
52 [LDFLAGS],dnl
53 [LIBS],dnl
54 [OBJCFLAGS],dnl
55 [OBJCXXFLAGS],dnl
56 [UPCFLAGS],dnl
57 [VALAFLAGS]dnl
58 ])
59
60 # save one flag in name space
61 AC_DEFUN([_AX_SAVE_ONE_FLAG],[
62 AS_VAR_PUSHDEF([_ax_save_flag_var], [$2[]_$1[]_ax_save_flags])
63 AS_VAR_COPY(_ax_save_flag_var, $2[])
64 AS_VAR_POPDEF([_ax_save_flag_var])
65 ])
66
67 AC_DEFUN([AX_SAVE_FLAGS],[dnl
68 m4_foreach([FLAG], dnl
69 [_AX_SAVE_FLAGS_LIST()], dnl
70 [_AX_SAVE_ONE_FLAG([$1],FLAG)])
71 ])