aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Szakmeister <john@szakmeister.net>2014-12-18 04:01:32 -0500
committerJohn Szakmeister <john@szakmeister.net>2014-12-18 04:01:32 -0500
commit9ebc960cb9f7c74c244e095a84aab7f397e4d4ae (patch)
tree23837f5a137f53b71b54b28d59e88334802d8e81
parent742ada086916212dd29c583b6f758612f9b1aa1d (diff)
parent1c3d093c85dd021eabb87fb67fe942487869480e (diff)
downloadrneovim-9ebc960cb9f7c74c244e095a84aab7f397e4d4ae.tar.gz
rneovim-9ebc960cb9f7c74c244e095a84aab7f397e4d4ae.tar.bz2
rneovim-9ebc960cb9f7c74c244e095a84aab7f397e4d4ae.zip
Merge pull request #1654 from gaurdro/rpm-fortify_source
[RFC] Fix issue 1569: Build fails in rpmbuild environment
-rw-r--r--CMakeLists.txt10
1 files changed, 8 insertions, 2 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 20d653a082..9f41f03241 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -86,10 +86,16 @@ main(void)
" _FORTIFY_SOURCE_ACCEPTABLE)
if(NOT _FORTIFY_SOURCE_ACCEPTABLE)
+ # Extract possible prefix to _FORTIFY_SOURCE (e.g. -Wp,-D_FORTIFY_SOURCE).
+ STRING(REGEX MATCH "[^\ ]+-D_FORTIFY_SOURCE" _FORTIFY_SOURCE_PREFIX "${CMAKE_C_FLAGS}")
+ STRING(REPLACE "-D_FORTIFY_SOURCE" "" _FORTIFY_SOURCE_PREFIX "${_FORTIFY_SOURCE_PREFIX}" )
+ if (NOT _FORTIFY_SOURCE_PREFIX STREQUAL "")
+ message(STATUS "Detected _FORTIFY_SOURCE Prefix=${_FORTIFY_SOURCE_PREFIX}")
+ endif()
# -U in add_definitions doesn't end up in the correct spot, so we add it to
# the flags variable instead.
- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1")
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1")
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${_FORTIFY_SOURCE_PREFIX}-U_FORTIFY_SOURCE ${_FORTIFY_SOURCE_PREFIX}-D_FORTIFY_SOURCE=1")
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${_FORTIFY_SOURCE_PREFIX}-U_FORTIFY_SOURCE ${_FORTIFY_SOURCE_PREFIX}-D_FORTIFY_SOURCE=1")
endif()
add_definitions(-Wall -Wextra -pedantic -Wno-unused-parameter