1*b1cdbd2cSJim JagielskiRelation between nss, moz, moz_prebuilt 2*b1cdbd2cSJim Jagielski--------------------------------------- 3*b1cdbd2cSJim Jagielskinss contains the security libraries which are also part of moz. However nss is 4*b1cdbd2cSJim Jagielskimeant to be more current, that is, it to be updated more often. This 5*b1cdbd2cSJim Jagielskishould be easier than updating moz. 6*b1cdbd2cSJim Jagielski 7*b1cdbd2cSJim JagielskiWhen nss is build, it depends on an environment variable (ENABLE_NSS_MODULE) 8*b1cdbd2cSJim Jagielskiwhich is by default set to YES. In this case nss is build before moz. The nss 9*b1cdbd2cSJim Jagielskilibraries/lib files/headers built in moz are then not delivered. Otherwise they 10*b1cdbd2cSJim Jagielskiwould overwrite those from nss. The nss libraries build in moz are then 11*b1cdbd2cSJim Jagielskiremoved from mozruntime.zip (build in moz/solver/bin), they are removed from the 12*b1cdbd2cSJim Jagielskilib directory (for example moz/unxlngi6.pro/lib), and the nss and nspr headers 13*b1cdbd2cSJim Jagielskiare also removed (inc/nss and inc/nspr). The nss libraries from the nss module 14*b1cdbd2cSJim Jagielskiare then added to mozruntime.zip. 15*b1cdbd2cSJim Jagielski 16*b1cdbd2cSJim JagielskiThis also applies for moz_prebuilt. Therefore moz and moz_prebuilt must be build 17*b1cdbd2cSJim Jagielskiagain after changes have been made to the libraries in the nss module. 18*b1cdbd2cSJim Jagielski 19*b1cdbd2cSJim JagielskiAlso when moz was updated to use a newer version of mozilla, then one must make 20*b1cdbd2cSJim Jagielskisure that new files which also belong to nss are not delivered and are removed 21*b1cdbd2cSJim Jagielskifrom mozruntime.zip. 22*b1cdbd2cSJim Jagielski 23*b1cdbd2cSJim JagielskiFips 140 and signed libraries 24*b1cdbd2cSJim Jagielski------------------------------- 25*b1cdbd2cSJim JagielskiFips 140 mode is not supported. That is, the *.chk files containing the 26*b1cdbd2cSJim Jagielskichecksums for the cryptographic module are not delivered into solver and will 27*b1cdbd2cSJim Jagielskinot be part of the OOo installation sets. 28*b1cdbd2cSJim Jagielski 29*b1cdbd2cSJim JagielskiSigning has been turned off because 30*b1cdbd2cSJim Jagielski- we change the rpath (install names) after signing which breaks the signatures 31*b1cdbd2cSJim Jagielski(Mac) 32*b1cdbd2cSJim Jagielski- sqlite conflicts with the system sqlite when signing which breaks the build 33*b1cdbd2cSJim Jagielski 34*b1cdbd2cSJim Jagielski 35*b1cdbd2cSJim Jagielskilibfreebl3 36*b1cdbd2cSJim Jagielski---------- 37*b1cdbd2cSJim JagielskiPorting to other platforms may require to deliver other variants of 38*b1cdbd2cSJim Jagielskilibfreebl*. The library name varies according to the platform. Changes need to 39*b1cdbd2cSJim Jagielskibe made to 40*b1cdbd2cSJim Jagielskiooo/moz/extractfiles.mk 41*b1cdbd2cSJim Jagielskiooo/moz/zipped/makefile.mk 42*b1cdbd2cSJim Jagielskisun/moz_prebuilt/zipped/makefile.mk 43*b1cdbd2cSJim Jagielski 44*b1cdbd2cSJim JagielskiSee also 45*b1cdbd2cSJim Jagielskihttp://www.mozilla.org/projects/security/pki/nss/tech-notes/tn6.html 46*b1cdbd2cSJim Jagielski 47*b1cdbd2cSJim Jagielski 48*b1cdbd2cSJim JagielskiWindows builds of nss 49*b1cdbd2cSJim Jagielski--------------------- 50*b1cdbd2cSJim JagielskiTo build mozilla on windows you'll need the mozilla build tools 51*b1cdbd2cSJim Jagielski 52*b1cdbd2cSJim JagielskiBuild requirements containing the link to the build tools: 53*b1cdbd2cSJim Jagielskihttps://developer.mozilla.org/en/Windows_Build_Prerequisites#ss2.2 54*b1cdbd2cSJim Jagielski 55*b1cdbd2cSJim JagielskiThe direct link: 56*b1cdbd2cSJim Jagielski 57*b1cdbd2cSJim Jagielskihttp://ftp.mozilla.org/pub/mozilla/libraries/win32/MozillaBuildSetup-2.2.0.exe 58*b1cdbd2cSJim Jagielski 59*b1cdbd2cSJim Jagielskilibsqlite3 60*b1cdbd2cSJim Jagielski---------- 61*b1cdbd2cSJim JagielskiThe problem described here was found on Mac with OS 10.6 62*b1cdbd2cSJim JagielskiNSS cannot use the system sqlite on Mac because the base line is still MacOS 63*b1cdbd2cSJim Jagielski10.4. That system sqlite is incompatible with the softokn3 in nss which requires 64*b1cdbd2cSJim Jagielskia later version of sqlite. 65*b1cdbd2cSJim JagielskiWhen we used a more current Mac SDK then we could set 66*b1cdbd2cSJim JagielskiNSS_USE_SYSTEM_SQLITE=1 67*b1cdbd2cSJim Jagielskito build using the system sqlite. 68*b1cdbd2cSJim Jagielski 69*b1cdbd2cSJim JagielskiWe cannot deliver sqlite in the lib directory of the solver. This directory is 70*b1cdbd2cSJim Jagielskiused by tools of the build environment. Using the sqlite from NSS breaks the 71*b1cdbd2cSJim Jagielskitools if they use system libraries which are linked with the system 72*b1cdbd2cSJim Jagielskisqlite. Therefore we deliver it into lib/sqlite on unix systems. 73*b1cdbd2cSJim Jagielski 74*b1cdbd2cSJim JagielskiSee also issue 75*b1cdbd2cSJim Jagielskihttp://qa.openoffice.org/issues/show_bug.cgi?id=106132 76