Warning, /network/telepathy-logger-qt/cmake/modules/CompilerWarnings.cmake is written in an unsupported language. File is not indexed.
0001 include(CheckCXXCompilerFlag)
0002 include(CheckCCompilerFlag)
0003
0004 macro(check_lang_compiler_flag lang flag variable)
0005
0006 if(${lang} STREQUAL c)
0007 check_c_compiler_flag(${flag} ${variable})
0008 endif(${lang} STREQUAL c)
0009
0010 if(${lang} STREQUAL cxx)
0011 check_cxx_compiler_flag(${flag} ${variable})
0012 endif(${lang} STREQUAL cxx)
0013
0014 endmacro(check_lang_compiler_flag flag variable)
0015
0016 macro(compiler_warnings ret lang werror_by_default desirable_flags undesirable_flags)
0017 set(warning_flags "")
0018 foreach(flag ${desirable_flags})
0019 check_lang_compiler_flag(${lang} -W${flag} ${flag}_${lang}_result)
0020 if(${${flag}_${lang}_result})
0021 set(warning_flags "${warning_flags} -W${flag}")
0022 endif( ${${flag}_${lang}_result} )
0023 endforeach(flag ${desirable_flags})
0024
0025 check_lang_compiler_flag(${lang} -Werror error_${lang}_result)
0026
0027 if(${error_${lang}_result})
0028 set(error_flags "-Werror")
0029 endif(${error_${lang}_result})
0030
0031 set(all_nowarning_flags_supported 1)
0032
0033 foreach(flag ${undesirable_flags})
0034 check_lang_compiler_flag(${lang} -Wno-${flag} ${flag}_${lang}_result)
0035
0036 if(${${flag}_${lang}_result})
0037 set(warning_flags "${warning_flags} -Wno-${flag}")
0038 else(${${flag}_${lang}_result})
0039 set(all_nowarning_flags_supported 0)
0040 break()
0041 endif(${${flag}_${lang}_result})
0042
0043 check_lang_compiler_flag(${lang} -Wno-error=${flag} noerror_${flag}_${lang}_result)
0044
0045 if(${noerror_${flag}_${lang}_result})
0046 set(error_flags "${error_flags} -Wno-error=${flag}")
0047 endif(${noerror_${flag}_${lang}_result})
0048
0049 endforeach(flag ${undesirable_flags})
0050
0051 if(DISABLE_WERROR)
0052 set(enable_werror 0)
0053 else(DISABLE_WERROR)
0054 set(enable_werror 1)
0055 endif(DISABLE_WERROR)
0056
0057 if(${werror_by_default} AND ${enable_werror} AND ${all_nowarning_flags_supported})
0058 set(${ret} "${warning_flags} ${error_flags}")
0059 else(${werror_by_default} AND ${enable_werror} AND ${all_nowarning_flags_supported})
0060 set(${ret} "${warning_flags}")
0061 endif(${werror_by_default} AND ${enable_werror} AND ${all_nowarning_flags_supported})
0062
0063 endmacro(compiler_warnings ret lang werror_by_default desirable_flags undesirable_flags)