aboutsummaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorDirk Mueller <mueller@kde.org>2008-04-13 12:08:31 +0000
committerDirk Mueller <mueller@kde.org>2008-04-13 12:08:31 +0000
commit5ef94db0b23f14ab98795d6fc950ac3356eab0c0 (patch)
tree81c05d4ca06aa2db73619879e3d572b0dbca8067 /modules
parent914bfdda79cec676705f027f83b1dfb5087616c0 (diff)
downloadextra-cmake-modules-5ef94db0b23f14ab98795d6fc950ac3356eab0c0.tar.gz
extra-cmake-modules-5ef94db0b23f14ab98795d6fc950ac3356eab0c0.tar.bz2
gcc 4.3 has the no-threadsafe-statics bug fixed
svn path=/trunk/KDE/kdelibs/; revision=796352
Diffstat (limited to 'modules')
-rw-r--r--modules/FindKDE4Internal.cmake17
1 files changed, 8 insertions, 9 deletions
diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake
index 2ed38373..42a39034 100644
--- a/modules/FindKDE4Internal.cmake
+++ b/modules/FindKDE4Internal.cmake
@@ -908,15 +908,6 @@ if (CMAKE_COMPILER_IS_GNUCXX)
endif(HAVE_FPIE_SUPPORT)
endif(KDE4_ENABLE_FPIE)
- # save a little by making local statics not threadsafe
- check_cxx_compiler_flag(-fno-threadsafe-statics __KDE_HAVE_NO_THREADSAFE_STATICS)
- if (__KDE_HAVE_NO_THREADSAFE_STATICS)
- # currently disabled for Alpha1 due to what appears
- # to be a compiler bug
- # see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31806
- #set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-threadsafe-statics")
- endif (__KDE_HAVE_NO_THREADSAFE_STATICS)
-
check_cxx_compiler_flag(-Woverloaded-virtual __KDE_HAVE_W_OVERLOADED_VIRTUAL)
if(__KDE_HAVE_W_OVERLOADED_VIRTUAL)
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Woverloaded-virtual")
@@ -937,6 +928,14 @@ if (CMAKE_COMPILER_IS_GNUCXX)
macro_ensure_version("4.1.0" "${_gcc_version}" GCC_IS_NEWER_THAN_4_1)
macro_ensure_version("4.2.0" "${_gcc_version}" GCC_IS_NEWER_THAN_4_2)
+ macro_ensure_version("4.3.0" "${_gcc_version}" GCC_IS_NEWER_THAN_4_3)
+
+ # save a little by making local statics not threadsafe
+ # ### do not enable it for older compilers, see
+ # ### http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31806
+ if (GCC_IS_NEWER_THAN_4_3)
+ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-threadsafe-statics")
+ endif (GCC_IS_NEWER_THAN_4_3)
set(_GCC_COMPILED_WITH_BAD_ALLOCATOR FALSE)
if (GCC_IS_NEWER_THAN_4_1)