For some reason, libtool was screwing up when I tried to build this for
32-bit msys2, even though it apparently built fine on 64-bit msys2.
autoreconf to get updated (and presumably bugfixed) libtool files.
openssl/cygwin crashes when pthread APIs are called in
DllMain:
0 0x0000000000000000 in ?? ()
1 0x00000001801619bd in pthread_rwlock_wrlock (rwlock=0x800275ff0)
at /c/S/msys2-runtime-3.3/src/msys2-runtime/winsup/cygwin/thread.cc:3228
2 0x000000018019905b in _sigfe () at sigfe.s:35
3 0x00000004358490c9 in CRYPTO_THREAD_write_lock () from /usr/bin/msys-crypto-3.dll
4 0x000000043583c414 in init_thread_remove_handlers () from /usr/bin/msys-crypto-3.dll
5 0x000000043583c843 in OPENSSL_thread_stop () from /usr/bin/msys-crypto-3.dll
6 0x000000043583a953 in DllMain () from /usr/bin/msys-crypto-3.dll
It can be reliably reproduced by calling "meson test", which spawns threads for tests.
Something similar was discussed on the cygwin mailing list years ago, and it seems
nothing has changed/improved there, and with openssl v3 it always crashes:
https://cygwin.com/pipermail/cygwin/2011-March/194454.html
Let's do what corinna suggested there, skip OPENSSL_thread_stop() under cygwin.
This is a hacky workaround, but better to leak things then to crash.
* Drop 0003 patch - seems no longer to be needed
* Stop changing the default openssl config like Arch.
This re-enables the idea algo, but I couldn't find anything why it
should be disabled. Assume openssl knows what's acceptable.
* Run tests in parallel (they pass, with the patch revert workaround)
* Move man7 man pages to openssl-docs, that category gained a lot of
development related man pages, so move it away from the runtime packages.
Upstream no longer manually strips the cygwin dll and creates
a debug file since https://cygwin.com/git/?p=newlib-cygwin.git;a=commit;h=99bb3e937a0fdbc1e3acbdc7cefb31e54a89a6ac
This means the debug info now moved from msys2-runtime-devel to msys2-runtime
staying in the DLL.
We don't really want to install/ship debug infos by default, so we could either
re-implement the debug info extraction manually again, or let makepkg build a
separate "-debug" package, or just strip everything.
Since the later is the least work and the least special compared to other packages,
just enable stripping.