office-gobmx/external/nss/nss.nspr-parallel-win-debug_build.patch
Jan-Marek Glogowski b56e8d6def NSS: enable parallel build
Since NSS 3.53, the Makefile based build should be fixed (upstream
bug 290526). The only missing patch is a minimal NSPR fix for the
"NSPR, configure + make, parallel, Windows, MS VS, debug" build.
That patch isn't incuded in the NSPR 4.25 release (but it's already
in the mercurial repo for NSPR 4.26).

Change-Id: I8eaa3792a12bdff734e56ac3f552991478957e23
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/95218
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2020-05-31 12:15:23 +02:00

40 lines
1.5 KiB
Diff

Änderung: 4866:23940b78e965
Nutzer: Jan-Marek Glogowski <glogow@fbihome.de>
Datum: Fri May 01 22:50:55 2020 +0000
Dateien: pr/tests/Makefile.in
Beschreibung:
Bug 290526 Write separate PDBs for test OBJs r=glandium
Quite often when running a parallel NSS build, I get the following
compiler error message, resulting in a build failure, despite
compiling with the -FS flag:
.../nss/nspr/pr/tests/zerolen.c: fatal error C1041:
Programmdatenbank "...\nss\nspr\out\pr\tests\vc140.pdb" kann nicht
ge<94>ffnet werden; verwenden Sie /FS, wenn mehrere CL.EXE in
dieselbe .PDB-Datei schreiben.
The failing source file is always one of the last test object
files. But the actual problem is not the compiler accessing the
PDB file, but the linker already linking the first test
executables accessing the shared PDB; at least that's my guess.
So instead of using a shared PDB for all test object files, this
uses -Fd$(@:.$(OBJ_SUFFIX)=.pdb) to write a separate PDB for every
test's object file. The linker works fine with the shared OBJ PDB.
Differential Revision: https://phabricator.services.mozilla.com/D68693
diff -r 219d131499d5 -r 23940b78e965 nss/nspr/pr/tests/Makefile.in
--- a/nss/nspr/pr/tests/Makefile.in Mon Feb 10 20:58:42 2020 +0000
+++ b/nss/nspr/pr/tests/Makefile.in Fri May 01 22:50:55 2020 +0000
@@ -211,6 +211,7 @@
else
EXTRA_LIBS += ws2_32.lib
LDOPTS = -NOLOGO -DEBUG -DEBUGTYPE:CV -INCREMENTAL:NO
+ CFLAGS += -Fd$(@:.$(OBJ_SUFFIX)=.pdb)
ifdef PROFILE
LDOPTS += -PROFILE -MAP
endif # profile