3a0dee8af5cc0f8ba90263e6ea0752e3d462950d
[WebKit-https.git] / Source / autotools / SetupCompilerFlags.m4
1 # Use C99 as the language standard for C code.
2 CFLAGS="$CFLAGS -pthread -std=c99"
3 # Use the C++11 standard. Do not warn about C++11 incompatibilities.
4 CXXFLAGS="$CXXFLAGS -pthread -std=c++11 -Wno-c++11-compat"
5
6 # Clang requires suppression of unused arguments warnings.
7 if test "$c_compiler" = "clang"; then
8     CFLAGS="$CFLAGS -Qunused-arguments"
9 fi
10
11 # libstdc++ is at the moment the only option as the C++ standard library when compiling with Clang.
12 # Suppress unused arguments warnings for C++ files as well.
13 if test "$cxx_compiler" = "clang++"; then
14     CXXFLAGS="$CXXFLAGS -stdlib=libstdc++ -Qunused-arguments"
15 fi
16
17 if test "$host_cpu" = "sh4"; then
18     CXXFLAGS="$CXXFLAGS -mieee -w"
19     CFLAGS="$CFLAGS -mieee -w"
20 fi
21
22 # Add '-g' flag to gcc to build with debug symbols.
23 if test "$enable_debug_symbols" = "min"; then
24     CXXFLAGS="$CXXFLAGS -g1"
25     CFLAGS="$CFLAGS -g1"
26 elif test "$enable_debug_symbols" != "no"; then
27     CXXFLAGS="$CXXFLAGS -g"
28     CFLAGS="$CFLAGS -g"
29 fi
30
31 # Add the appropriate 'O' level for optimized builds.
32 if test "$enable_optimizations" = "yes"; then
33     CXXFLAGS="$CXXFLAGS -O2"
34     CFLAGS="$CFLAGS -O2"
35
36     if test "$c_compiler" = "gcc"; then
37         CFLAGS="$CFLAGS -D_FORTIFY_SOURCE=2"
38     fi
39     if test "$cxx_compiler" = "g++"; then
40         CXXFLAGS="$CXXFLAGS -D_FORTIFY_SOURCE=2"
41     fi
42 else
43     CXXFLAGS="$CXXFLAGS -O0"
44     CFLAGS="$CFLAGS -O0"
45 fi