summaryrefslogtreecommitdiffstats
path: root/src/core/core_module.pro
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/core_module.pro')
-rw-r--r--src/core/core_module.pro4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/core/core_module.pro b/src/core/core_module.pro
index 3785ddc46..44e8ac613 100644
--- a/src/core/core_module.pro
+++ b/src/core/core_module.pro
@@ -47,8 +47,10 @@ CONFIG *= no_smart_library_merge
osx {
LIBS_PRIVATE += -Wl,-force_load,$${api_library_path}$${QMAKE_DIR_SEP}lib$${api_library_name}.a
} else:msvc {
+ # Simulate -whole-archive by passing the list of object files that belong to the public
+ # API library as response file to the linker.
QMAKE_LFLAGS += /OPT:REF
- QMAKE_LFLAGS += /WHOLEARCHIVE:$${api_library_path}$${QMAKE_DIR_SEP}$${api_library_name}.lib
+ QMAKE_LFLAGS += @$${api_library_path}$${QMAKE_DIR_SEP}$${api_library_name}.lib.objects
} else {
LIBS_PRIVATE += -Wl,-whole-archive -l$$api_library_name -Wl,-no-whole-archive
}