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  621450b6b9a67572e9221406fdf5d8fec530f098 (commit)
       via  0a2d0f095d45ba27a510e2722324b7874541eb52 (commit)
      from  0f04826ae48f4daf0449383dcf99d1f97d41a6b0 (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=621450b6b9a67572e9221406fdf5d8fec530f098
commit 621450b6b9a67572e9221406fdf5d8fec530f098
Merge: 0f04826 0a2d0f0
Author:     Chuck Atkins <chuck.atk...@kitware.com>
AuthorDate: Thu Nov 6 11:19:45 2014 -0500
Commit:     CMake Topic Stage <kwro...@kitware.com>
CommitDate: Thu Nov 6 11:19:45 2014 -0500

    Merge topic 'fix-gcc-hppa' into next
    
    0a2d0f09 Workaround for short jump tables on PA-RISC.


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0a2d0f095d45ba27a510e2722324b7874541eb52
commit 0a2d0f095d45ba27a510e2722324b7874541eb52
Author:     Chuck Atkins <chuck.atk...@kitware.com>
AuthorDate: Tue Nov 4 11:01:56 2014 -0500
Commit:     Chuck Atkins <chuck.atk...@kitware.com>
CommitDate: Thu Nov 6 11:19:18 2014 -0500

    Workaround for short jump tables on PA-RISC.
    
    The PA-RISC architecture requires special options for GCC to prevent
    linker errors when libraries reach a certain size and / or complexity.
    See http://mraw.org/blog/2007/10/10/Linking_on_hppa and gcc
    documentation on -mlong-calls.

diff --git a/CompileFlags.cmake b/CompileFlags.cmake
index 5d86876..e7beb3f 100644
--- a/CompileFlags.cmake
+++ b/CompileFlags.cmake
@@ -65,6 +65,16 @@ if(CMAKE_SYSTEM_NAME MATCHES "HP-UX" AND 
CMAKE_CXX_COMPILER_ID MATCHES "HP")
   endif()
 endif()
 
+# Workaround for short jump tables on PA-RISC
+if(CMAKE_SYSTEM_PROCESSOR MATCHES "^parisc")
+  if(CMAKE_COMPILER_IS_GNUC)
+    set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mlong-calls")
+  endif()
+  if(CMAKE_COMPILER_IS_GNUCXX)
+    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mlong-calls")
+  endif()
+endif()
+
 # use the ansi CXX compile flag for building cmake
 if (CMAKE_ANSI_CXXFLAGS)
   set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_ANSI_CXXFLAGS}")
@@ -74,10 +84,4 @@ if (CMAKE_ANSI_CFLAGS)
   set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${CMAKE_ANSI_CFLAGS}")
 endif ()
 
-# avoid binutils problem with large binaries, e.g. when building CMake in 
debug mode
-# See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50230
-if (CMAKE_SYSTEM_NAME STREQUAL Linux AND CMAKE_SYSTEM_PROCESSOR STREQUAL 
parisc)
-  set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--unique=.text._*")
-endif ()
-
 include (${CMAKE_ROOT}/Modules/CMakeBackwardCompatibilityCXX.cmake)
diff --git a/bootstrap b/bootstrap
index b09023d..f8f6d64 100755
--- a/bootstrap
+++ b/bootstrap
@@ -133,6 +133,7 @@ if echo "${cmake_system}" | grep Linux >/dev/null 2>&1; then
   fi
 else
   cmake_system_linux=false
+  cmake_machine_parisc=false
 fi
 
 # Choose the generator to use for bootstrapping.
@@ -744,11 +745,13 @@ if ${cmake_system_haiku}; then
   cmake_ld_flags="${LDFLAGS} -lroot -lbe"
 fi
 
-if ${cmake_system_linux}; then
-  # avoid binutils problem with large binaries, e.g. when building CMake in 
debug mode
-  # See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50230
-  if ${cmake_machine_parisc}; then
-    cmake_ld_flags="${LDFLAGS} -Wl,--unique=.text._*"
+# Workaround for short jump tables on PA-RISC
+if ${cmake_machine_parisc}; then
+  if ${cmake_c_compiler_is_gnu}; then
+    cmake_c_flags="${CFLAGS} -mlong-calls"
+  fi
+  if ${cmake_cxx_compiler_is_gnu}; then
+    cmake_cxx_flags="${CXXFLAGS} -mlong-calls"
   fi
 fi
 

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

Summary of changes:


hooks/post-receive
-- 
CMake
_______________________________________________
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/mailman/listinfo/cmake-commits

Reply via email to