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 <[email protected]> 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 <[email protected]> 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 <[email protected]> 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 _______________________________________________ Libreoffice-commits mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
