@@ -240,20 +240,37 @@ project (Jerry CXX C ASM)
240
240
set (COMPILE_FLAGS_JERRY "${COMPILE_FLAGS_JERRY} -g -gdwarf-4" )
241
241
242
242
# Warnings
243
- set (COMPILE_FLAGS_JERRY "${COMPILE_FLAGS_JERRY} -Wall -Wextra -pedantic" )
244
- set (COMPILE_FLAGS_JERRY "${COMPILE_FLAGS_JERRY} -Wformat-nonliteral -Winit-self -Wno-stack-protector" )
245
- set (COMPILE_FLAGS_JERRY "${COMPILE_FLAGS_JERRY} -Wconversion -Wsign-conversion -Wformat-security" )
246
- set (COMPILE_FLAGS_JERRY "${COMPILE_FLAGS_JERRY} -Wmissing-declarations -Wno-attributes" )
247
- set (COMPILE_FLAGS_JERRY "${COMPILE_FLAGS_JERRY} -Wfatal-errors" )
243
+ macro (append variable value )
244
+ set (${variable} "${${variable} } ${value} " )
245
+ endmacro ()
246
+
247
+ macro (add_jerry_compile_flags )
248
+ foreach (_flag ${ARGV} )
249
+ append (COMPILE_FLAGS_JERRY ${_flag} )
250
+ endforeach ()
251
+ endmacro ()
252
+
253
+ macro (add_jerry_compile_warnings )
254
+ foreach (_warning ${ARGV} )
255
+ add_jerry_compile_flags (-W${_warning} )
256
+ if (CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX )
257
+ add_jerry_compile_flags (-Werror=${_warning} )
258
+ endif ()
259
+ endforeach ()
260
+ endmacro ()
261
+
262
+ add_jerry_compile_warnings (all extra )
263
+ add_jerry_compile_flags (-pedantic )
264
+ add_jerry_compile_warnings (format-nonliteral init-self )
265
+ add_jerry_compile_flags (-Wno-stack-protector )
266
+ add_jerry_compile_warnings (conversion sign-conversion format-security )
267
+ add_jerry_compile_warnings (missing-declarations )
268
+ add_jerry_compile_flags (-Wno-attributes )
269
+ add_jerry_compile_flags (-Wfatal-errors )
248
270
if (CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX )
249
- set (COMPILE_FLAGS_JERRY "${COMPILE_FLAGS_JERRY} -Wlogical-op" )
250
- set (COMPILE_FLAGS_JERRY "${COMPILE_FLAGS_JERRY} -Werror=logical-op" )
251
- set (COMPILE_FLAGS_JERRY "${COMPILE_FLAGS_JERRY} -Werror=all -Werror=extra" )
252
- set (COMPILE_FLAGS_JERRY "${COMPILE_FLAGS_JERRY} -Werror=format-nonliteral -Werror=init-self" )
253
- set (COMPILE_FLAGS_JERRY "${COMPILE_FLAGS_JERRY} -Werror=conversion -Werror=sign-conversion -Werror=format-security" )
254
- set (COMPILE_FLAGS_JERRY "${COMPILE_FLAGS_JERRY} -Werror=missing-declarations" )
271
+ add_jerry_compile_warnings (logical-op )
255
272
else ()
256
- set ( COMPILE_FLAGS_JERRY " ${COMPILE_FLAGS_JERRY} -Wno-nested-anon-types" )
273
+ add_jerry_compile_flags ( -Wno-nested-anon-types )
257
274
endif ()
258
275
259
276
# Static build
0 commit comments