CMake: Add --enable-new-dtags flag support
Remove enable-new-dtags from feature mapping, handle it as regular feature. Regenerate configure.cmake with 'enable-new-dtags' enabled. Check for enable_new_dtags feature, add -Wl,--enable-new-dtags if enabled. Fixes: QTBUG-89013 Pick-to: 6.0 Change-Id: Ice57c02dc85f7f9ecf14e3bc65f31a57b589ce24 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Craig Scott <craig.scott@qt.io>
This commit is contained in:
parent
1021cbf45b
commit
bbebfa0be2
@ -635,6 +635,11 @@ qt_feature("ltcg"
|
|||||||
CONDITION __qt_ltcg_detected
|
CONDITION __qt_ltcg_detected
|
||||||
)
|
)
|
||||||
qt_feature_config("ltcg" QMAKE_PRIVATE_CONFIG)
|
qt_feature_config("ltcg" QMAKE_PRIVATE_CONFIG)
|
||||||
|
qt_feature("enable_new_dtags"
|
||||||
|
LABEL "Using new DTAGS"
|
||||||
|
CONDITION LINUX AND TEST_enable_new_dtags
|
||||||
|
)
|
||||||
|
qt_feature_config("enable_new_dtags" QMAKE_PRIVATE_CONFIG)
|
||||||
qt_feature("enable_gdb_index"
|
qt_feature("enable_gdb_index"
|
||||||
LABEL "Generating GDB index"
|
LABEL "Generating GDB index"
|
||||||
AUTODETECT QT_FEATURE_developer_build
|
AUTODETECT QT_FEATURE_developer_build
|
||||||
|
@ -241,6 +241,10 @@ if(QT_FEATURE_enable_gdb_index)
|
|||||||
target_link_options(PlatformCommonInternal INTERFACE "-Wl,--gdb-index")
|
target_link_options(PlatformCommonInternal INTERFACE "-Wl,--gdb-index")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if(QT_FEATURE_enable_new_dtags)
|
||||||
|
target_link_options(PlatformCommonInternal INTERFACE "-Wl,--enable-new-dtags")
|
||||||
|
endif()
|
||||||
|
|
||||||
function(qt_get_implicit_sse2_genex_condition out_var)
|
function(qt_get_implicit_sse2_genex_condition out_var)
|
||||||
set(is_shared_lib "$<STREQUAL:$<TARGET_PROPERTY:TYPE>,SHARED_LIBRARY>")
|
set(is_shared_lib "$<STREQUAL:$<TARGET_PROPERTY:TYPE>,SHARED_LIBRARY>")
|
||||||
set(is_static_lib "$<STREQUAL:$<TARGET_PROPERTY:TYPE>,STATIC_LIBRARY>")
|
set(is_static_lib "$<STREQUAL:$<TARGET_PROPERTY:TYPE>,STATIC_LIBRARY>")
|
||||||
|
@ -648,6 +648,11 @@ qt_feature("ltcg"
|
|||||||
CONDITION __qt_ltcg_detected
|
CONDITION __qt_ltcg_detected
|
||||||
)
|
)
|
||||||
qt_feature_config("ltcg" QMAKE_PRIVATE_CONFIG)
|
qt_feature_config("ltcg" QMAKE_PRIVATE_CONFIG)
|
||||||
|
qt_feature("enable_new_dtags"
|
||||||
|
LABEL "Using new DTAGS"
|
||||||
|
CONDITION LINUX AND TEST_enable_new_dtags
|
||||||
|
)
|
||||||
|
qt_feature_config("enable_new_dtags" QMAKE_PRIVATE_CONFIG)
|
||||||
qt_feature("enable_gdb_index"
|
qt_feature("enable_gdb_index"
|
||||||
LABEL "Generating GDB index"
|
LABEL "Generating GDB index"
|
||||||
AUTODETECT QT_FEATURE_developer_build
|
AUTODETECT QT_FEATURE_developer_build
|
||||||
|
@ -900,7 +900,6 @@ def get_feature_mapping():
|
|||||||
"condition": "CMAKE_BUILD_TYPE STREQUAL Debug OR Debug IN_LIST CMAKE_CONFIGURATION_TYPES",
|
"condition": "CMAKE_BUILD_TYPE STREQUAL Debug OR Debug IN_LIST CMAKE_CONFIGURATION_TYPES",
|
||||||
},
|
},
|
||||||
"dlopen": {"condition": "UNIX"},
|
"dlopen": {"condition": "UNIX"},
|
||||||
"enable_new_dtags": None,
|
|
||||||
"force_debug_info": {
|
"force_debug_info": {
|
||||||
"autoDetect": "CMAKE_BUILD_TYPE STREQUAL RelWithDebInfo OR RelWithDebInfo IN_LIST CMAKE_CONFIGURATION_TYPES"
|
"autoDetect": "CMAKE_BUILD_TYPE STREQUAL RelWithDebInfo OR RelWithDebInfo IN_LIST CMAKE_CONFIGURATION_TYPES"
|
||||||
},
|
},
|
||||||
|
Loading…
Reference in New Issue
Block a user