aboutsummaryrefslogtreecommitdiff
path: root/cmake/Modules/DefineCompilerFlags.cmake
diff options
context:
space:
mode:
authorAndreas Schneider <mail@cynapses.org>2009-02-02 14:44:46 +0000
committerAndreas Schneider <mail@cynapses.org>2009-02-02 14:44:46 +0000
commit460d0b402bac86221fd94f086ef88f94f584df1f (patch)
tree5f04167dabc7bff9273a4dffafcba7b9d7f0a578 /cmake/Modules/DefineCompilerFlags.cmake
parent234706548121cb9acf609b6cce71d53144143968 (diff)
downloadlibssh-460d0b402bac86221fd94f086ef88f94f584df1f.tar.gz
libssh-460d0b402bac86221fd94f086ef88f94f584df1f.tar.xz
libssh-460d0b402bac86221fd94f086ef88f94f584df1f.zip
Add Makefiles for the CMake build system.
git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@203 7dcaeef0-15fb-0310-b436-a5af3365683c
Diffstat (limited to 'cmake/Modules/DefineCompilerFlags.cmake')
-rw-r--r--cmake/Modules/DefineCompilerFlags.cmake49
1 files changed, 49 insertions, 0 deletions
diff --git a/cmake/Modules/DefineCompilerFlags.cmake b/cmake/Modules/DefineCompilerFlags.cmake
new file mode 100644
index 0000000..84b771f
--- /dev/null
+++ b/cmake/Modules/DefineCompilerFlags.cmake
@@ -0,0 +1,49 @@
+# define system dependent compiler flags
+
+include(CheckCCompilerFlag)
+
+if (UNIX AND NOT WIN32)
+ # with -fPIC
+ check_c_compiler_flag("-fPIC" WITH_FPIC)
+ if (WITH_FPIC)
+ add_definitions(-fPIC)
+ endif (WITH_FPIC)
+
+ if (CMAKE_SIZEOF_VOID_P MATCHES "8")
+ # with large file support
+ execute_process(
+ COMMAND
+ getconf LFS64_CFLAGS
+ OUTPUT_VARIABLE
+ _lfs_CFLAGS
+ ERROR_QUIET
+ OUTPUT_STRIP_TRAILING_WHITESPACE
+ )
+ else (CMAKE_SIZEOF_VOID_P MATCHES "8")
+ # with large file support
+ execute_process(
+ COMMAND
+ getconf LFS_CFLAGS
+ OUTPUT_VARIABLE
+ _lfs_CFLAGS
+ ERROR_QUIET
+ OUTPUT_STRIP_TRAILING_WHITESPACE
+ )
+ endif (CMAKE_SIZEOF_VOID_P MATCHES "8")
+
+ string(REGEX REPLACE "[\r\n]" " " ${_lfs_CFLAGS} "${${_lfs_CFLAGS}}")
+
+ add_definitions(${_lfs_CFLAGS})
+ add_definitions(-Wall -Wextra -Wmissing-prototypes -Wdeclaration-after-statement -Wunused)
+
+ check_c_compiler_flag("-fstack-protector" WITH_STACK_PROTECTOR)
+ if (WITH_STACK_PROTECTOR)
+ add_definitions(-fstack-protector)
+ endif (WITH_STACK_PROTECTOR)
+
+ check_c_compiler_flag("-D_FORTIFY_SOURCE=2" WITH_FORTIFY_SOURCE)
+ if (WITH_FORTIFY_SOURCE)
+ add_definitions(-D_FORTIFY_SOURCE=2)
+ endif (WITH_FORTIFY_SOURCE)
+
+endif (UNIX AND NOT WIN32)