be5e2bd Remove the second source path definition from the CMake command

Authored and Committed by mschorm 2 years ago
1 file changed. 1 lines added. 1 lines removed.
    Remove the second source path definition from the CMake command
    
    The '%cmake' RPM macro in Fedora actually expands to:
    | ...
    |   /usr/bin/cmake \
    |         -S "." \
    |         -B "redhat-linux-build" \
    | ...
    
    So in this case the source patch was specified twice.
    First in the macro with the '-S' option and second time outside of the macro,
    in the SPECfile, without the '-S' option.
    
    CMake upstream declares that:
    |  This has never been officially documented or supported,
    |  but older versions accidentally accepted multiple source paths
    |  and used the last path specified. Update scripts to avoid
    |  passing multiple source path arguments.
    https://cmake.org/cmake/help/v3.23/release/3.23.html#deprecated-and-removed-features
    
    This was discovered as CMake upstream implemented a change to the 3.23.0-rc2 release
    that changed this behavior and it broke many Fedora packages that used this
    double source path definition.
      See rhbz#2057738 to see how build behaved
    
    After the CMake upstream got aware of what problems it caused in Fedora,
    they opened a merge request to restore the behavior to the old one,
    but kept the warnings that that is an unsupported and problematic behavior:
      https://gitlab.kitware.com/cmake/cmake/-/issues/23334
    
        
file modified
+1 -1