From 557fe401ac037badcc59f54f3a721071ffde0d07 Mon Sep 17 00:00:00 2001 From: Simon Hausmann Date: Tue, 15 Oct 2013 12:26:24 +0200 Subject: Clean up support library linkage on Android MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * The explicitly linked support libraries like gnustl_shared, etc. can be linked as private libs, there's no need for them to show up in the .prl files of our libraries. * Removed the explicit linkage against libsupc++, which is a static library whos symbols are also available in libgnustl_shared. It is only needed when linking against gnustl_static, which we fortunately don't do. For QtQml on Android this is more than just cleanup. Without the first change, the libgnustl_shared comes early on in the link line, because it is a dependency of for example Qt5Network. Anything that qml.pro itself adds to LIBS comes afterwards. That is not intended, we want libgnustl_shared to come at the end of the link line, in order to make sure that the linker finds an overriding symbol from another library earlier in the link line first. The explicit linkage against libsupc++ affects the same, as that's the library that contains the symbol we want to override locally (__cxa_end_cleanup). (needed for QTBUG-33892) Change-Id: Id6dff733d6610ae8b15aa72f9cf60ae2c7834194 Reviewed-by: Tor Arne Vestbø Reviewed-by: BogDan Vatra --- mkspecs/android-g++/qmake.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'mkspecs/android-g++/qmake.conf') diff --git a/mkspecs/android-g++/qmake.conf b/mkspecs/android-g++/qmake.conf index 0df2509257..11d62a1efb 100644 --- a/mkspecs/android-g++/qmake.conf +++ b/mkspecs/android-g++/qmake.conf @@ -178,7 +178,7 @@ QMAKE_LFLAGS_NOUNDEF = -Wl,--no-undefined QMAKE_LFLAGS_RPATH = -Wl,-rpath= QMAKE_LFLAGS_RPATHLINK = -Wl,-rpath-link= -QMAKE_LIBS = -lgnustl_shared -lsupc++ -llog -lz -lm -ldl -lc -lgcc +QMAKE_LIBS_PRIVATE = -lgnustl_shared -llog -lz -lm -ldl -lc -lgcc QMAKE_LIBS_X11 = QMAKE_LIBS_THREAD = QMAKE_LIBS_EGL = -lEGL -- cgit v1.2.3