| diff -Naur qt-everywhere-src-5.12.4-orig/qtbase/mkspecs/common/g++-win32.conf qt-everywhere-src-5.12.4/qtbase/mkspecs/common/g++-win32.conf |
| --- qt-everywhere-src-5.12.4-orig/qtbase/mkspecs/common/g++-win32.conf 2019-06-15 15:09:10.556066900 +0300 |
| +++ qt-everywhere-src-5.12.4/qtbase/mkspecs/common/g++-win32.conf 2019-06-15 15:09:21.226485600 +0300 |
| @@ -63,7 +63,7 @@ |
| QMAKE_EXTENSION_SHLIB = dll |
| QMAKE_PREFIX_STATICLIB = lib |
| QMAKE_EXTENSION_STATICLIB = a |
| -QMAKE_LIB_EXTENSIONS = a dll.a |
| +QMAKE_EXTENSION_IMPORTLIB = dll.a |
| |
| PKG_CONFIG = $${CROSS_COMPILE}pkg-config |
| QMAKE_PKG_CONFIG = $${CROSS_COMPILE}pkg-config |
| diff --git a/mingw-w64-qt5-base/src/qtbase-everywhere-src-5.14.2/mkspecs/features/create_cmake.prf b/mingw-w64-qt5-base/src/qtbase-everywhere-src-5.14.2/mkspecs/features/create_cmake.prf |
| index 0e71fd001..61d225310 100644 |
| --- a/qtbase/mkspecs/features/create_cmake.prf |
| +++ b/qtbase/mkspecs/features/create_cmake.prf |
| @@ -328,8 +328,14 @@ mac { |
| CMAKE_WINMAIN_FILE_LOCATION_DEBUG = libqtmain$${QT_LIBINFIX}$${debug_suffix}.a |
| CMAKE_WINMAIN_FILE_LOCATION_RELEASE = libqtmain$${QT_LIBINFIX}.a |
| |
| - CMAKE_IMPLIB_FILE_LOCATION_DEBUG = lib$${CMAKE_QT_STEM}$${debug_suffix}.a |
| - CMAKE_IMPLIB_FILE_LOCATION_RELEASE = lib$${CMAKE_QT_STEM}.a |
| + !isEmpty(CMAKE_STATIC_TYPE) { |
| + CMAKE_IMPLIB_FILE_LOCATION_DEBUG = lib$${CMAKE_QT_STEM}$${debug_suffix}.a |
| + CMAKE_IMPLIB_FILE_LOCATION_RELEASE = lib$${CMAKE_QT_STEM}.a |
| + } else { |
| + isEmpty(QMAKE_EXTENSION_IMPORTLIB): QMAKE_EXTENSION_IMPORTLIB = dll.a |
| + CMAKE_IMPLIB_FILE_LOCATION_DEBUG = lib$${CMAKE_QT_STEM}$${debug_suffix}.$${QMAKE_EXTENSION_IMPORTLIB} |
| + CMAKE_IMPLIB_FILE_LOCATION_RELEASE = lib$${CMAKE_QT_STEM}.$${QMAKE_EXTENSION_IMPORTLIB} |
| + } |
| } else { |
| CMAKE_WINMAIN_FILE_LOCATION_DEBUG = qtmain$${QT_LIBINFIX}$${debug_suffix}.lib |
| CMAKE_WINMAIN_FILE_LOCATION_RELEASE = qtmain$${QT_LIBINFIX}.lib |
| diff -Naur qt-everywhere-src-5.12.4-orig/qtbase/mkspecs/features/qt.prf qt-everywhere-src-5.12.4/qtbase/mkspecs/features/qt.prf |
| --- qt-everywhere-src-5.12.4-orig/qtbase/mkspecs/features/qt.prf 2019-06-12 23:59:14.000000000 +0300 |
| +++ qt-everywhere-src-5.12.4/qtbase/mkspecs/features/qt.prf 2019-06-15 15:09:21.226485600 +0300 |
| @@ -213,8 +213,12 @@ |
| LIBS$$var_sfx += -framework $$framework |
| } else { |
| lib = $$MODULE_MODULE$$qtPlatformTargetSuffix() |
| - win32|contains(MODULE_CONFIG, staticlib) { |
| - lib = $$MODULE_LIBS/$$QMAKE_PREFIX_STATICLIB$${lib}.$$QMAKE_EXTENSION_STATICLIB |
| + win32 { |
| + contains(MODULE_CONFIG, staticlib) { |
| + lib = $$MODULE_LIBS/$$QMAKE_PREFIX_STATICLIB$${lib}.$$QMAKE_EXTENSION_STATICLIB |
| + } else { |
| + lib = $$MODULE_LIBS/$$QMAKE_PREFIX_STATICLIB$${lib}.$$QMAKE_EXTENSION_IMPORTLIB |
| + } |
| PRE_TARGETDEPS += $$lib |
| } else { |
| lib = $$MODULE_LIBS/$$QMAKE_PREFIX_SHLIB$${lib}.$$QMAKE_EXTENSION_SHLIB |
| diff -Naur qt-everywhere-src-5.12.4-orig/qtbase/qmake/generators/win32/winmakefile.cpp qt-everywhere-src-5.12.4/qtbase/qmake/generators/win32/winmakefile.cpp |
| --- qt-everywhere-src-5.12.4-orig/qtbase/qmake/generators/win32/winmakefile.cpp 2019-06-12 23:59:14.000000000 +0300 |
| +++ qt-everywhere-src-5.12.4/qtbase/qmake/generators/win32/winmakefile.cpp 2019-06-15 15:09:21.226485600 +0300 |
| @@ -80,10 +80,16 @@ |
| bool |
| Win32MakefileGenerator::findLibraries(bool linkPrl, bool mergeLflags) |
| { |
| - ProStringList impexts = project->values("QMAKE_LIB_EXTENSIONS"); |
| - if (impexts.isEmpty()) |
| - impexts = project->values("QMAKE_EXTENSION_STATICLIB"); |
| - QVector<LibrarySearchPath> dirs; |
| + ProStringList impexts; |
| + if (project->isActiveConfig("staticlib")) { |
| + impexts.append(project->values("QMAKE_EXTENSION_STATICLIB")); |
| + } else { |
| + impexts.append(project->values("QMAKE_EXTENSION_IMPORTLIB")); |
| + impexts.append(project->values("QMAKE_EXTENSION_STATICLIB")); |
| + } |
| + QVector<LibrarySearchPath> dirs; |
| + QString qt_prefix_libs = project->propertyValue(ProKey("QT_INSTALL_LIBS")).toQString(); |
| + dirs.append(qt_prefix_libs); |
| int libidx = 0; |
| for (const ProString &dlib : project->values("QMAKE_DEFAULT_LIBDIRS")) |
| dirs.append(LibrarySearchPath(dlib.toQString())); |
| @@ -257,9 +263,12 @@ |
| if (!project->values("QMAKE_APP_FLAG").isEmpty()) { |
| project->values("TARGET_EXT").append(".exe"); |
| } else if (project->isActiveConfig("shared")) { |
| + ProString impext = project->first("QMAKE_EXTENSION_IMPORTLIB"); |
| + if (impext.isEmpty()) |
| + impext = project->first("QMAKE_PREFIX_STATICLIB"); |
| project->values("LIB_TARGET").prepend(project->first("QMAKE_PREFIX_STATICLIB") |
| + project->first("TARGET") + project->first("TARGET_VERSION_EXT") |
| - + '.' + project->first("QMAKE_EXTENSION_STATICLIB")); |
| + + '.' + impext); |
| project->values("TARGET_EXT").append(project->first("TARGET_VERSION_EXT") + "." |
| + project->first("QMAKE_EXTENSION_SHLIB")); |
| project->values("TARGET").first() = project->first("QMAKE_PREFIX_SHLIB") + project->first("TARGET"); |
| --- qtbase-everywhere-src-5.14.0/qtbase/src/corelib/global/qlibraryinfo.cpp 2020-01-24 09:18:55.394378700 +0000 |
| +++ qtbase-everywhere-src-5.14.0/qtbase/src/corelib/global/qlibraryinfo.cpp 2020-01-24 09:18:01.235198900 +0000 |
| @@ -576,7 +576,7 @@ |
| const QLatin1Char slash('/'); |
| #if defined(Q_CC_MINGW) |
| const QString implibPrefix = QStringLiteral("lib"); |
| - const QString implibSuffix = QStringLiteral(".a"); |
| + const QString implibSuffix = QStringLiteral(".dll.a"); |
| #else |
| const QString implibPrefix; |
| const QString implibSuffix = QStringLiteral(".lib"); |