Uploaded image for project: 'Core ReactOS'
  1. Core ReactOS
  2. CORE-20236

[CMAKE] MSVC: "Policy CMP0175 is not set: add_custom_command() rejects invalid arguments."

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • Major
    • None
    • Build System
    • None

    Description

      build-msvc (windows-latest, 14, i386, Debug, 0x502)
      https://github.com/reactos/reactos/actions/runs/15706771979/job/44254355113
      build-msvc (windows-latest, 14, amd64, Debug, 0x502)
      https://github.com/reactos/reactos/actions/runs/15706771979/job/44254355135
      Note:
      I did not check any other build type...

      Configure
       
      CMake Warning (dev) at sdk/cmake/msvc.cmake:580 (add_custom_command):
        The following keywords are not supported when using
        add_custom_command(TARGET): DEPENDS.
       
        Policy CMP0175 is not set: add_custom_command() rejects invalid arguments.
        Run "cmake --help-policy CMP0175" for policy details.  Use the cmake_policy
        command to set the policy and suppress this warning.
      Call Stack (most recent call first):
        boot/freeldr/freeldr/pcat.cmake:201 (add_linker_script)
        boot/freeldr/freeldr/CMakeLists.txt:123 (include)
      This warning is for project developers.  Use -Wno-dev to suppress it.
      

      https://cmake.org/cmake/help/latest/policy/CMP0175.html

      add_custom_command() rejects invalid arguments.

      CMake 3.30 and earlier silently ignored unsupported keywords and missing or invalid arguments for the different forms of the add_custom_command() command. CMake 3.31 implements more rigorous argument checking and will flag invalid or missing arguments as errors.

      The TARGET form does not accept DEPENDS, DEPENDS_EXPLICIT_ONLY, DEPFILE, IMPLICIT_DEPENDS, MAIN_DEPENDENCY, JOB_POOL, or JOB_SERVER_AWARE keywords.

      This policy [...] may be set by cmake_policy() or cmake_minimum_required(). If it is not set, CMake warns, and uses OLD behavior.

      https://cmake.org/cmake/help/latest/command/add_custom_command.html

      https://github.com/reactos/reactos/blob/master/sdk/cmake/msvc.cmake#L580

              add_custom_command(
                  # OUTPUT ${_generated_file}
                  TARGET ${_target} PRE_LINK # PRE_BUILD
                  COMMAND ${CMAKE_C_COMPILER} /nologo ${_no_std_includes_flag} /D__LINKER__ /EP /c "${_file_full_path}" > "${_generated_file}"
                  DEPENDS ${_file_full_path}
                  VERBATIM)
      

      Attachments

        Activity

          People

            hbelusca hbelusca
            Serge Gautherie Serge Gautherie
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: