diff options
author | Stephen Kelly <steveire@gmail.com> | 2012-05-05 19:11:35 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2012-06-12 19:37:53 (GMT) |
commit | 31d7a0f2e3a717435da9660bcb2c23654171afda (patch) | |
tree | e181c6d1cf90af21d9a06b31d511f2d20aff8600 /Modules/Platform/CYGWIN-GNU.cmake | |
parent | 1ccbfdebb99b167e1da1d9aa8a072adaea6325c6 (diff) | |
download | CMake-31d7a0f2e3a717435da9660bcb2c23654171afda.zip CMake-31d7a0f2e3a717435da9660bcb2c23654171afda.tar.gz CMake-31d7a0f2e3a717435da9660bcb2c23654171afda.tar.bz2 |
Add platform variables for position independent code flags
Store in new platform variables
CMAKE_${lang}_COMPILE_OPTIONS_PIC
CMAKE_${lang}_COMPILE_OPTIONS_PIE
flags for position independent code generation.
In almost all cases, this means duplication of the
CMAKE_SHARED_LIBRARY_${lang}_FLAGS for the _PIC case and using the
assumed pie equivalent for the _PIE case. Note that the GNU compiler
has supported -fPIE since 3.4 and that there is no -fPIC on GNU for
Windows or Cygwin.
There is a possibility that the _PIE variables are not correct.
However, as there is no backwards compatibility to be concerned about
(as the POSITION_INDEPENDENT_CODE property is not used anywhere yet),
the current state suffices.
Diffstat (limited to 'Modules/Platform/CYGWIN-GNU.cmake')
-rw-r--r-- | Modules/Platform/CYGWIN-GNU.cmake | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/Modules/Platform/CYGWIN-GNU.cmake b/Modules/Platform/CYGWIN-GNU.cmake index 5aad45b..eae313a 100644 --- a/Modules/Platform/CYGWIN-GNU.cmake +++ b/Modules/Platform/CYGWIN-GNU.cmake @@ -35,7 +35,10 @@ macro(__cygwin_compiler_gnu lang) set(CMAKE_${lang}_LINK_EXECUTABLE "<CMAKE_${lang}_COMPILER> <FLAGS> <CMAKE_${lang}_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> -Wl,--out-implib,<TARGET_IMPLIB> ${CMAKE_GNULD_IMAGE_VERSION} <LINK_LIBRARIES>") - set(CMAKE_SHARED_LIBRARY_${lang}_FLAGS "") # No -fPIC on cygwin + # No -fPIC on cygwin + set(CMAKE_${lang}_COMPILE_OPTIONS_PIC "") + set(CMAKE_${lang}_COMPILE_OPTIONS_PIE "") + set(CMAKE_SHARED_LIBRARY_${lang}_FLAGS "") # Initialize C link type selection flags. These flags are used when # building a shared library, shared module, or executable that links |