CMake: Fix QMAKE_LIB_<NAME> variable names in module .pri files

QMake libraries that contain dashes are referenced by QMAKE_USE as is,
but the corresponding QMAKE_LIB_<NAME> variable must be normalized to
contain underscores.

Example from the qmake build:

./mkspecs/modules/qt_lib_waylandclient.pri
11:QT.waylandclient.uses = wayland-client xkbcommon wayland-cursor

./mkspecs/modules/qt_lib_waylandclient_private.pri
12:QMAKE_DEPENDS_WAYLAND_CURSOR_CC = WAYLAND_CLIENT
13:QMAKE_DEPENDS_WAYLAND_CURSOR_LD = WAYLAND_CLIENT
15:QMAKE_LIBS_WAYLAND_CURSOR = -lwayland-cursor

Pick-to: 6.0
Change-Id: If31bd45764d52f97d80d6388503008dc1ffb16ab
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
This commit is contained in:
Joerg Bornemann 2020-12-03 11:53:24 +01:00
parent a5e2f2ddad
commit e32e4898dd

View File

@ -18,6 +18,7 @@ function(qt_generate_qmake_libraries_pri_content module_name output_root_dir out
foreach(lib ${QT_QMAKE_LIBS_FOR_${module_name}}) foreach(lib ${QT_QMAKE_LIBS_FOR_${module_name}})
set(lib_targets ${QT_TARGETS_OF_QMAKE_LIB_${lib}}) set(lib_targets ${QT_TARGETS_OF_QMAKE_LIB_${lib}})
string(TOUPPER ${lib} uclib) string(TOUPPER ${lib} uclib)
string(REPLACE "-" "_" uclib "${uclib}")
set(lib_defines "") set(lib_defines "")
set(lib_incdir "") set(lib_incdir "")
set(lib_libdir "") set(lib_libdir "")