66 Commits

Author SHA1 Message Date
Stephan Bergmann
8646ab97dc Remove MinGW support
In OOo times, there'd originally been efforts to allow building on Windows with
MinGW.  Later, in LO times, this has been shifted to an attempt of cross-
compiling for Windows on Linux.  That attempt can be considered abandoned, and
the relevant code rotting.

Due to this heritage, there are now three kinds of MinGW-specific code in LO:

* Code from the original OOo native Windows effort that is no longer relevant
  for the LO cross-compilation effort, but has never been removed properly.

* Code from the original OOo native Windows effort that is re-purposed for the
  LO cross-compilation effort.

* Code that has been added specifially for the LO cross-compilation effort.

All three kinds of code are removed.

(An unrelated, remaining use of MinGW is for --enable-build-unowinreg, utilizing
--with-mingw-cross-compiler, MINGWCXX, and MINGWSTRIP.)

Change-Id: I49daad8669b4cbe49fa923050c4a4a6ff7dda568
Reviewed-on: https://gerrit.libreoffice.org/34127
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-02-10 18:01:27 +00:00
Tor Lillqvist
c6ec65395c chmod -x
Change-Id: Ie07ef2f9e9f6d0b31b513afa913b79d9c641e4f1
2016-11-17 12:35:52 +02:00
Giuseppe Castagno
da5d205624 Linux: Build NSS in debug mode only in '--enable-dbgutil' mode.
With this commit, NSS debug mode is enabled only if you compile
with --enable-dbgutil using ./autogen.sh command.

Only for the Linux platform builds.

Change-Id: Ia8626f36692fd38e8b1dbd774e4bc0ccedc59072
Reviewed-on: https://gerrit.libreoffice.org/29781
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Giuseppe Castagno <giuseppe.castagno@acca-esse.eu>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2016-10-26 12:14:05 +00:00
David Tardon
f595e426e3 cond. build is already handled in Module_external.mk
Change-Id: I5efe3bafc4f0b97578a75dc1f43e6c130a93bc4a
2016-10-23 20:13:21 +02:00
Stephan Bergmann
5ab5779bf4 external/nss: Adapt ASan/UBSan-specific patches to nss 3.27
Change-Id: Ic96a57a1f43f7aae4e0733d2e65edd843b827a54
2016-10-11 09:39:21 +02:00
Caolán McNamara
f3fff04ddd bump nss to 3.27
Notable changes in NSS 3.24:
  * Add a shared library (libfreeblpriv3) on Linux platforms that define FREEBL_LOWHASH

Change-Id: If99ee77bea40796cc56944724291a83068ff8198
Reviewed-on: https://gerrit.libreoffice.org/27304
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2016-10-10 11:13:03 +00:00
Stephan Bergmann
87c271d4a9 Silence -fsanitize=array-bounds in external/nss
...by making lgdbDataStr::names a "by-convention flexible array member".
Otherwise, e.g. CppunitTest_xmlsecurity_signing_test fails with "index 30 out of
bounds for type 'unsigned char [6]'".

Change-Id: Ie5bf4199b8b49090a987143d355754a69512e309
2016-08-22 15:35:11 +02:00
Stephan Bergmann
72b621444a Remove noise from patch file
Change-Id: I5b09280dbd5bda1751aa44b4ef6d5e3b8d88ea2c
2016-08-22 15:17:06 +02:00
Caolán McNamara
7b86ff8c8a Revert "bump nss to 3.25"
This reverts commit f10b31c2fe16bfcbb7cb278fdec65deacbe06219.
2016-07-19 10:35:06 +01:00
Caolán McNamara
f10b31c2fe bump nss to 3.25
Change-Id: If99ee77bea40796cc56944724291a83068ff8198
2016-07-19 09:54:59 +01:00
Stephan Bergmann
3e27c43770 Avoid -fsanitize=alignment in external/nss
...in a way that might be a performance issue, so include the patch only
conditionally.

Change-Id: I483a77d0d199c2dee00139fdd4fa41223192289c
2016-07-04 15:47:08 +02:00
Oliver Specht
3f58746ab8 switch off 'warning treated as error' in external/nss in Win32
This prevents errors from ms sdk sal_supp.h: warning '__useHeader': macro redefinition

Change-Id: I122bbf6171c73d77970a549353dca67dd26d0300
Reviewed-on: https://gerrit.libreoffice.org/24055
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Oliver Specht <oliver.specht@cib.de>
2016-04-13 13:32:08 +00:00
Mark Hung
7605d17398 Allow NSS to build under cp950 in windows.
Change-Id: I4a5ef736ad714dd3b1beb4054e2347973db70e39
Reviewed-on: https://gerrit.libreoffice.org/23704
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2016-04-05 10:58:21 +00:00
Michael Stahl
2a9e6ecc61 nss: remove nss-pem.patch
It looks like commit 30b9c6a457de61f3c94431ecc75716f866c3379e made
this obsolete: by default, curl's configure will pick some OpenSSL
certificate database in /etc to use, which is in PEM format.

But since every distribution uses a different path in /etc for that,
it will work only on the same distribution as the build host anyway,
which makes it mostly useless in practice.

So we don't need our NSS to be able to read PEM format now.

Speaking of which, PEM support was only required for Linux builds
anyway, not for WNT/Mac builds.

Change-Id: Ib9bc6ec0b7d71c14e9a53454e6efed038072e913
Reviewed-on: https://gerrit.libreoffice.org/23435
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Giuseppe Castagno <giuseppe.castagno@acca-esse.eu>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2016-04-01 09:51:35 +00:00
Christian Lohmaier
09e201fcf2 fix nss build when targeting windows XP (using 7.1A SDK)
otherwise build fails because of macro redefinitions warnings (that are
now fatal because of warnings=errors)

Change-Id: I0a15083d9ffd032c48ab491695319309f3053fb7
2016-03-15 15:09:45 +01:00
David Ostrovsky
1a056fdb25 Fix nss on MSVC 14.0 in debug mode
outdir doesn't seem to be created. Use current directory for
pdb files as the obj files are already stored in the current
directory.

Change-Id: I41dd65714d314cd374cc5de073d48f1a58b18c56
Reviewed-on: https://gerrit.libreoffice.org/22888
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Norbert Thiebaud <nthiebaud@gmail.com>
2016-03-05 04:49:09 +00:00
David Ostrovsky
59907b3600 nss: Fix pointer truncation from 'char *' to 'long'
Change-Id: Ie1659c62cbf77f8b685fdf7d79cd62336fa99005
Reviewed-on: https://gerrit.libreoffice.org/22916
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Norbert Thiebaud <nthiebaud@gmail.com>
2016-03-05 04:48:53 +00:00
Stephan Bergmann
69ae921004 external/nss: -Werror,-Wundef (__GNUC__ vs. clang-cl)
Change-Id: I4641767451ac1ec9f580d24bafa57a11e2f99ac3
2016-03-04 10:11:15 +01:00
David Ostrovsky
486c91147c Bump nss to 3.22.1 and nspr to 4.12
It seems like nss has activated -Werror, even though the code is not
warning free: [1].  This applies also to the additional patches that
would need to be patched to be a warning free patch, endless recursion.

To avoid messing around with something like that: [2], we disable
-Werror option for now. Also note, that [2] doesn't fix all warnings,
but only part of them so that we let with unsolved non-trivially to
fix warnings on different supported compilers if we would choose the
warning-free-compilation-path.

[1] https://groups.google.com/d/topic/mozilla.dev.tech.crypto/TgnF3tIMxJ0/discussion
[2] https://git.fedorahosted.org/cgit/nss-pem.git/commit/?id=ec2b9a90623b1ec5adb6ebe8d6651b35854786ec

Change-Id: I762c03acede6c4eac715d3b0589061eeabbcc7c2
Reviewed-on: https://gerrit.libreoffice.org/22650
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: David Ostrovsky <david@ostrovsky.org>
2016-02-28 20:21:43 +00:00
Michael Stahl
aef004cea8 nss: remove obvious cruft from README
Change-Id: If99babda104a35563208e89d86bf10bcff8f22f4
2016-02-25 12:34:32 +01:00
Stephan Bergmann
3aa5f100eb external/nss: work around missing clang-cl #pragma support
Change-Id: I068ff0ef2252409689c0c376ec41bdd97b4567cc
2015-12-02 08:02:25 +01:00
Stephan Bergmann
e9b0a45a68 Fix patch file attributes
Change-Id: I4f86aba24f2dad14f43effd6e0b291f8f58f1712
2015-12-01 12:35:08 +01:00
Stephan Bergmann
ba8a957bfa Generalize COM_GCC_IS_CLANG -> COM_IS_CLANG
...in anticipation of building with clang-cl.exe on Windows

Change-Id: I1d723c9d3b5ca8a2bc6b27ef0189a7b053581398
Reviewed-on: https://gerrit.libreoffice.org/19928
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2015-11-12 17:37:11 +00:00
David Ostrovsky
c4afb5d193 Fix nss on MSVC 14.0
Change-Id: I8c2f18a509ae6686af4ede5b0daa8291d164c9fd
Reviewed-on: https://gerrit.libreoffice.org/18211
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
2015-09-02 14:08:51 +00:00
Michael Stahl
6e7991dfd8 nss: upgrade to release 3.19.2
- drop nss-linux-x86-patch.0:
  this was actually patching OS/2-specific code so is evidently obsolete
- drop nspr-build-config.patch:
  there does not appear to be any justification why this huge patch exists
  at all, so the only reasonable thing to do is to drop it
- nss_macosx.patch:
  drop several hunks relevant only to unuspported MacOSX/PPC platform

Change-Id: Id55fcb8eaa637c10a42203f1897480df8a6ec0fa
2015-07-03 10:21:37 +02:00
Julien Nabet
3754474cde Typos
Change-Id: I21c352a63d668c174eef212dbfbe6346c678ce4d
2015-06-13 09:13:52 +02:00
Stephan Bergmann
8d2ac08383 external/nss: -fsanitize=nonnull-attribute
Change-Id: Ic3a20f56250d99a347df5deaf785800a2f96e470
2015-06-12 08:22:22 +02:00
Adolfo Jayme Barrientos
d02c15979b Update Apache Bugzilla’s URL
Change-Id: I6ef4ae530b7fb4e615100803ae6e3972d9b4545f
2015-05-19 19:48:11 -05:00
Stephan Bergmann
10a5a15111 Work around InterlockedExchange not exported from kernel32.dll on x64
...as reported in a comment on <http://msdn.microsoft.com/en-us/library/windows/
desktop/ms683590%28v=vs.85%29.aspx> "InterlockedExchange function"

Change-Id: Ie71edd7a5ce8ff3c922d607e174a4c4d43c08c1d
2014-11-13 16:56:20 +01:00
Robert Antoni Buj i Gelonch
ae064ec005 nss: add libnsspem.dylib to macosx-change-install-names.pl call
Change-Id: If457f9e090a4ef3a5b2b8e4f09ce0b5e3b3d04ec
Signed-off-by: Stephan Bergmann <sbergman@redhat.com>
2014-10-27 22:14:01 +01:00
Tor Lillqvist
a8c24b25fd Cross-compilation fix
Change-Id: I205afbd9c1cbe3a286359036cbdcf6aa9d986f71
2014-10-21 01:49:38 +03:00
Tor Lillqvist
bf8fb8cfc3 Make the patch apply again after NSS update
Change-Id: I935188ee90b4c56c5a4d7cc374a26e4b182beb5f
2014-10-21 01:48:36 +03:00
Tor Lillqvist
fe25090e99 MAC_OS_X_VERSION_MIN_REQUIRED is always >= 1080 now
Change-Id: I40d03ab9acb67ab72b9047017452f069ce88fd4b
2014-10-16 11:22:13 +03:00
Caolán McNamara
726172e3eb bump nss from 3.15.3 to 3.16.5
Change-Id: I8318982eb1cee1a694dbdd504e0ca106a29d807e
Reviewed-on: https://gerrit.libreoffice.org/11700
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2014-10-09 16:29:45 +00:00
Michael Stahl
cd42e5f3e2 fdo#82430: MSVC build: avoid using SSE2 instructions in some externals
Hopefully this should fix up the most important external libraries.

Change-Id: I744cb5a2ce7fafb10852059050cf24589d6ca400
2014-10-02 17:20:15 +02:00
Tor Lillqvist
142d527a6b Make NSS build also as 64-bit ARM code for iOS
Change-Id: I03cda6ca1886a3cfad87cc438282eeea8c2a5299
2014-08-13 20:08:19 +03:00
Tor Lillqvist
d87cf30fe6 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
2014-08-12 19:56:08 +03:00
Tor Lillqvist
d308eda13d Use Chromium's patch to build NSS statically for iOS
Change-Id: Ica2cf641bc54f6e924b759cd4cf96dd96347c53b
2014-08-12 17:03:45 +03:00
Tor Lillqvist
5c37960d95 First attempt at building NSS for iOS, too
Let's hope that the various static archives that get built by the NSS
build machinery contain what an iOS app that needs NSS services
requires. I patch out the construction of any dylibs and executables
in nss. We don't use any dylibs on iOS anyway, and of course don't
need any NSS executables either.

Change-Id: Ic977c6e3d6c4e953202e78f8e08c4e61f6c9cb1b
2014-08-11 19:40:36 +03:00
Stephan Bergmann
5ab1098d5f Generalize -fsanitize=address checks
...that are at least also relevant for -fsanitize=undefined

Change-Id: I39044d2a73912a605af8e965eb1cdf8dfd4f0051
2014-08-08 16:07:24 +02:00
Stephan Bergmann
83e5c3e93d left shift of 4276994303 by 32 places cannot be represented in type 'long'
Change-Id: Ie9ddc5a42116720e0602d7fb38360f01b71df69c
2014-08-06 16:50:11 +02:00
Cédric Bosdonnat
89361fa68a fdo#72277: don't build and use nsspem when building against system curl
System CURL will know how to get the CA bundle from the system openSSL.
There is no need to have internal NSS CA database support.

Change-Id: Ie5074c78f7d78b2c2f452d4d4e11c98222529883
2014-07-17 10:39:35 +02:00
Michael Stahl
008b98f928 nss: document why --with-system-nss can't be used in generic builds
Change-Id: I93ce16b4dd059ca0ed79975cfb6373dd629f29a9
2014-07-16 11:15:33 +02:00
Cédric Bosdonnat
a8fd30771a fdo#72277: NSS-PEM windows fixes.
Added missing SEC_ASN1_MKSUB for windows to build
Use PL_strcasecmp instead of strcasecmp.
Fixed remaining declaration not at begining of a block
Added missing nsspem.rc for windows

Change-Id: I144f9cf19c0efe85ad68011cf81e0466aa1ac9f5
2014-07-15 21:32:25 +02:00
Cédric Bosdonnat
0058b43700 fdo#72277: NSS-PEM, use PR_snprintf instead of snprintf
Change-Id: I8aeb9a787992deb784e4e4430f7e0eab57f9a598
2014-07-15 14:31:25 +02:00
Cédric Bosdonnat
85d1bd151c fdo#72277: NSS-PEM yet another build fix for MS compiler
Change-Id: I524a14cd124e69e288de5ae8464eb611989dffde
2014-07-15 12:27:09 +02:00
Cédric Bosdonnat
6602f904ac fdo#72277: nss-pem fixed windows and macos build errors
Change-Id: I30b4036b6cf00dec753115bbc59990daec27ef20
2014-07-15 12:04:05 +02:00
Cédric Bosdonnat
165075e0d7 fdo#72277: Use NSS CACERT in cmis ucp with internal curl
This fix contains two parts:
  * initialize NSS in the CMIS UCP right before sending an HTTP request
    in case internal curl is used. This makes internal curl find the NSS
    CACERT database from the user mozilla profile.

  * add nsspem to allow curl to use CACERTs from libnssckbi. Without
    libnsspem curl is unable to read the certificates from the NSS
    database. The nss-pem code has been extracted from the fedora-hosted
    repository: https://git.fedorahosted.org/cgit/nss-pem.git

Change-Id: Ie8dedf020480cca01bf9761382886566a1150778
2014-07-15 11:15:45 +02:00
Douglas Mencken
f4beadc6e2 avoid -arch for bundled OpenSSL, Python3, and nss/nspr on OSX@PowerPC
this fixes gcc: error: unrecognized command line option '-arch'

The '-arch' option is part of Apple's extensions to GCC, and it is uncompatible
with "vanilla" GCC from FSF. Also, we're not building "universal binaries".

Change-Id: I44e7c72bbb1dd4be5ac9cdbc4f210aaccea513b4
Reviewed-on: https://gerrit.libreoffice.org/10117
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2014-07-11 14:42:57 +00:00
rbuj
07601de43b nss/nspr: update build/autoconf/config.{guess,sub}
Update the file nss/nspr/build/autoconf/config.guess to the version 2014-03-23.
Update the file nss/nspr/build/autoconf/config.sub to the version 2014-05-01.
Create the file nss/nspr/build/autoconf/GPLv3.txt.

Change-Id: Ifc508a3c1bee57f810588d0013971e4bf1984c10
Reviewed-on: https://gerrit.libreoffice.org/10148
Tested-by: LibreOffice gerrit bot <gerrit@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2014-07-10 15:24:40 +00:00