diff --git a/.github/workflows/windows-cmake.yml b/.github/workflows/windows-cmake.yml index c0aeaa010..59f69d0d4 100644 --- a/.github/workflows/windows-cmake.yml +++ b/.github/workflows/windows-cmake.yml @@ -11,6 +11,20 @@ # carries -- librnp uses strlen and the fixed width integer types without # including and , which this toolchain refuses. # +# One option differs from the other two jobs, on purpose: RS_BRODCAST_DISCOVERY +# is OFF here. It pulls udp-discovery-cpp, whose CMakeLists sets CXX_STANDARD 98 +# as a target property while its sources include headers that need C++11 -- the +# UCRT64 toolchain refuses that combination, the older GCC on the Ubuntu runner +# does not. Nothing outside that project's own CMakeLists can raise the standard +# of one of its targets, and rewriting the flag through a compiler launcher made +# the longest command lines overflow the CreateProcess limit, which cost the +# source file at the end of them. +# +# It should not stay off. The fix belongs in libretroshare's CMakeLists, whose +# FetchContent asks for GIT_TAG "origin/master" of that third party project -- +# so this build follows whatever it does today, while the super-project pins a +# submodule at f3a3103 and never sees the problem. +# # No Qt packages: this repository builds no GUI. # # SPDX-License-Identifier: AGPL-3.0-or-later @@ -68,45 +82,14 @@ jobs: mingw-w64-ucrt-x86_64-bzip2 mingw-w64-ucrt-x86_64-zlib - # udp-discovery-cpp sets CXX_STANDARD 98 as a target property, which no - # command line option can override, and its own sources then include - # headers that need C++11. This launcher rewrites that one flag and - # forwards everything else untouched, so nothing else in the build is - # affected and CMakeLists.txt stays as it is. - # - # Invoked as "bash;