CMake: pro2cmake: Handle LIBS_SUFFIX define correctly
Matches the LIBS_SUFFIX define we use in Android conditions and replaces it with a sane amount of escaped characters. Change-Id: I7d870f992c70b105dd80b6fa94f87d3fa5644006 Reviewed-by: Leander Beernaert <leander.beernaert@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
This commit is contained in:
parent
14546d1816
commit
d2419b0d8c
@ -316,7 +316,7 @@ qt_extend_target(Core CONDITION ANDROID
|
||||
kernel/qsharedmemory_android.cpp
|
||||
kernel/qsystemsemaphore_android.cpp
|
||||
DEFINES
|
||||
LIBS_SUFFIX='\\"_${CMAKE_SYSTEM_PROCESSOR}.so\\"'
|
||||
LIBS_SUFFIX="_${CMAKE_SYSTEM_PROCESSOR}.so"
|
||||
)
|
||||
|
||||
qt_extend_target(Core CONDITION MSVC AND (TEST_architecture_arch STREQUAL "i386")
|
||||
|
@ -427,7 +427,7 @@ qt_extend_target(Core CONDITION ANDROID
|
||||
kernel/qsharedmemory_android.cpp
|
||||
kernel/qsystemsemaphore_android.cpp
|
||||
DEFINES
|
||||
LIBS_SUFFIX="\\\\"_${CMAKE_SYSTEM_PROCESSOR}.so\\\\"" # special case
|
||||
LIBS_SUFFIX="_${CMAKE_SYSTEM_PROCESSOR}.so"
|
||||
)
|
||||
|
||||
qt_extend_target(Core CONDITION MSVC AND (TEST_architecture_arch STREQUAL "i386")
|
||||
|
@ -1956,6 +1956,18 @@ def write_defines(
|
||||
d.replace('=\\\\\\"$$PWD/\\\\\\"', '="${CMAKE_CURRENT_SOURCE_DIR}/"') for d in defines
|
||||
]
|
||||
|
||||
# Handle LIBS_SUFFIX='\\"_$${QT_ARCH}.so\\"'.
|
||||
# The escaping of backslashes is still needed even if it's a raw
|
||||
# string, because backslashes have a special meaning for regular
|
||||
# expressions (escape next char). So we actually expect to match
|
||||
# 2 backslashes in the input string.
|
||||
pattern = r"""([^ ]+)='\\\\"([^ ]*)\\\\"'"""
|
||||
|
||||
# Replace with regular quotes, CMake will escape the quotes when
|
||||
# passing the define to the compiler.
|
||||
replacement = r'\1="\2"'
|
||||
defines = [re.sub(pattern, replacement, d) for d in defines]
|
||||
|
||||
if "qml_debug" in scope.get("CONFIG"):
|
||||
defines.append("QT_QML_DEBUG")
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user