blob: 5038d732804e29d4d99a3a190c66b63ff0f349a2 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
commit e966180fbba1812f8050a743351036d573c19b1f
Author: Ryan Hill <rhill@gentoo.org>
Date: Sun Sep 13 06:17:43 2015 -0600
Fix build failure with GCC 5 and Qt 5.4.2.
Recent versions of GCC (>=5.1) will sometimes emit copy relocations when
compiling with -fPIE, which causes some Qt applications to crash. As of
5.4.2 all code built against Qt must instead be compiled with -fPIC.
Enabling CMAKE_POSITION_INDEPENDENT_CODE will cause cmake to add -fPIC or
-fPIE depending on the type of object being built. The try_compile() test
for -fvisibility=hidden support is creating an executable so -fPIE is used
which makes Qt throw a fit.
Gentoo-Bug: https://bugs.gentoo.org/555866
See-Also: https://bugreports.qt.io/browse/QTBUG-45755
---
cmake/FindPhononInternal.cmake | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
--- a/cmake/FindPhononInternal.cmake
+++ b/cmake/FindPhononInternal.cmake
@@ -109,8 +109,8 @@ else (NOT PHONON_BUILD_PHONON4QT5) # Qt5
find_package(Qt5Widgets)
macro_log_feature(Qt5Widgets_FOUND "Qt5 Widgets (qtbase)" "" "" TRUE)
- if (Qt5_POSITION_INDEPENDENT_CODE)
- set(CMAKE_POSITION_INDEPENDENT_CODE ON)
+ if(Qt5_POSITION_INDEPENDENT_CODE AND CMAKE_CXX_COMPILE_OPTIONS_PIC)
+ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_CXX_COMPILE_OPTIONS_PIC}")
endif()
#---- compat
|