Details
-
Bug
-
Resolution: Done
-
P2: Important
-
5.12.3
-
None
-
-
a12b6e7bf6688021c6af809d024958b59dfa3555 (qt/qtbase/5.12)
Description
On macOS, compiling Qt for debug only (non-framework), the generated CMake files are generated incorrectly.
./configure -debug -no-framework
For example: lib/cmake/Qt5Core/Qt5CoreConfig.cmake contains a reference to libQt5Core*_debug*_debug.5.12.3.dylib instead of libQt5Core_debug.5.12.3.dylib. (The _debug suffix is added twice)
I believe, this is because at the end of qt_module.prf the TARGET variable is set to the result of the call chain qt5LibraryTarget -> qtLibraryTarget -> qtPlatformTargetSuffix (All in qt_functions.prf.
Then, further on in create_cmake.prf (~lines 200-220), TARGET is copied into CMAKE_QT_STEM and is then assumed to be a suffixless name of the target binary in a multi-configuration build.
However, as seen in qtPlatformTargetSuffix, in the case of a macOS single configuration debug build, CMAKE_QT_STEM will already have the _debug suffix added.
Attachments
Issue Links
- relates to
-
QTBUG-38913 Can't link against static Qt5 (missing usage requirements for static libs wrt harfbuzz/glib/others)
- Closed