qt5base-lts/mkspecs/features
Thiago Macieira 72ba0079c3 Add a linker version script to Qt libraries
This linker script is only enabled for systems with GCC or GCC-like
compilers, though technically it should work on the BSDs too (will
enable after testing). For regular modules, this declares one ELF
version "Qt_5" and places all QtCore symbols inside, then it declares
unused ELF versions "Qt_5.x" for each older minor release. For modules
declared "internal_module", all symbols are placed in version
Qt_5_PRIVATE_API.

The big advantage of an ELF version is that, when we do Qt 6, both
versions of QtCore could be loaded in memory without conflicts and all
symbols would be resolved to the correct library. No module can talk to
both at the same time, but this avoids mistakes of loading them
indirectly by plugins.

The extra Qt_5.x versions will be used in the next commit.

Change-Id: I049a653beeb5454c9539ffff13e3fe6f050fdf31
Reviewed-by: Lisandro Damián Nicanor Pérez Meyer <perezmeyer@gmail.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2015-09-13 18:54:17 +00:00
..
android Merge remote-tracking branch 'origin/5.3' into dev 2014-08-04 09:51:36 +02:00
data cmake: Don't mark header-only frameworks with the FRAMEWORK property. 2015-04-27 13:52:53 +00:00
mac Add detection of C++14 and C++1z compiler features 2015-09-05 23:05:40 +00:00
qpa Hide Harfbuzz from the outer world 2013-03-13 14:46:26 +01:00
unix Fix separate_debug_info silent builds 2015-03-13 23:26:54 +00:00
win32 Merge remote-tracking branch 'origin/5.4' into 5.5 2015-04-15 09:09:24 +02:00
winrt WinRT: Link against correct c-runtime 2015-08-07 10:33:01 +00:00
build_pass.prf Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
cmake_functions.prf Remove leading '/' from target paths. 2013-11-27 08:24:50 +01:00
configure.prf Merge remote-tracking branch 'origin/5.3' into 5.4 2014-10-28 18:21:45 +01:00
create_cmake.prf don't overengineer DESTDIR calculation 2015-04-23 09:49:23 +00:00
ctest_testcase_common.prf cmake: Generate INTERFACE targets for include-only modules. 2015-04-15 11:11:51 +00:00
ctest_testcase_installed.prf Only run the cmake test in the install location if not already done. 2013-07-15 21:56:51 +02:00
ctest_testcase.prf Always use forward slashes in paths passed to cmake. 2013-07-10 13:05:01 +02:00
dbusadaptors.prf de-duplicate dbusadaptors.prf vs. dbusinterfaces.prf 2012-08-04 00:52:38 +02:00
dbuscommon.pri dbuscommon.pri: Fix source file dependency 2013-10-30 14:50:02 +01:00
dbusinterfaces.prf de-duplicate dbusadaptors.prf vs. dbusinterfaces.prf 2012-08-04 00:52:38 +02:00
declarative_debug.prf Rename quick1_debug back to declarative_debug 2012-10-04 03:03:00 +02:00
default_post.prf Add detection of C++14 and C++1z compiler features 2015-09-05 23:05:40 +00:00
default_pre.prf Run license checker in qmake 2015-05-27 10:23:10 +00:00
designer_defines.prf dispose of library-bound feature files 2012-06-19 16:39:52 +02:00
device_config.prf make QMAKE_CXX/CROSS_COMPILE verification work under windows 2015-04-21 12:05:50 +00:00
egl.prf purge vestiges of opengl es 1 support 2014-04-04 19:32:21 +02:00
exceptions_off.prf turn off exceptions by default where they aren't required 2012-05-17 05:14:26 +02:00
exceptions.prf turn off exceptions by default where they aren't required 2012-05-17 05:14:26 +02:00
exclusive_builds_post.prf Rewrite qmake's exclusive-build feature 2013-10-25 20:50:51 +02:00
exclusive_builds.prf Rewrite qmake's exclusive-build feature 2013-10-25 20:50:51 +02:00
gcov.prf Integrate gcov support into Qt build system. 2013-08-07 13:38:07 +02:00
include_source_dir.prf Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
incredibuild_xge.prf untangle use of system vs. shell path(-list) semantics 2014-04-30 16:56:54 +02:00
java.prf actually use DIRLIST_SEPARATOR 2014-10-01 10:56:13 +02:00
lex.prf Update/fix the qmake support for (f)lex 2015-07-31 17:04:38 +00:00
link_ltcg.prf Clean up ltcg.prf with variables, including a new static mode 2015-01-11 03:41:48 +01:00
link_pkgconfig.prf make the pkg-config error message more precise 2014-01-07 19:45:15 +01:00
ltcg.prf Clean up ltcg.prf with variables, including a new static mode 2015-01-11 03:41:48 +01:00
moc.prf Fix compilation when including files created in shadow dirs 2014-02-10 20:41:22 +01:00
no_debug_info.prf Make no_debug_info also strip out -gstabs 2014-12-05 14:51:33 +01:00
plugin_bundle.prf Ensure that CONFIG += plugin_bundle will create Mach-O bundles on OSX/iOS 2015-05-24 11:46:14 +00:00
precompile_header.prf Fix build with precompile headers 2014-01-14 10:38:29 +01:00
qfeatures.prf export QT_NO_<foo> equivalents to the build system 2013-10-31 19:49:15 +01:00
qlalr.prf introduce qlalr feature 2014-01-20 09:26:54 +01:00
qml1_module.prf mark a bunch of features as internal 2012-12-12 21:48:02 +01:00
qml1_plugin.prf mark a bunch of features as internal 2012-12-12 21:48:02 +01:00
qml_debug.prf Rename the 'declarative debug support' to 'qml debug support' 2012-03-31 16:33:04 +02:00
qml_module.prf copy qml files only once in debug-and-release builds 2014-09-17 11:40:04 +02:00
qml_plugin.prf embed a VERSIONINFO resource into QML plugins 2015-06-05 13:08:41 +00:00
qmltestcase.prf Distinguish between 'mac' and 'macx' qmake scopes 2013-03-05 20:59:45 +01:00
qt_android_deps.prf Android: Allow modules to specify permissions/features 2013-11-07 16:37:37 +01:00
qt_app.prf Strip bootstrapped binaries of unused sections 2014-05-19 19:33:15 +02:00
qt_build_config.prf Build Qt for OS X and iOS with relative rpath. 2015-05-13 04:09:47 +00:00
qt_build_paths.prf reshuffle path setup 2013-06-10 21:12:24 +02:00
qt_common.prf Add detection of C++14 and C++1z compiler features 2015-09-05 23:05:40 +00:00
qt_config.prf support spaces in build and install dirs 2015-02-17 18:28:00 +00:00
qt_docs_targets.prf mark a bunch of features as internal 2012-12-12 21:48:02 +01:00
qt_docs.prf pass (some) index dirs also during -prepare phase 2014-06-05 17:11:42 +02:00
qt_example_installs.prf clear OBJECTIVE_SOURCES as well 2014-01-20 14:58:48 +01:00
qt_functions.prf remove vestiges of .private_depends 2015-05-22 19:04:19 +00:00
qt_helper_lib.prf restore qt4's qtLibraryTarget() behavior 2015-03-05 12:52:33 +00:00
qt_installs.prf install .lib files for static libs again 2014-06-16 12:42:25 +02:00
qt_module_headers.prf fix distclean targets 2015-04-23 19:16:57 +00:00
qt_module_pris.prf allow modules to declare that they have generated private includes 2015-05-20 18:11:48 +00:00
qt_module.prf Add a linker version script to Qt libraries 2015-09-13 18:54:17 +00:00
qt_parts.prf fix distclean targets 2015-04-23 19:16:57 +00:00
qt_plugin.prf fix usage of wince scope 2015-06-05 10:29:10 +00:00
qt_targets.prf Update copyright headers 2015-02-11 06:49:51 +00:00
qt_tool.prf fix quoting and path separators in qtPrepareTool() 2014-05-23 11:39:25 +02:00
qt.prf Merge remote-tracking branch 'origin/5.5' into dev 2015-07-01 11:05:26 +02:00
resolve_config.prf Don't make Info.plist for debug framework bundles 2014-10-01 10:56:37 +02:00
resolve_target.prf Fix separate_debug_info with unversioned_libname 2015-07-08 14:56:25 +00:00
resources.prf Allow RESOURCES to contain standalone files and collections of files 2015-05-18 15:49:56 +00:00
sanitizer.prf Add support for gcc/clang's sanitize features 2014-10-02 19:45:00 +02:00
silent.prf Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
simd.prf Fix leaking ISA extensions in LTCG builds 2015-03-04 16:45:05 +00:00
spec_post.prf fix installing unix dll symlinks on windows hosts 2015-06-01 13:26:57 +00:00
spec_pre.prf make QMAKE_CXX/CROSS_COMPILE verification work under windows 2015-04-21 12:05:50 +00:00
static_runtime.prf Windows: Add -static-runtime configure option 2015-03-11 09:26:37 +00:00
testcase_targets.prf factor out testcase_targets.prf 2012-12-03 15:56:28 +01:00
testcase.prf Only run tests for the default exclusive builds target 2015-03-12 10:11:35 +00:00
testcocoon.prf fix host vs. makefile directory separator mess 2012-07-28 00:09:45 +02:00
testlib_defines.prf Fixed compilation of auto tests using vc(x)proj files 2015-05-22 14:13:00 +00:00
uic.prf fix rcc & uic .depend_commands 2013-06-15 21:39:34 +02:00
use_c_linker.prf Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
vxworks.prf Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
warn_off.prf Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
warn_on.prf Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
wayland-scanner.prf Fix installation of private headers generated by wayland-scanner 2014-06-23 10:40:21 +02:00
xctest.prf testlib: Don't limit linking to XCTest to Xcode projects 2015-03-30 13:26:58 +00:00
yacc.prf Update/fix the qmake support for yacc 2015-07-20 16:09:11 +00:00