Created attachment 254939 [details] update to 0.5.1 Changes: https://github.com/SnowflakePowered/librashader/releases/tag/librashader-v0.5.0 https://github.com/SnowflakePowered/librashader/releases/tag/librashader-v0.5.1 Version 0.5.0 bumps the ABI to 2, and is thus ABI-incompatible with versions of librashader prior to 0.5.0. Trying to load this version of librashader will fail if the application only supports ABI 1. Upstream's librashader-build-script doesn't do more than to compile the package librashader-capi and to move the resulting files around. Therefore the port uses the standard do-build target from the ports framework by setting CARGO_FEATURES and CARGO_BUILD_ARGS appropriately instead. This standardization also allows us to drop the DEBUG port option. Generating a debug build is now controlled by setting WITH_DEBUG, see also Mk/Uses/cargo.mk. The port now only compiles the OpenGL and Vulkan runtimes by specifying the appropriate CARGO_FEATURES. This excludes compiling the unneeded Metal and DirectX runtimes. The current version 140 of consumer emulators/ares is incompatible to any version of librashader >= 0.5.0. The port emulators/ares must be updated to version 141 after committing this update. I'll provide an updatepatch for emulators/ares right away.
Created attachment 255027 [details] update to 0.5.1 Rebased the patch after PORTREVISION bump by bug #282516.
Would it make sense to provide the old devel/librashader as a separate port so as to not break applications requiring the old ABI?
(In reply to Robert Clausecker from comment #2) > Would it make sense to provide the old devel/librashader as a separate port so as > to not break applications requiring the old ABI? Not really. So far the only known open-source project using librashader is the emulator system ares.
Thank you for the context. Will commit your changes with my next batch.
Thanks!
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=e290c5eac7c597e80be0347afd287c5df1c6ff2b commit e290c5eac7c597e80be0347afd287c5df1c6ff2b Author: Stefan Schlosser <bsdcode@disroot.org> AuthorDate: 2024-10-02 07:48:45 +0000 Commit: Robert Clausecker <fuz@FreeBSD.org> CommitDate: 2024-11-14 08:43:22 +0000 devel/librashader: update to 0.5.1 Changes: https://github.com/SnowflakePowered/librashader/releases/tag/librashader-v0.5.0 https://github.com/SnowflakePowered/librashader/releases/tag/librashader-v0.5.1 Version 0.5.0 bumps the ABI to 2, and is thus ABI-incompatible with versions of librashader prior to 0.5.0. Trying to load this version of librashader will fail if the application only supports ABI 1. Upstream's librashader-build-script doesn't do more than to compile the package librashader-capi and to move the resulting files around. Therefore the port uses the standard do-build target from the ports framework by setting CARGO_FEATURES and CARGO_BUILD_ARGS appropriately instead. This standardization also allows us to drop the DEBUG port option. Generating a debug build is now controlled by setting WITH_DEBUG, see also Mk/Uses/cargo.mk. The port now only compiles the OpenGL and Vulkan runtimes by specifying the appropriate CARGO_FEATURES. This excludes compiling the unneeded Metal and DirectX runtimes. PR: 282547 MFH: no (ABI break) devel/librashader/Makefile | 41 +++--- devel/librashader/Makefile.crates | 132 ++++++++++--------- devel/librashader/distinfo | 270 +++++++++++++++++++++----------------- devel/librashader/pkg-plist | 3 +- 4 files changed, 237 insertions(+), 209 deletions(-)
Thank you for your contribution.