~brianaker/libmemcached/1164440

« back to all changes in this revision

Viewing changes to m4/ax_harden_compiler_flags.m4

  • Committer: Continuous Integration
  • Date: 2012-10-22 05:56:09 UTC
  • mfrom: (1086.1.8 libmemcached-1.0)
  • Revision ID: ci@tangent.org-20121022055609-cbooaw9bcdal4qge
Merge lp:~tangent-org/libmemcached/1.0-build Build: jenkins-Libmemcached-1.0-87

Show diffs side-by-side

added added

removed removed

Lines of Context:
56
56
# AX_APPEND_COMPILE_FLAGS([-fstack-protector-all]) -- Issues on 32bit compile
57
57
# AX_APPEND_COMPILE_FLAGS([-Wlong-long]) -- Don't turn on for compatibility issues memcached_stat_st
58
58
 
59
 
#serial 3
 
59
#serial 4
60
60
 
61
61
  AC_DEFUN([AX_HARDEN_LINKER_FLAGS], [
62
62
      AC_REQUIRE([AX_CHECK_LINK_FLAG])
64
64
      AC_REQUIRE([AX_DEBUG])
65
65
      AC_REQUIRE([AX_CXX_COMPILER_VERSION])
66
66
 
67
 
      ax_append_compile_flags_extra=
68
 
      AS_IF([test "$CLANG" = "yes"],[ax_append_compile_flags_extra="-Werror"])
69
 
 
70
 
      AS_IF([test "$ac_cv_vcs_checkout" = "yes"], [
71
 
          AX_CHECK_LINK_FLAG([-Werror])
72
 
          ax_append_compile_flags_extra=
73
 
          ])
74
 
      AX_CHECK_LINK_FLAG([-z relro -z now],,[$ax_append_compile_flags_extra])
75
 
      AX_CHECK_LINK_FLAG([-pie],,[$ax_append_compile_flags_extra])
 
67
      dnl If we are inside of VCS we append -Werror, otherwise we just use it to test other flags
 
68
      AX_HARDEN_LIB=
 
69
      ax_append_compile_link_flags_extra=
 
70
      AS_IF([test "x$ac_cv_vcs_checkout" = "xyes"],[
 
71
        AX_CHECK_LINK_FLAG([-Werror],[
 
72
          AX_HARDEN_LIB="-Werror $AX_HARDEN_LIB"
 
73
          ])
 
74
        ],[
 
75
        AX_CHECK_LINK_FLAG([-Werror],[
 
76
          ax_append_compile_link_flags_extra='-Werror'
 
77
          ])
 
78
        ])
 
79
 
 
80
      AX_CHECK_LINK_FLAG([-z relro -z now],[
 
81
        AX_HARDEN_LIB="-z relro -z now $AX_HARDEN_LIB"
 
82
      ],,[$ax_append_compile_link_flags_extra])
 
83
 
 
84
      AX_CHECK_LINK_FLAG([-pie],[
 
85
          AX_HARDEN_LIB="-pie $AX_HARDEN_LIB"
 
86
          ],,[$ax_append_compile_link_flags_extra])
 
87
 
 
88
      LIB="$LIB $AX_HARDEN_LIB"
76
89
      ])
77
90
 
78
91
  AC_DEFUN([AX_HARDEN_CC_COMPILER_FLAGS], [
80
93
      AC_REQUIRE([AX_HARDEN_LINKER_FLAGS])
81
94
 
82
95
      AC_LANG_PUSH([C])
83
 
      CFLAGS=
 
96
 
 
97
      ac_cv_warnings_as_errors=no
 
98
      ax_append_compile_cflags_extra=
 
99
      AS_IF([test "$ac_cv_vcs_checkout" = "yes"],[
 
100
        AX_APPEND_COMPILE_FLAGS([-Werror])
 
101
        ac_cv_warnings_as_errors=yes
 
102
        ],[
 
103
        AX_APPEND_COMPILE_FLAGS([-Werror],[ax_append_compile_cflags_extra])
 
104
        ])
84
105
 
85
106
      AX_APPEND_COMPILE_FLAGS([-g])
86
107
      AS_IF([test "$ax_enable_debug" = "yes"], [
87
 
        AX_APPEND_COMPILE_FLAGS([-ggdb],,[$ax_append_compile_flags_extra])
88
 
        AX_APPEND_COMPILE_FLAGS([-O0],,[$ax_append_compile_flags_extra])
89
 
        ],[
90
 
        AX_APPEND_COMPILE_FLAGS([-O2],,[$ax_append_compile_flags_extra])
91
 
        ])
92
 
 
93
 
      ac_cv_warnings_as_errors=no
94
 
      AS_IF([test "$ac_cv_vcs_checkout" = "yes"], [
95
 
        AX_APPEND_COMPILE_FLAGS([-Werror],,[$ax_append_compile_flags_extra])
96
 
        AX_APPEND_COMPILE_FLAGS([-fstack-check],,[$ax_append_compile_flags_extra])
97
 
        ac_cv_warnings_as_errors=yes
98
 
        ],[
99
 
        AX_APPEND_COMPILE_FLAGS([-Wno-pragmas],,[$ax_append_compile_flags_extra])
100
 
        ])
101
 
 
102
 
      AX_APPEND_COMPILE_FLAGS([-Wall],,[$ax_append_compile_flags_extra])
103
 
      AX_APPEND_COMPILE_FLAGS([-Wextra],,[$ax_append_compile_flags_extra])
104
 
      AX_APPEND_COMPILE_FLAGS([-Wunknown-pragmas],,[$ax_append_compile_flags_extra])
105
 
      AX_APPEND_COMPILE_FLAGS([-Wthis-test-should-fail],,[$ax_append_compile_flags_extra])
106
 
      AX_APPEND_COMPILE_FLAGS([-std=c99],,[$ax_append_compile_flags_extra])
 
108
        AX_APPEND_COMPILE_FLAGS([-ggdb],,[$ax_append_compile_cflags_extra])
 
109
        AX_APPEND_COMPILE_FLAGS([-O0],,[$ax_append_compile_cflags_extra])
 
110
        ],[
 
111
        AX_APPEND_COMPILE_FLAGS([-O2],,[$ax_append_compile_cflags_extra])
 
112
        ])
 
113
 
 
114
      AX_APPEND_COMPILE_FLAGS([-fstack-check],,[$ax_append_compile_cflags_extra])
 
115
      AX_APPEND_COMPILE_FLAGS([-Wno-pragmas],,[$ax_append_compile_cflags_extra])
 
116
 
 
117
      AX_APPEND_COMPILE_FLAGS([-Wall],,[$ax_append_compile_cflags_extra])
 
118
      AX_APPEND_COMPILE_FLAGS([-Wextra],,[$ax_append_compile_cflags_extra])
 
119
      AX_APPEND_COMPILE_FLAGS([-Wunknown-pragmas],,[$ax_append_compile_cflags_extra])
 
120
      AX_APPEND_COMPILE_FLAGS([-Wthis-test-should-fail],,[$ax_append_compile_cflags_extra])
 
121
      AX_APPEND_COMPILE_FLAGS([-std=c99],,[$ax_append_compile_cflags_extra])
107
122
      dnl Anything below this comment please keep sorted.
108
 
      AX_APPEND_COMPILE_FLAGS([--param=ssp-buffer-size=1],,[$ax_append_compile_flags_extra])
109
 
      AX_APPEND_COMPILE_FLAGS([-Waddress],,[$ax_append_compile_flags_extra])
110
 
      AX_APPEND_COMPILE_FLAGS([-Warray-bounds],,[$ax_append_compile_flags_extra])
111
 
      AX_APPEND_COMPILE_FLAGS([-Wbad-function-cast],,[$ax_append_compile_flags_extra])
 
123
      AX_APPEND_COMPILE_FLAGS([--param=ssp-buffer-size=1],,[$ax_append_compile_cflags_extra])
 
124
      AX_APPEND_COMPILE_FLAGS([-Waddress],,[$ax_append_compile_cflags_extra])
 
125
      AX_APPEND_COMPILE_FLAGS([-Warray-bounds],,[$ax_append_compile_cflags_extra])
 
126
      AX_APPEND_COMPILE_FLAGS([-Wbad-function-cast],,[$ax_append_compile_cflags_extra])
112
127
      dnl Not in use -Wc++-compat
113
 
      AX_APPEND_COMPILE_FLAGS([-Wchar-subscripts],,[$ax_append_compile_flags_extra])
114
 
      AX_APPEND_COMPILE_FLAGS([-Wcomment],,[$ax_append_compile_flags_extra])
115
 
      AX_APPEND_COMPILE_FLAGS([-Wfloat-equal],,[$ax_append_compile_flags_extra])
116
 
      AX_APPEND_COMPILE_FLAGS([-Wformat-security],,[$ax_append_compile_flags_extra])
117
 
      AX_APPEND_COMPILE_FLAGS([-Wformat=2],,[$ax_append_compile_flags_extra])
118
 
      AX_APPEND_COMPILE_FLAGS([-Wlogical-op],,[$ax_append_compile_flags_extra])
119
 
      AX_APPEND_COMPILE_FLAGS([-Wmaybe-uninitialized],,[$ax_append_compile_flags_extra])
120
 
      AX_APPEND_COMPILE_FLAGS([-Wmissing-field-initializers],,[$ax_append_compile_flags_extra])
121
 
      AX_APPEND_COMPILE_FLAGS([-Wmissing-noreturn],,[$ax_append_compile_flags_extra])
122
 
      AX_APPEND_COMPILE_FLAGS([-Wmissing-prototypes],,[$ax_append_compile_flags_extra])
123
 
      AX_APPEND_COMPILE_FLAGS([-Wnested-externs],,[$ax_append_compile_flags_extra])
124
 
      AX_APPEND_COMPILE_FLAGS([-Wnormalized=id],,[$ax_append_compile_flags_extra])
125
 
      AX_APPEND_COMPILE_FLAGS([-Wold-style-definition],,[$ax_append_compile_flags_extra])
126
 
      AX_APPEND_COMPILE_FLAGS([-Woverride-init],,[$ax_append_compile_flags_extra])
127
 
      AX_APPEND_COMPILE_FLAGS([-Wpointer-arith],,[$ax_append_compile_flags_extra])
128
 
      AX_APPEND_COMPILE_FLAGS([-Wpointer-sign],,[$ax_append_compile_flags_extra])
129
 
      AX_APPEND_COMPILE_FLAGS([-Wredundant-decls],,[$ax_append_compile_flags_extra])
130
 
      AX_APPEND_COMPILE_FLAGS([-Wshadow],,[$ax_append_compile_flags_extra])
131
 
      AX_APPEND_COMPILE_FLAGS([-Wshorten-64-to-32],,[$ax_append_compile_flags_extra])
132
 
      AX_APPEND_COMPILE_FLAGS([-Wsign-compare],,[$ax_append_compile_flags_extra])
133
 
      AX_APPEND_COMPILE_FLAGS([-Wstrict-overflow=1],,[$ax_append_compile_flags_extra])
134
 
      AX_APPEND_COMPILE_FLAGS([-Wstrict-prototypes],,[$ax_append_compile_flags_extra])
135
 
      AX_APPEND_COMPILE_FLAGS([-Wswitch-enum],,[$ax_append_compile_flags_extra])
136
 
      AX_APPEND_COMPILE_FLAGS([-Wundef],,[$ax_append_compile_flags_extra])
137
 
      AX_APPEND_COMPILE_FLAGS([-Wunused-result],,[$ax_append_compile_flags_extra])
138
 
      AX_APPEND_COMPILE_FLAGS([-Wunused-variable],,[$ax_append_compile_flags_extra])
139
 
      AX_APPEND_COMPILE_FLAGS([-Wwrite-strings],,[$ax_append_compile_flags_extra])
140
 
      AX_APPEND_COMPILE_FLAGS([-floop-parallelize-all],,[$ax_append_compile_flags_extra])
141
 
      AX_APPEND_COMPILE_FLAGS([-fwrapv],,[$ax_append_compile_flags_extra])
 
128
      AX_APPEND_COMPILE_FLAGS([-Wchar-subscripts],,[$ax_append_compile_cflags_extra])
 
129
      AX_APPEND_COMPILE_FLAGS([-Wcomment],,[$ax_append_compile_cflags_extra])
 
130
      AX_APPEND_COMPILE_FLAGS([-Wfloat-equal],,[$ax_append_compile_cflags_extra])
 
131
      AX_APPEND_COMPILE_FLAGS([-Wformat-security],,[$ax_append_compile_cflags_extra])
 
132
      AX_APPEND_COMPILE_FLAGS([-Wformat=2],,[$ax_append_compile_cflags_extra])
 
133
      AX_APPEND_COMPILE_FLAGS([-Wlogical-op],,[$ax_append_compile_cflags_extra])
 
134
      AX_APPEND_COMPILE_FLAGS([-Wmaybe-uninitialized],,[$ax_append_compile_cflags_extra])
 
135
      AX_APPEND_COMPILE_FLAGS([-Wmissing-field-initializers],,[$ax_append_compile_cflags_extra])
 
136
      AX_APPEND_COMPILE_FLAGS([-Wmissing-noreturn],,[$ax_append_compile_cflags_extra])
 
137
      AX_APPEND_COMPILE_FLAGS([-Wmissing-prototypes],,[$ax_append_compile_cflags_extra])
 
138
      AX_APPEND_COMPILE_FLAGS([-Wnested-externs],,[$ax_append_compile_cflags_extra])
 
139
      AX_APPEND_COMPILE_FLAGS([-Wnormalized=id],,[$ax_append_compile_cflags_extra])
 
140
      AX_APPEND_COMPILE_FLAGS([-Wold-style-definition],,[$ax_append_compile_cflags_extra])
 
141
      AX_APPEND_COMPILE_FLAGS([-Woverride-init],,[$ax_append_compile_cflags_extra])
 
142
      AX_APPEND_COMPILE_FLAGS([-Wpointer-arith],,[$ax_append_compile_cflags_extra])
 
143
      AX_APPEND_COMPILE_FLAGS([-Wpointer-sign],,[$ax_append_compile_cflags_extra])
 
144
      AX_APPEND_COMPILE_FLAGS([-Wredundant-decls],,[$ax_append_compile_cflags_extra])
 
145
      AX_APPEND_COMPILE_FLAGS([-Wshadow],,[$ax_append_compile_cflags_extra])
 
146
      AX_APPEND_COMPILE_FLAGS([-Wshorten-64-to-32],,[$ax_append_compile_cflags_extra])
 
147
      AX_APPEND_COMPILE_FLAGS([-Wsign-compare],,[$ax_append_compile_cflags_extra])
 
148
      AX_APPEND_COMPILE_FLAGS([-Wstrict-overflow=1],,[$ax_append_compile_cflags_extra])
 
149
      AX_APPEND_COMPILE_FLAGS([-Wstrict-prototypes],,[$ax_append_compile_cflags_extra])
 
150
      AX_APPEND_COMPILE_FLAGS([-Wswitch-enum],,[$ax_append_compile_cflags_extra])
 
151
      AX_APPEND_COMPILE_FLAGS([-Wundef],,[$ax_append_compile_cflags_extra])
 
152
      AX_APPEND_COMPILE_FLAGS([-Wunused-result],,[$ax_append_compile_cflags_extra])
 
153
      AX_APPEND_COMPILE_FLAGS([-Wunused-variable],,[$ax_append_compile_cflags_extra])
 
154
      AX_APPEND_COMPILE_FLAGS([-Wwrite-strings],,[$ax_append_compile_cflags_extra])
 
155
      AX_APPEND_COMPILE_FLAGS([-floop-parallelize-all],,[$ax_append_compile_cflags_extra])
 
156
      AX_APPEND_COMPILE_FLAGS([-fwrapv],,[$ax_append_compile_cflags_extra])
142
157
      AC_LANG_POP
143
 
 
144
158
      ])
145
159
 
146
160
  AC_DEFUN([AX_HARDEN_CXX_COMPILER_FLAGS], [
147
161
      AC_REQUIRE([AX_HARDEN_CC_COMPILER_FLAGS])
148
162
      AC_LANG_PUSH([C++])
149
 
      CXXFLAGS=
150
 
 
151
 
      AX_APPEND_COMPILE_FLAGS([-g],,[$ax_append_compile_flags_extra])
 
163
 
 
164
      ax_append_compile_cxxflags_extra=
 
165
      AS_IF([test "$ac_cv_warnings_as_errors" = "yes"],[
 
166
        AX_APPEND_COMPILE_FLAGS([-Werror])
 
167
        ],[
 
168
        AX_APPEND_COMPILE_FLAGS([-Werror],[ax_append_compile_cxxflags_extra])
 
169
        ])
 
170
 
 
171
      AX_APPEND_COMPILE_FLAGS([-g],,[$ax_append_compile_cxxflags_extra])
152
172
      AS_IF([test "$ax_enable_debug" = "yes" ], [
153
 
        AX_APPEND_COMPILE_FLAGS([-O0],,[$ax_append_compile_flags_extra])
154
 
        AX_APPEND_COMPILE_FLAGS([-ggdb],,[$ax_append_compile_flags_extra])
 
173
        AX_APPEND_COMPILE_FLAGS([-O0],,[$ax_append_compile_cxxflags_extra])
 
174
        AX_APPEND_COMPILE_FLAGS([-ggdb],,[$ax_append_compile_cxxflags_extra])
155
175
        ],[
156
 
        AX_APPEND_COMPILE_FLAGS([-O2],,[$ax_append_compile_flags_extra])
157
 
        AX_APPEND_COMPILE_FLAGS([-D_FORTIFY_SOURCE=2],,[$ax_append_compile_flags_extra])
 
176
        AX_APPEND_COMPILE_FLAGS([-O2],,[$ax_append_compile_cxxflags_extra])
 
177
        AX_APPEND_COMPILE_FLAGS([-D_FORTIFY_SOURCE=2],,[$ax_append_compile_cxxflags_extra])
158
178
        ])
159
179
 
160
180
      AS_IF([test "$ac_cv_vcs_checkout" = "yes" ], [
161
 
        AX_APPEND_COMPILE_FLAGS([-Werror],,[$ax_append_compile_flags_extra])
162
 
        AX_APPEND_COMPILE_FLAGS([-fstack-check],,[$ax_append_compile_flags_extra])
 
181
        AX_APPEND_COMPILE_FLAGS([-Werror],,[$ax_append_compile_cxxflags_extra])
 
182
        AX_APPEND_COMPILE_FLAGS([-fstack-check],,[$ax_append_compile_cxxflags_extra])
163
183
        ],[
164
 
        AX_APPEND_COMPILE_FLAGS([-Wno-pragmas],,[$ax_append_compile_flags_extra])
 
184
        AX_APPEND_COMPILE_FLAGS([-Wno-pragmas],,[$ax_append_compile_cxxflags_extra])
165
185
        ])
166
186
 
167
 
      AX_APPEND_COMPILE_FLAGS([-Wall],,[$ax_append_compile_flags_extra])
168
 
      AX_APPEND_COMPILE_FLAGS([-Wextra],,[$ax_append_compile_flags_extra])
169
 
      AX_APPEND_COMPILE_FLAGS([-Wunknown-pragmas],,[$ax_append_compile_flags_extra])
170
 
      AX_APPEND_COMPILE_FLAGS([-Wthis-test-should-fail],,[$ax_append_compile_flags_extra])
 
187
      AX_APPEND_COMPILE_FLAGS([-Wall],,[$ax_append_compile_cxxflags_extra])
 
188
      AX_APPEND_COMPILE_FLAGS([-Wextra],,[$ax_append_compile_cxxflags_extra])
 
189
      AX_APPEND_COMPILE_FLAGS([-Wunknown-pragmas],,[$ax_append_compile_cxxflags_extra])
 
190
      AX_APPEND_COMPILE_FLAGS([-Wthis-test-should-fail],,[$ax_append_compile_cxxflags_extra])
171
191
      dnl Anything below this comment please keep sorted.
172
 
      AX_APPEND_COMPILE_FLAGS([--param=ssp-buffer-size=1],,[$ax_append_compile_flags_extra])
173
 
      AX_APPEND_COMPILE_FLAGS([-Waddress],,[$ax_append_compile_flags_extra])
174
 
      AX_APPEND_COMPILE_FLAGS([-Warray-bounds],,[$ax_append_compile_flags_extra])
175
 
      AX_APPEND_COMPILE_FLAGS([-Wchar-subscripts],,[$ax_append_compile_flags_extra])
176
 
      AX_APPEND_COMPILE_FLAGS([-Wcomment],,[$ax_append_compile_flags_extra])
177
 
      AX_APPEND_COMPILE_FLAGS([-Wctor-dtor-privacy],,[$ax_append_compile_flags_extra])
178
 
      AX_APPEND_COMPILE_FLAGS([-Wfloat-equal],,[$ax_append_compile_flags_extra])
179
 
      AX_APPEND_COMPILE_FLAGS([-Wformat=2],,[$ax_append_compile_flags_extra])
180
 
      AX_APPEND_COMPILE_FLAGS([-Wmaybe-uninitialized],,[$ax_append_compile_flags_extra])
181
 
      AX_APPEND_COMPILE_FLAGS([-Wmissing-field-initializers],,[$ax_append_compile_flags_extra])
182
 
      AX_APPEND_COMPILE_FLAGS([-Wmissing-noreturn],,[$ax_append_compile_flags_extra])
183
 
      AX_APPEND_COMPILE_FLAGS([-Wlogical-op],,[$ax_append_compile_flags_extra])
184
 
      AX_APPEND_COMPILE_FLAGS([-Wnon-virtual-dtor],,[$ax_append_compile_flags_extra])
185
 
      AX_APPEND_COMPILE_FLAGS([-Wnormalized=id],,[$ax_append_compile_flags_extra])
186
 
      AX_APPEND_COMPILE_FLAGS([-Woverloaded-virtual],,[$ax_append_compile_flags_extra])
187
 
      AX_APPEND_COMPILE_FLAGS([-Wpointer-arith],,[$ax_append_compile_flags_extra])
188
 
      AX_APPEND_COMPILE_FLAGS([-Wredundant-decls],,[$ax_append_compile_flags_extra])
189
 
      AX_APPEND_COMPILE_FLAGS([-Wshadow],,[$ax_append_compile_flags_extra])
190
 
      AX_APPEND_COMPILE_FLAGS([-Wshorten-64-to-32],,[$ax_append_compile_flags_extra])
191
 
      AX_APPEND_COMPILE_FLAGS([-Wsign-compare],,[$ax_append_compile_flags_extra])
192
 
      AX_APPEND_COMPILE_FLAGS([-Wstrict-overflow=1],,[$ax_append_compile_flags_extra])
193
 
      AX_APPEND_COMPILE_FLAGS([-Wswitch-enum],,[$ax_append_compile_flags_extra])
194
 
      AX_APPEND_COMPILE_FLAGS([-Wundef],,[$ax_append_compile_flags_extra])
195
 
      AX_APPEND_COMPILE_FLAGS([-Wc++11-compat],,[$ax_append_compile_flags_extra])
196
 
      AX_APPEND_COMPILE_FLAGS([-Wunused-result],,[$ax_append_compile_flags_extra])
197
 
      AX_APPEND_COMPILE_FLAGS([-Wunused-variable],,[$ax_append_compile_flags_extra])
198
 
      AX_APPEND_COMPILE_FLAGS([-Wwrite-strings],,[$ax_append_compile_flags_extra])
199
 
      AX_APPEND_COMPILE_FLAGS([-Wformat-security],,[$ax_append_compile_flags_extra])
200
 
      AX_APPEND_COMPILE_FLAGS([-floop-parallelize-all],,[$ax_append_compile_flags_extra])
201
 
      AX_APPEND_COMPILE_FLAGS([-fwrapv],,[$ax_append_compile_flags_extra])
 
192
      AX_APPEND_COMPILE_FLAGS([--param=ssp-buffer-size=1],,[$ax_append_compile_cxxflags_extra])
 
193
      AX_APPEND_COMPILE_FLAGS([-Waddress],,[$ax_append_compile_cxxflags_extra])
 
194
      AX_APPEND_COMPILE_FLAGS([-Warray-bounds],,[$ax_append_compile_cxxflags_extra])
 
195
      AX_APPEND_COMPILE_FLAGS([-Wchar-subscripts],,[$ax_append_compile_cxxflags_extra])
 
196
      AX_APPEND_COMPILE_FLAGS([-Wcomment],,[$ax_append_compile_cxxflags_extra])
 
197
      AX_APPEND_COMPILE_FLAGS([-Wctor-dtor-privacy],,[$ax_append_compile_cxxflags_extra])
 
198
      AX_APPEND_COMPILE_FLAGS([-Wfloat-equal],,[$ax_append_compile_cxxflags_extra])
 
199
      AX_APPEND_COMPILE_FLAGS([-Wformat=2],,[$ax_append_compile_cxxflags_extra])
 
200
      AX_APPEND_COMPILE_FLAGS([-Wmaybe-uninitialized],,[$ax_append_compile_cxxflags_extra])
 
201
      AX_APPEND_COMPILE_FLAGS([-Wmissing-field-initializers],,[$ax_append_compile_cxxflags_extra])
 
202
      AX_APPEND_COMPILE_FLAGS([-Wmissing-noreturn],,[$ax_append_compile_cxxflags_extra])
 
203
      AX_APPEND_COMPILE_FLAGS([-Wlogical-op],,[$ax_append_compile_cxxflags_extra])
 
204
      AX_APPEND_COMPILE_FLAGS([-Wnon-virtual-dtor],,[$ax_append_compile_cxxflags_extra])
 
205
      AX_APPEND_COMPILE_FLAGS([-Wnormalized=id],,[$ax_append_compile_cxxflags_extra])
 
206
      AX_APPEND_COMPILE_FLAGS([-Woverloaded-virtual],,[$ax_append_compile_cxxflags_extra])
 
207
      AX_APPEND_COMPILE_FLAGS([-Wpointer-arith],,[$ax_append_compile_cxxflags_extra])
 
208
      AX_APPEND_COMPILE_FLAGS([-Wredundant-decls],,[$ax_append_compile_cxxflags_extra])
 
209
      AX_APPEND_COMPILE_FLAGS([-Wshadow],,[$ax_append_compile_cxxflags_extra])
 
210
      AX_APPEND_COMPILE_FLAGS([-Wshorten-64-to-32],,[$ax_append_compile_cxxflags_extra])
 
211
      AX_APPEND_COMPILE_FLAGS([-Wsign-compare],,[$ax_append_compile_cxxflags_extra])
 
212
      AX_APPEND_COMPILE_FLAGS([-Wstrict-overflow=1],,[$ax_append_compile_cxxflags_extra])
 
213
      AX_APPEND_COMPILE_FLAGS([-Wswitch-enum],,[$ax_append_compile_cxxflags_extra])
 
214
      AX_APPEND_COMPILE_FLAGS([-Wundef],,[$ax_append_compile_cxxflags_extra])
 
215
      AX_APPEND_COMPILE_FLAGS([-Wc++11-compat],,[$ax_append_compile_cxxflags_extra])
 
216
      AX_APPEND_COMPILE_FLAGS([-Wunused-result],,[$ax_append_compile_cxxflags_extra])
 
217
      AX_APPEND_COMPILE_FLAGS([-Wunused-variable],,[$ax_append_compile_cxxflags_extra])
 
218
      AX_APPEND_COMPILE_FLAGS([-Wwrite-strings],,[$ax_append_compile_cxxflags_extra])
 
219
      AX_APPEND_COMPILE_FLAGS([-Wformat-security],,[$ax_append_compile_cxxflags_extra])
 
220
      AX_APPEND_COMPILE_FLAGS([-floop-parallelize-all],,[$ax_append_compile_cxxflags_extra])
 
221
      AX_APPEND_COMPILE_FLAGS([-fwrapv],,[$ax_append_compile_cxxflags_extra])
202
222
      AC_LANG_POP
203
223
  ])
204
224
 
205
225
  AC_DEFUN([AX_HARDEN_COMPILER_FLAGS], [
206
 
      AC_REQUIRE([AX_HARDEN_CXX_COMPILER_FLAGS],,[$ax_append_compile_flags_extra])
 
226
      AC_REQUIRE([AX_HARDEN_CXX_COMPILER_FLAGS])
 
227
      AC_REQUIRE([AX_CC_OTHER_FLAGS])
 
228
      gl_VISIBILITY
 
229
      AS_IF([ test -n "$CFLAG_VISIBILITY" ], [ CPPFLAGS="$CPPFLAGS $CFLAG_VISIBILITY" ])
207
230
      ])
208
231
 
209
232
  AC_DEFUN([AX_CC_OTHER_FLAGS], [
210
233
      AC_REQUIRE([AX_APPEND_COMPILE_FLAGS])
211
 
      AC_REQUIRE([AX_HARDEN_LINKER_FLAGS])
 
234
      AC_REQUIRE([AX_HARDEN_CC_COMPILER_FLAGS])
212
235
 
213
236
      AC_LANG_PUSH([C])
214
 
      AX_APPEND_COMPILE_FLAGS([-pipe],,[$ax_append_compile_flags_extra])
 
237
      AX_APPEND_COMPILE_FLAGS([-pipe],,[$ax_append_compile_cflags_extra])
215
238
      AC_LANG_POP
216
239
      ])