Haven't gotten an answer from the folks at openssl yet.
Here's my problem: if I try to build OpenVPN using openvpn-build as described in the article you linked ("To build for Windows 64bit on Linux 64bit:"), I get this log:
> IMAGEROOT=`pwd`/image-win64 CHOST=x86_64-w64-mingw32 \
CBUILD=x86_64-pc-linux-gnu ./build
Extract '/home/lenni/git/openvpn-build/generic/sources/lzo-2.10.tar.gz'
Extract '/home/lenni/git/openvpn-build/generic/sources/openssl-1.1.1k.tar.gz'
Extract '/home/lenni/git/openvpn-build/generic/sources/openvpn-2.5.3.tar.gz'
Extract '/home/lenni/git/openvpn-build/generic/sources/openvpn-gui-11.tar.gz'
Extract '/home/lenni/git/openvpn-build/generic/sources/pkcs11-helper-1.27.0.tar.bz2'
Extract '/home/lenni/git/openvpn-build/generic/sources/tap-windows-9.24.6.zip'
Archive: /home/lenni/git/openvpn-build/generic/sources/tap-windows-9.24.6.zip
creating: tap-windows-9.24.6/
creating: tap-windows-9.24.6/include/
inflating: tap-windows-9.24.6/include/tap-windows.h
creating: tap-windows-9.24.6/arm64/
inflating: tap-windows-9.24.6/arm64/tap0901.sys
creating: tap-windows-9.24.6/arm64/win10/
inflating: tap-windows-9.24.6/arm64/tap0901.cat
inflating: tap-windows-9.24.6/arm64/tapinstall.exe
inflating: tap-windows-9.24.6/arm64/OemVista.inf
creating: tap-windows-9.24.6/amd64/
inflating: tap-windows-9.24.6/amd64/tap0901.sys
creating: tap-windows-9.24.6/amd64/win10/
inflating: tap-windows-9.24.6/amd64/win10/tap0901.sys
inflating: tap-windows-9.24.6/amd64/win10/tap0901.cat
inflating: tap-windows-9.24.6/amd64/win10/OemVista.inf
inflating: tap-windows-9.24.6/amd64/tap0901.cat
inflating: tap-windows-9.24.6/amd64/tapinstall.exe
inflating: tap-windows-9.24.6/amd64/OemVista.inf
creating: tap-windows-9.24.6/i386/
inflating: tap-windows-9.24.6/i386/tap0901.sys
creating: tap-windows-9.24.6/i386/win10/
inflating: tap-windows-9.24.6/i386/win10/tap0901.sys
inflating: tap-windows-9.24.6/i386/win10/tap0901.cat
inflating: tap-windows-9.24.6/i386/win10/OemVista.inf
inflating: tap-windows-9.24.6/i386/tap0901.cat
inflating: tap-windows-9.24.6/i386/tapinstall.exe
inflating: tap-windows-9.24.6/i386/OemVista.inf
Extract '/home/lenni/git/openvpn-build/generic/sources/v1.9.3.tar.gz'
Patch: '/home/lenni/git/openvpn-build/generic/patches/pkcs11-helper-001-RFC7512.patch'
patching file lib/pkcs11h-serialization.c
Hunk #1 succeeded at 60 (offset -1 lines).
Hunk #2 succeeded at 189 (offset -1 lines).
Hunk #3 succeeded at 352 (offset -1 lines).
Hunk #4 succeeded at 368 (offset -1 lines).
Hunk #5 succeeded at 426 (offset -1 lines).
Hunk #6 succeeded at 483 (offset -1 lines).
Hunk #7 succeeded at 495 (offset -1 lines).
Hunk #8 succeeded at 508 (offset -1 lines).
Hunk #9 succeeded at 521 (offset -1 lines).
Hunk #10 succeeded at 535 (offset -1 lines).
Hunk #11 succeeded at 557 (offset -1 lines).
Hunk #12 succeeded at 574 (offset -1 lines).
Hunk #13 succeeded at 595 (offset -1 lines).
patching file lib/pkcs11h-util.c
Hunk #1 succeeded at 109 (offset -1 lines).
Build openssl
Configuring OpenSSL version 1.1.1k (0x101010bfL) for mingw64
Using os-specific seed configuration
Creating configdata.pm
Creating Makefile
**********************************************************************
*** ***
*** OpenSSL has been successfully configured ***
*** ***
*** If you encounter a problem while building, please open an ***
*** issue on GitHub <https://github.com/openssl/openssl/issues> ***
*** and include the output from the following command: ***
*** ***
*** perl configdata.pm --dump ***
*** ***
*** (If you are new to OpenSSL, you might want to consult the ***
*** 'Troubleshooting' section in the INSTALL file first) ***
*** ***
**********************************************************************
LIBSSL: No new symbols added
LIBCRYPTO: No new symbols added
/usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \
"-oMakefile" include/crypto/bn_conf.h.in > include/crypto/bn_conf.h
/usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \
"-oMakefile" include/crypto/dso_conf.h.in > include/crypto/dso_conf.h
/usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \
"-oMakefile" include/openssl/opensslconf.h.in > include/openssl/opensslconf.h
make depend && make _all
make[1]: Entering directory '/home/lenni/git/openvpn-build/generic/tmp/openssl-1.1.1k'
make[1]: Leaving directory '/home/lenni/git/openvpn-build/generic/tmp/openssl-1.1.1k'
make[1]: Entering directory '/home/lenni/git/openvpn-build/generic/tmp/openssl-1.1.1k'
x86_64-w64-mingw32-gcc -I. -Iinclude -m64 -Wa,--noexecstack -Wl,--dynamicbase,--nxcompat -O3 -O3 -static-libgcc -DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DKECCAK1600_ASM -DRC4_ASM -DMD5_ASM -DAESNI_ASM -DVPAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DX25519_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/etc/ssl\"" -DENGINESDIR="\"/lib/engines-1_1\"" -DUNICODE -D_UNICODE -DWIN32_LEAN_AND_MEAN -D_MT -DNDEBUG -MMD -MF apps/app_rand.d.tmp -MT apps/app_rand.o -c -o apps/app_rand.o apps/app_rand.c
/tmp/cccuXZ2G.s: Assembler messages:
/tmp/cccuXZ2G.s:3: Fatal error: bad .section directive: want a,l,w,x,M,S,G,T in string
make[1]: *** [Makefile:729: apps/app_rand.o] Error 1
make[1]: Leaving directory '/home/lenni/git/openvpn-build/generic/tmp/openssl-1.1.1k'
make: *** [Makefile:188: all] Error 2
Notice the error assembling some file in openssl-1.1.1k/. The openssl installation instructions suggest to configure it with --no-asm, but that doesn't fix my issue. Any idea what's going on here? I have mingw compilers + assembler installed.