lsquic
lsquic copied to clipboard
[WIP] Improve windows CI build, CI for windows shared
Vcpkg fixes and updates.
Windows build uses PCRE2 (fixes shared linkage issues) with fallback to PCRE.
Changed to VS 2022 AppVeyor CI images to use newer vcpkg.
Fixes shared linkage issues when building bin targets and tests.
Adds a 10 minute test kill on windows appveyor test runs since CMake's test timeouts don't work on Windows.
Adds build-tests target to build tests without running them.
CI now runs perf_server / perf_client for a quick 100MB shot across localhost. (1.5s on linux, 3-5s on mac, longer on windows) using simple generated self-signed certs.
BoringSSL caching is partially restored on AppVeyor, but still must be rebuilt.
[WIP] Windows shared build currently fails some tests with SEGFAULT.
21 - frame_writer (SEGFAULT) 36 - send_headers (SEGFAULT)
[WIP] Windows shared build currently fails some tests as the total test duration exceeds 10 minutes and they are killed.
50 - stream (Failed) 51 - stream_hash (Failed) 52 - stream_A (Failed) 53 - stream_hash_A (Failed)
Don't recommend merging this one yet. Need help diagnosing the segfaults and stream test overlong duration.
@gwanglst do you have any idea about these tests failing? https://ci.appveyor.com/project/StirlingLabs/lsquic-win-shared/builds/42175300
I don't know why the shared tests are failing, but the PR is otherwise good to go for the existing 3 (non-shared) build paths.
Since you have to set up appveyor manually to use the appveyor-windows-shared.yml config, it'll just be inactive.