summarylogtreecommitdiffstats
path: root/0034-Prevent-static-build-to-prefer-dynamic-libraries.patch
blob: 692db4193b1e6d26f3491e5ad0d1e52c3d1ab148 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
From 7ca7ebb16733d10658c7135c5948cf21eafac8fe Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Sun, 3 Feb 2019 14:34:42 +0100
Subject: [PATCH 34/34] Prevent static build to prefer dynamic libraries

The static build should not attempt to link against dynamic libraries
in order to get a fully statically linked binary in the end.
---
 mkspecs/features/qt_configure.prf | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/mkspecs/features/qt_configure.prf b/mkspecs/features/qt_configure.prf
index 62ad972796..866ffdb6ad 100644
--- a/mkspecs/features/qt_configure.prf
+++ b/mkspecs/features/qt_configure.prf
@@ -561,12 +561,12 @@ defineTest(qtConfResolveLibs) {
                 # Under Windows, we look only for static libraries, as even for DLLs
                 # one actually links against a static import library.
                 mingw {
-                    lcan += \
-                        # MinGW supports UNIX-style library naming in addition to
-                        # the MSVC style.
-                        lib$${lib}.dll.a lib$${lib}.a \
-                        # Fun fact: prefix-less libraries are also supported.
-                        $${lib}.dll.a $${lib}.a
+                    # prefer (import) libraries for dynamic linking unless we're doing a
+                    # static build where we solely rely on presence of static libraries
+                    shared {
+                        lcan += $${QMAKE_PREFIX_STATICLIB}$${lib}.$${QMAKE_EXTENSION_IMPORTLIB} $${lib}.$${QMAKE_EXTENSION_IMPORTLIB}
+                    }
+                    lcan += $${QMAKE_PREFIX_STATICLIB}$${lib}.$${QMAKE_EXTENSION_STATICLIB} $${lib}.$${QMAKE_EXTENSION_STATICLIB}
                 }
                 lcan += $${lib}.lib
             }
-- 
2.21.0