llvm / llvm-project

The LLVM Project is a collection of modular and reusable compiler and toolchain technologies.
http://llvm.org
Other
28.01k stars 11.57k forks source link

LLVM Buildbot apparently needs CMake update in windows environment #91156

Open MjrTom opened 4 months ago

MjrTom commented 4 months ago

For approximately the past two months, the LLVM Buildbot builder for llvm-clang-x86_64_expensive-checks-win has failed. The failure always comes after only 2 minutes, and always cites basically the same status.

This is demonstrated here: https://lab.llvm.org/buildbot/#/builders/42?numbuilds=1633

Inspecting one of the failures reveals the error:

  MSVC_DEBUG_INFORMATION_FORMAT value 'ProgramDatabase' not known for this
  ASM_MASM compiler.

Searching the llvm-project issues, we find: https://github.com/llvm/llvm-project/issues/87007 which shows apparently the exact same problem.

The user states they are using CMake version: 3.25.1. CMake documentation states CMake version 3.25+ should support the syntax, but the evidence suggests there's some problem with it operating as expected until some later version.

The responder reports the problem was not reproducible using CMake version 3.28.3. The user then reported the problem went away after updating CMake to version 3.29.1 and the issue was closed.

I can't find a way to discover the CMake version used by the LLVM Buidbot builder, but from the information at hand; we can reasonably deduce that at least that builder (and presumably all windows builders, if not all LLVM builders) probably should have their CMake version updated to a later version, to allow BLAKE3 to build as expected.

The current version of CMake, as of this writing, is 3.29.2

I don't know if it'd be worthwhile to determine the minimum version of CMake that actually functions as expected, and implement that as the minimum required CMake version for the LLVM project functionality that invokes the BLAKE3 build, or not. On the one hand, that seems very tedious, on the other hand a different solution is to update to the latest CMake version, however: the problem is that there's no indication that an update is necessary anywhere, except through investigation like I've presented.

Besides; windows environment builds shouldn't incur failures due to the Buildbot environment apparently needing updating.

llvmbot commented 4 months ago

@llvm/issue-subscribers-infrastructure

Author: None (MjrTom)

For approximately the past two months, the LLVM Buildbot builder for llvm-clang-x86_64_expensive-checks-win has failed. The failure always comes after only 2 minutes, and always cites basically the same status. This is demonstrated here: https://lab.llvm.org/buildbot/#/builders/42?numbuilds=1633 Inspecting one of the failures reveals the error: ```CMake Error in lib/Support/BLAKE3/CMakeLists.txt: MSVC_DEBUG_INFORMATION_FORMAT value 'ProgramDatabase' not known for this ASM_MASM compiler. ``` Searching the llvm-project issues, we find: https://github.com/llvm/llvm-project/issues/87007 which shows apparently the exact same problem. The user states they are using CMake version: 3.25.1. CMake documentation states CMake version 3.25+ should support the syntax, but the evidence suggests there's some problem with it operating as expected until some later version. The responder reports the problem was not reproducible using CMake version 3.28.3. The user then reported the problem went away after updating CMake to version 3.29.1 and the issue was closed. I can't find a way to discover the CMake version used by the LLVM Buidbot builder, but from the information at hand; we can reasonably deduce that at least that builder (and presumably all windows builders, if not all LLVM builders) probably should have their CMake version updated to a later version, to allow BLAKE3 to build as expected. The current version of CMake, as of this writing, is 3.29.2 I don't know if it'd be worthwhile to determine the minimum version of CMake that actually functions as expected, and implement that as the minimum required CMake version for the LLVM project functionality that invokes the BLAKE3 build, or not. On the one hand, that seems very tedious, on the other hand a different solution is to update to the latest CMake version, however: the problem is that there's no indication that an update is necessary anywhere, except through investigation like I've presented. Besides; windows environment builds shouldn't incur failures due to the Buildbot environment apparently needing updating.
gkistanova commented 4 months ago

I have updated the buildbot worker https://lab.llvm.org/buildbot/#/workers/88 to cmake version 3.29.2. It is back to green.

However, the patch in question, which exposed the cmake issue, effectively changed the cmake minimum version requirements for Windows. This should be properly handled in cmake by providing a proper diagnostics. It would also be nice to have an RFC or a discussion with the community about incresing the minimum cmake version. I'm leaving this part of the issue to somebody else, thus keeping this issue open.