[Libreoffice-commits] core.git: 3 commits - bin/lo-all-static-libs external/nss
Tor Lillqvist
tml at collabora.com
Tue Aug 12 09:58:53 PDT 2014
bin/lo-all-static-libs | 7 ++----
external/nss/UnpackedTarball_nss.mk | 1
external/nss/nss-more-static.patch | 39 ++++++++++++++++++++++++++++++++++++
3 files changed, 43 insertions(+), 4 deletions(-)
New commits:
commit d87cf30fe65e525f1cb50dbc5eecf2d623e7cfb3
Author: Tor Lillqvist <tml at collabora.com>
Date: Tue Aug 12 19:48:00 2014 +0300
More NSS static linking patches
I noticed in the debugger that this code tried to load a freebl dylib, but
after then making it link to the freebl entry point statically, I no longer
see it being entered. Huh, confusing. Making NSS work on iOS to the extent we
need is a pain.
Change-Id: Iafc3785752587c38566441f566e187859022733e
diff --git a/external/nss/UnpackedTarball_nss.mk b/external/nss/UnpackedTarball_nss.mk
index 0ca3de2..fa798d1 100644
--- a/external/nss/UnpackedTarball_nss.mk
+++ b/external/nss/UnpackedTarball_nss.mk
@@ -26,6 +26,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,nss,\
external/nss/ubsan.patch.0 \
$(if $(filter IOS,$(OS)), \
external/nss/nss-chromium-nss-static.patch \
+ external/nss/nss-more-static.patch \
external/nss/nss-ios.patch) \
))
diff --git a/external/nss/nss-more-static.patch b/external/nss/nss-more-static.patch
new file mode 100644
index 0000000..6b06a4e
--- /dev/null
+++ b/external/nss/nss-more-static.patch
@@ -0,0 +1,39 @@
+--- a/a/nss/lib/freebl/loader.c
++++ a/a/nss/lib/freebl/loader.c
+@@ -114,6 +114,7 @@
+
+ #include "genload.c"
+
++extern FREEBLGetVectorFn FREEBL_GetVector;
+ /* This function must be run only once. */
+ /* determine if hybrid platform, then actually load the DSO. */
+ static PRStatus
+@@ -136,9 +136,9 @@
+ return PR_FAILURE;
+ }
+
+- handle = loader_LoadLibrary(name);
+- if (handle) {
+- PRFuncPtr address = PR_FindFunctionSymbol(handle, "FREEBL_GetVector");
++ handle = 0;
++ {
++ PRFuncPtr address = FREEBL_GetVector;
+ PRStatus status;
+ if (address) {
+ FREEBLGetVectorFn * getVector = (FREEBLGetVectorFn *)address;
+@@ -887,6 +887,7 @@
+ void
+ BL_Unload(void)
+ {
++#if 0
+ /* This function is not thread-safe, but doesn't need to be, because it is
+ * only called from functions that are also defined as not thread-safe,
+ * namely C_Finalize in softoken, and the SSL bypass shutdown callback called
+@@ -905,6 +905,7 @@
+ blLib = NULL;
+ }
+ loadFreeBLOnce = pristineCallOnce;
++#endif
+ }
+
+ /* ============== New for 3.003 =============================== */
commit f887a3e1d83b1607bb43c3d4957a2dc4c18b3d2c
Author: Tor Lillqvist <tml at collabora.com>
Date: Tue Aug 12 18:27:24 2014 +0300
Not true, it's the dylibs that are copied
Change-Id: I2fc51f2aaf56ce98d8990b71a33abaef24d841e7
diff --git a/bin/lo-all-static-libs b/bin/lo-all-static-libs
index 8cff485..11c66d4 100755
--- a/bin/lo-all-static-libs
+++ b/bin/lo-all-static-libs
@@ -54,9 +54,6 @@ IOS)
$WORKDIR/UnpackedTarball/nss/nss/lib/ckfw/builtins/out/*.o \
$WORKDIR/UnpackedTarball/nss/nss/lib/freebl/out/Darwin_SINGLE_SHLIB/*.o
- # Unfortunately NSS's build mechanism copies each static archive
- # it constructs to another place, but we don't bother filtering
- # out duplicates, it shouldn't hurt.
nsslibs=`find $WORKDIR/UnpackedTarball/nss -name 'lib*.a'`
;;
*)
commit 5b4e745d91431e888da42f0c7c78c0445ae201c7
Author: Tor Lillqvist <tml at collabora.com>
Date: Tue Aug 12 18:26:44 2014 +0300
More object files not in any archive
Change-Id: I658e235d345e61f2b18e9cf074d64bce9793cfc5
diff --git a/bin/lo-all-static-libs b/bin/lo-all-static-libs
index 1d93afe..8cff485 100755
--- a/bin/lo-all-static-libs
+++ b/bin/lo-all-static-libs
@@ -50,7 +50,9 @@ IOS)
# files (that are not present in any of the static archives). We
# need the latter too, so collect them here into an archive of
# their own.
- ar cr $WORKDIR/UnpackedTarball/nss/nss/lib/ckfw/builtins/out/libLOtemp.a $WORKDIR/UnpackedTarball/nss/nss/lib/ckfw/builtins/out/*.o
+ ar cr $WORKDIR/UnpackedTarball/nss/nss/lib/ckfw/builtins/out/libLOtemp.a \
+ $WORKDIR/UnpackedTarball/nss/nss/lib/ckfw/builtins/out/*.o \
+ $WORKDIR/UnpackedTarball/nss/nss/lib/freebl/out/Darwin_SINGLE_SHLIB/*.o
# Unfortunately NSS's build mechanism copies each static archive
# it constructs to another place, but we don't bother filtering
More information about the Libreoffice-commits
mailing list