diff --git a/CMakeLists.txt b/CMakeLists.txt index f313c648..ac05ffe5 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -5,7 +5,7 @@ project(Corrosion # 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.4.99.99 # a 0.5-pre-release + VERSION 0.99.99 # 1.0-pre-release LANGUAGES NONE HOMEPAGE_URL "https://corrosion-rs.github.io/corrosion/" ) @@ -63,7 +63,7 @@ write_basic_package_version_file( "${CMAKE_CURRENT_BINARY_DIR}/CorrosionConfigVersion.cmake" VERSION ${PROJECT_VERSION} COMPATIBILITY - SameMinorVersion # TODO: Should be SameMajorVersion when 1.0 is released + SameMajorVersion ARCH_INDEPENDENT ) diff --git a/README.md b/README.md index 10fbeb27..d908b0f9 100644 --- a/README.md +++ b/README.md @@ -40,9 +40,9 @@ target_link_libraries(your_cpp_bin PUBLIC rust-lib) ## Requirements -### Stable v0.4 Release +### Stable v0.5 Release -- CMake 3.15 or newer. Some features may only be available on more recents CMake versions +- CMake 3.15 or newer. Some features may only be available on more recent CMake versions - Rust 1.46 or newer. Some platforms / features may require more recent Rust versions ### Development (master branch) diff --git a/RELEASES.md b/RELEASES.md index 71571270..dd6e0fa0 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -2,9 +2,6 @@ ### Breaking Changes -- Dashes (`-`) in names of imported CMake **library** targets are now replaced with underscores (`_`). - See [issue #501] for details. Users on older Corrosion versions will experience the same - change when using Rust 1.79 or newer. `bin` targets are not affected by this change. - The master branch of corrosion now requires CMake 3.22. See also the [v0.4.0 Release notes](#040-lts-2023-06-01) for more details. - Removed native tooling and the corresponding option `CORROSION_NATIVE_TOOLING`. @@ -13,31 +10,52 @@ ### New features - Support using the `$` generator expression in `OUTPUT_DIRECTORY`. [#459] -- If `corrosion_link_libraries()` is called on a Rust static library target, then - `target_link_libraries()` is called to propogate the dependencies to C/C++ consumers. - Previously a warning was emitted in this case and the arguments ignored. [#506] + + +[#459]: https://github.com/corrosion-rs/corrosion/pull/459 + +# v0.5.0 (2024-05-11) + +### Breaking Changes + +- Dashes (`-`) in names of imported CMake **library** targets are now replaced with underscores (`_`). + See [issue #501] for details. Users on older Corrosion versions will experience the same + change when using Rust 1.79 or newer. `bin` targets are not affected by this change. + +[issue #501]: https://github.com/corrosion-rs/corrosion/issues/501 + +# v0.4.10 (2024-05-11) + +### New features + - `corrosion_experimental_cbindgen()` can now be called multiple times on the same Rust target, as long as the output header name differs. This may be useful to generate separate C and C++ bindings. [#507] +- If `corrosion_link_libraries()` is called on a Rust static library target, then + `target_link_libraries()` is called to propagate the dependencies to C/C++ consumers. + Previously a warning was emitted in this case and the arguments ignored. [#506] ### Fixes - Combine `-framework` flags on macos to avoid linker deduplication errors [#455] +- `corrosion_experimental_cbindgen()` will now correctly use the package name, instead of assuming that + the package and crate name are identical. ([11e27c]) - Set the `AR_` variable for `cc-rs` (except for msvc targets) [#456] +- Fix hostbuild when cross-compiling to windows [#477] +- Consider vworks executable suffix [#504] - `corrosion_experimental_cbindgen()` now forwards the Rust target-triple (e.g. `aarch64-unknown-linux-gnu`) to cbindgen via the `TARGET` environment variable. The `hostbuild` property is considered. [#507] -- Detect msvc linker flags coming from `--print=native-static-libs` and put them into `INTERFACE_LINK_OPTIONS` instead of `INTERFACE_LINK_LIBRARIES` [#511] -- `corrosion_experimental_cbindgen()` will now correctly use the package name, instead of assuming that - the package and crate name are identical. +- Fix linking errors with Rust >= 1.79 and `-msvc` targets.` [#511] -[issue #501]: https://github.com/corrosion-rs/corrosion/issues/501 -[#459]: https://github.com/corrosion-rs/corrosion/pull/459 -[#456]: https://github.com/corrosion-rs/corrosion/pull/456 [#455]: https://github.com/corrosion-rs/corrosion/pull/455 +[#456]: https://github.com/corrosion-rs/corrosion/pull/456 +[#477]: https://github.com/corrosion-rs/corrosion/pull/477 +[#504]: https://github.com/corrosion-rs/corrosion/pull/504 [#506]: https://github.com/corrosion-rs/corrosion/pull/506 [#507]: https://github.com/corrosion-rs/corrosion/pull/507 [#511]: https://github.com/corrosion-rs/corrosion/pull/511 +[11e27c]: https://github.com/corrosion-rs/corrosion/pull/514/commits/11e27cde2cf32c7ed539c96eb03c2f10035de538 # v0.4.9 (2024-05-01)