Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package corrosion for openSUSE:Factory checked in at 2025-09-14 18:48:43 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/corrosion (Old) and /work/SRC/openSUSE:Factory/.corrosion.new.1977 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "corrosion" Sun Sep 14 18:48:43 2025 rev:3 rq:1304222 version:0.5.2 Changes: -------- --- /work/SRC/openSUSE:Factory/corrosion/corrosion.changes 2025-02-25 16:39:37.698958614 +0100 +++ /work/SRC/openSUSE:Factory/.corrosion.new.1977/corrosion.changes 2025-09-14 18:49:24.592171614 +0200 @@ -1,0 +2,8 @@ +Fri Sep 12 07:10:05 UTC 2025 - Dirk Müller <[email protected]> + +- update to 0.5.2: + * Leave choosing the MSVC runtime up to the C/C++ CMake code + (https://github.com/corrosion-rs/corrosion/pull/573, + https://github.com/corrosion-rs/corrosion/pull/566) + +------------------------------------------------------------------- Old: ---- corrosion-0.5.1.tar.gz New: ---- corrosion-0.5.2.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ corrosion.spec ++++++ --- /var/tmp/diff_new_pack.uADKeo/_old 2025-09-14 18:49:25.576212850 +0200 +++ /var/tmp/diff_new_pack.uADKeo/_new 2025-09-14 18:49:25.576212850 +0200 @@ -17,7 +17,7 @@ Name: corrosion -Version: 0.5.1 +Version: 0.5.2 Release: 0 Summary: Rust integration into existing CMake project License: MIT ++++++ corrosion-0.5.1.tar.gz -> corrosion-0.5.2.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/corrosion-0.5.1/.github/workflows/test.yaml new/corrosion-0.5.2/.github/workflows/test.yaml --- old/corrosion-0.5.1/.github/workflows/test.yaml 2024-12-29 15:18:56.000000000 +0100 +++ new/corrosion-0.5.2/.github/workflows/test.yaml 2025-04-24 19:16:13.000000000 +0200 @@ -13,19 +13,19 @@ name: Test Corrosion (CMake 3.15) uses: ./.github/workflows/test_legacy.yaml with : - os: ubuntu-20.04 + os: ubuntu-22.04 rust: 1.46.0 test_legacy_mac: name: Test Corrosion (CMake 3.15) uses: ./.github/workflows/test_legacy.yaml with: - os: macos-12 + os: macos-13 rust: 1.54.0 test_legacy_windows: name: Test Corrosion (CMake 3.15) uses: ./.github/workflows/test_legacy.yaml with: - os: windows-2019 + os: windows-2022 rust: 1.46.0 test_legacy_stable: @@ -35,9 +35,9 @@ fail-fast: false matrix: os: - - windows-2019 # windows-latest is currently not having a supported MSVC compiler - - ubuntu-20.04 - - macos-12 + - windows-2022 # windows-latest is currently not having a supported MSVC compiler + - ubuntu-22.04 + - macos-13 with: os: ${{ matrix.os }} rust: stable @@ -46,12 +46,12 @@ name: Legacy CMake + nightly Rust uses: ./.github/workflows/test_legacy.yaml with: - os: ubuntu-20.04 + os: ubuntu-22.04 rust: nightly test_legacy_new_lockfile_msrv: name: Test MSRV of the new lockfile - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 - name: Install Rust @@ -69,9 +69,9 @@ fail-fast: false matrix: os: - - windows-2019 # windows-latest is currently not having a supported MSVC compiler + - windows-2022 # windows-latest is currently not having a supported MSVC compiler - ubuntu-latest - - macos-12 + - macos-13 arch: - x86_64 - i686 @@ -96,7 +96,7 @@ generator: ninja arch: x86_64 abi: msvc - os: windows-2019 + os: windows-2022 - rust: nightly cmake: 3.19.0 generator: ninja @@ -108,13 +108,13 @@ generator: ninja arch: x86_64 abi: darwin - os: macos-12 + os: macos-13 - rust: 1.54 cmake: 3.19.0 generator: ninja arch: x86_64 abi: msvc - os: windows-2019 + os: windows-2022 compiler: clang - os: ubuntu-latest arch: x86_64 @@ -126,29 +126,29 @@ exclude: # We have a separate test Matrix for the Visual Studio Generator - - os: windows-2019 + - os: windows-2022 generator: default # Default generator is Visual Studio # ARCH - - os: windows-2019 + - os: windows-2022 arch: i686 abi: gnu - - os: windows-2019 + - os: windows-2022 arch: aarch64 abi: gnu - - os: windows-2019 + - os: windows-2022 arch: i686 generator: ninja - - os: windows-2019 + - os: windows-2022 arch: aarch64 generator: ninja - - os: windows-2019 + - os: windows-2022 arch: powerpc64le - - os: macos-12 + - os: macos-13 arch: i686 - - os: macos-12 + - os: macos-13 arch: aarch64 - - os: macos-12 + - os: macos-13 arch: powerpc64le # ABI @@ -156,11 +156,11 @@ abi: msvc - os: ubuntu-latest abi: darwin - - os: windows-2019 + - os: windows-2022 abi: darwin - - os: macos-12 + - os: macos-13 abi: msvc - - os: macos-12 + - os: macos-13 abi: gnu steps: @@ -187,7 +187,7 @@ fail-fast: false matrix: os: - - windows-2019 + - windows-2022 - windows-2022 arch: - x86_64 @@ -198,7 +198,7 @@ # Override rust version for x86_64 - arch: x86_64 rust: 1.46.0 - - os: windows-2019 + - os: windows-2022 cmake: 3.20.6 # Multi-config Generators require at least CMake 3.20 - os: windows-2022 cmake: 3.21.5 # VS on windows-2022 requires at least CMake 3.21 @@ -235,12 +235,12 @@ fail-fast: false matrix: os: - - windows-2019 + - windows-2022 - ubuntu-latest - - macos-12 + - macos-13 include: - abi: default - # - os: windows-2019 + # - os: windows-2022 # abi: gnu steps: - uses: actions/checkout@v4 @@ -275,12 +275,12 @@ fail-fast: false matrix: os: - - windows-2019 + - windows-2022 - ubuntu-latest - - macos-12 + - macos-13 include: - rust: 1.46.0 - - os: macos-12 + - os: macos-13 rust: 1.54.0 # On MacOS-12 linking fails before Rust 1.54 steps: - uses: actions/checkout@v4 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/corrosion-0.5.1/CMakeLists.txt new/corrosion-0.5.2/CMakeLists.txt --- old/corrosion-0.5.1/CMakeLists.txt 2024-12-29 15:18:56.000000000 +0100 +++ new/corrosion-0.5.2/CMakeLists.txt 2025-04-24 19:16:13.000000000 +0200 @@ -5,7 +5,7 @@ # tagged release. Users don't need to care about this, it is mainly to # clearly see in configure logs which version was used, without needing to # rely on `git`, since Corrosion may be installed or otherwise packaged. - VERSION 0.5.0 + VERSION 0.5.2 LANGUAGES NONE HOMEPAGE_URL "https://corrosion-rs.github.io/corrosion/" ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/corrosion-0.5.1/RELEASES.md new/corrosion-0.5.2/RELEASES.md --- old/corrosion-0.5.1/RELEASES.md 2024-12-29 15:18:56.000000000 +0100 +++ new/corrosion-0.5.2/RELEASES.md 2025-04-24 19:16:13.000000000 +0200 @@ -1,3 +1,12 @@ +# v0.5.2 (2025-04-23) + +### Fixes + +- Leave choosing the MSVC runtime up to the C/C++ CMake code ([#573], [#566]) + +[#573]: https://github.com/corrosion-rs/corrosion/pull/573 +[#566]: https://github.com/corrosion-rs/corrosion/pull/566 + # v0.5.1 (2024-12-29) ### Fixes diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/corrosion-0.5.1/cmake/Corrosion.cmake new/corrosion-0.5.2/cmake/Corrosion.cmake --- old/corrosion-0.5.1/cmake/Corrosion.cmake 2024-12-29 15:18:56.000000000 +0100 +++ new/corrosion-0.5.2/cmake/Corrosion.cmake 2025-04-24 19:16:13.000000000 +0200 @@ -1782,6 +1782,13 @@ DEPENDS "${generated_header}" COMMENT "Generate ${generated_header} for ${rust_target}" ) + if(NOT installed_cbindgen) + add_custom_command( + OUTPUT "${generated_header}" + APPEND + DEPENDS _corrosion_cbindgen + ) + endif() else() add_custom_target("_corrosion_cbindgen_${rust_target}_bindings_${header_identifier}" "${CMAKE_COMMAND}" -E env @@ -1795,14 +1802,9 @@ COMMAND_EXPAND_LISTS WORKING_DIRECTORY "${package_manifest_dir}" ) - endif() - - if(NOT installed_cbindgen) - add_custom_command( - OUTPUT "${generated_header}" - APPEND - DEPENDS _corrosion_cbindgen - ) + if(NOT installed_cbindgen) + add_dependencies("_corrosion_cbindgen_${rust_target}_bindings_${header_identifier}" _corrosion_cbindgen) + endif() endif() if(NOT TARGET "_corrosion_cbindgen_${rust_target}_bindings") diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/corrosion-0.5.1/cmake/FindRust.cmake new/corrosion-0.5.2/cmake/FindRust.cmake --- old/corrosion-0.5.1/cmake/FindRust.cmake 2024-12-29 15:18:56.000000000 +0100 +++ new/corrosion-0.5.2/cmake/FindRust.cmake 2025-04-24 19:16:13.000000000 +0200 @@ -178,7 +178,13 @@ # Flags start with / for MSVC if (lib MATCHES "^/" AND ${target_triple} MATCHES "msvc$") - list(APPEND flag_list "${lib}") + # Windows GNU uses the compiler to invoke the linker, so -Wl, prefix is needed + # https://gitlab.kitware.com/cmake/cmake/-/blob/9bed4f4d817f139f0c2e050d7420e1e247949fe4/Modules/Platform/Windows-GNU.cmake#L156 + if (CMAKE_CXX_COMPILER_FRONTEND_VARIANT STREQUAL "GNU") + list(APPEND flag_list "-Wl,${lib}") + else() + list(APPEND flag_list "${lib}") + endif() else() # Strip leading `-l` (unix) and potential .lib suffix (windows) string(REGEX REPLACE "^-l" "" "stripped_lib" "${lib}") @@ -187,8 +193,10 @@ endif() endforeach() set(libs_list "${stripped_lib_list}") - # Special case `msvcrt` to link with the debug version in Debug mode. - list(TRANSFORM libs_list REPLACE "^msvcrt$" "\$<\$<CONFIG:Debug>:msvcrtd>") + # We leave it up to the C/C++ executable that links in the Rust static-library + # to determine which version of the msvc runtime library it should select. + list(FILTER libs_list EXCLUDE REGEX "^msvcrtd?") + list(FILTER flag_list EXCLUDE REGEX "^(-Wl,)?/defaultlib:msvcrtd?") else() message(DEBUG "Determining required native libraries - failed: Regex match failure.") message(DEBUG "`native-static-libs` not found in: `${cargo_build_error_message}`")
