[Cmake-commits] CMake branch, next, updated. v3.0.0-4246-ga42edc6

Stephen Kelly steveire at gmail.com
Tue Jul 15 05:35:46 EDT 2014


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".

The branch, next has been updated
       via  a42edc6661a8f9a6616a12c83ba9eaff5bfcea65 (commit)
       via  ba858aa50c223980b94e9d78b41a1d315bb4d68c (commit)
      from  ddd524eeba6310b556339471a6830469843d836b (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a42edc6661a8f9a6616a12c83ba9eaff5bfcea65
commit a42edc6661a8f9a6616a12c83ba9eaff5bfcea65
Merge: ddd524e ba858aa
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Tue Jul 15 05:35:45 2014 -0400
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Tue Jul 15 05:35:45 2014 -0400

    Merge topic 'fix-QCC-compile-flags' into next
    
    ba858aa5 QNX: Add missing flags for configurations and artifact creation.


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ba858aa50c223980b94e9d78b41a1d315bb4d68c
commit ba858aa50c223980b94e9d78b41a1d315bb4d68c
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Tue Jul 15 11:01:36 2014 +0200
Commit:     Stephen Kelly <steveire at gmail.com>
CommitDate: Tue Jul 15 11:34:35 2014 +0200

    QNX: Add missing flags for configurations and artifact creation.
    
    Commit v3.0.0-rc1~111^2 (QNX: Introduce QCC compiler id for that
    QNX platform compiler., 2014-01-20) split handling of the QNX QCC
    compiler into a separate compiler-id.  That refactoring results in
    the QCC compiler not using the CMake-compiler-id "GNU", which means
    that the __compiler_gnu macro is no longer executed for it.
    
    Add the missing pieces of the __compiler_gnu macro to the __compiler_qcc
    macro.
    
    It is also necessary to change the language conditional to dereference
    the lang macro parameter, which is another bug introduced by the
    same commit. The extra -lang-c++ flag is only necessary when the CXX
    compiler is specified as 'qcc' instead of 'QCC' in the toolchain file,
    which is why this bug was not noticed before.  The flag is also necessary
    in that case when linking in order to find the appropriate standard
    libraries.  The flag was not previously added when linking executables,
    so linking failed even with CMake 2.8.12 with the lower-case compiler-id.

diff --git a/Modules/Platform/QNX.cmake b/Modules/Platform/QNX.cmake
index cc551bd..ce7eb8a 100644
--- a/Modules/Platform/QNX.cmake
+++ b/Modules/Platform/QNX.cmake
@@ -25,11 +25,28 @@ macro(__compiler_qcc lang)
   set(CMAKE_INCLUDE_SYSTEM_FLAG_${lang} "-Wp,-isystem,")
   set(CMAKE_DEPFILE_FLAGS_${lang} "-Wc,-MMD,<DEPFILE>,-MT,<OBJECT>,-MF,<DEPFILE>")
 
-  if (lang STREQUAL CXX)
+  set(CMAKE_${lang}_COMPILE_OPTIONS_PIE "-fPIE")
+  set(CMAKE_${lang}_COMPILE_OPTIONS_VISIBILITY "-fvisibility=")
+
+  # Initial configuration flags.
+  set(CMAKE_${lang}_FLAGS_INIT "")
+  set(CMAKE_${lang}_FLAGS_DEBUG_INIT "-g")
+  set(CMAKE_${lang}_FLAGS_MINSIZEREL_INIT "-Os -DNDEBUG")
+  set(CMAKE_${lang}_FLAGS_RELEASE_INIT "-O3 -DNDEBUG")
+  set(CMAKE_${lang}_FLAGS_RELWITHDEBINFO_INIT "-O2 -g -DNDEBUG")
+  set(CMAKE_${lang}_CREATE_PREPROCESSED_SOURCE "<CMAKE_${lang}_COMPILER> <DEFINES> <FLAGS> -E <SOURCE> > <PREPROCESSED_SOURCE>")
+  set(CMAKE_${lang}_CREATE_ASSEMBLY_SOURCE "<CMAKE_${lang}_COMPILER> <DEFINES> <FLAGS> -S <SOURCE> -o <ASSEMBLY_SOURCE>")
+
+  if (${lang} STREQUAL CXX)
     # If the toolchain uses qcc for CMAKE_CXX_COMPILER instead of QCC, the
     # default for the driver is not c++.
     set(CMAKE_CXX_COMPILE_OBJECT
     "<CMAKE_CXX_COMPILER> -lang-c++ <DEFINES> <FLAGS> -o <OBJECT> -c <SOURCE>")
+
+    set(CMAKE_CXX_LINK_EXECUTABLE
+      "<CMAKE_CXX_COMPILER> -lang-c++ <FLAGS> <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS> <OBJECTS>  -o <TARGET> <LINK_LIBRARIES>")
+
+    set(CMAKE_CXX_COMPILE_OPTIONS_VISIBILITY_INLINES_HIDDEN "-fvisibility-inlines-hidden")
   endif()
 
 endmacro()

-----------------------------------------------------------------------

Summary of changes:
 Modules/Platform/QNX.cmake |   19 ++++++++++++++++++-
 1 file changed, 18 insertions(+), 1 deletion(-)


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list