diff options
author | Andreas Schneider <asn@cryptomilk.org> | 2011-07-29 11:37:27 +0200 |
---|---|---|
committer | Andreas Schneider <asn@cryptomilk.org> | 2011-07-29 11:37:52 +0200 |
commit | ca47c9b46eebf19189e5bed19aacc1f278bfbf68 (patch) | |
tree | e9047365b89c0ac4655dd2d03728f73c350cd24b /cmake/Modules/CheckCCompilerFlagSSP.cmake | |
parent | 0943ce3a4ac2c9883b3f6bd1dac4c7a2656d4c96 (diff) | |
download | libssh-ca47c9b46eebf19189e5bed19aacc1f278bfbf68.tar.gz libssh-ca47c9b46eebf19189e5bed19aacc1f278bfbf68.tar.xz libssh-ca47c9b46eebf19189e5bed19aacc1f278bfbf68.zip |
cmake: Make CHECK_C_COMPILER_FLAG_SSP a function.
Diffstat (limited to 'cmake/Modules/CheckCCompilerFlagSSP.cmake')
-rw-r--r-- | cmake/Modules/CheckCCompilerFlagSSP.cmake | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/cmake/Modules/CheckCCompilerFlagSSP.cmake b/cmake/Modules/CheckCCompilerFlagSSP.cmake new file mode 100644 index 00000000..2fe43954 --- /dev/null +++ b/cmake/Modules/CheckCCompilerFlagSSP.cmake @@ -0,0 +1,26 @@ +# - Check whether the C compiler supports a given flag in the +# context of a stack checking compiler option. + +# CHECK_C_COMPILER_FLAG_SSP(FLAG VARIABLE) +# +# FLAG - the compiler flag +# VARIABLE - variable to store the result +# +# This actually calls check_c_source_compiles. +# See help for CheckCSourceCompiles for a listing of variables +# that can modify the build. + +# Copyright (c) 2006, Alexander Neundorf, <neundorf@kde.org> +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + + +include(CheckCSourceCompiles) + +function(CHECK_C_COMPILER_FLAG_SSP _FLAG _RESULT) + set(SAFE_CMAKE_REQUIRED_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS}") + set(CMAKE_REQUIRED_DEFINITIONS "${_FLAG}") + check_c_source_compiles("int main(int argc, char **argv) { char buffer[256]; return buffer[argc]=0;}" ${_RESULT}) + set(CMAKE_REQUIRED_DEFINITIONS "${SAFE_CMAKE_REQUIRED_DEFINITIONS}") +endfunction(CHECK_C_COMPILER_FLAG_SSP) |