commit: ccde343f7c5b802035ee9acfcb82a8557456b3c7 Author: Charlie Quinet <w.iron.zombie <AT> gmail <DOT> com> AuthorDate: Sat Jul 26 01:00:04 2025 +0000 Commit: David Roman <davidroman96 <AT> gmail <DOT> com> CommitDate: Sat Jul 26 01:00:04 2025 +0000 URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=ccde343f
app-emulation/lsfg-vk: update for upstream changes Signed-off-by: Charlie Quinet <w.iron.zombie <AT> gmail.com> app-emulation/lsfg-vk/lsfg-vk-9999.ebuild | 29 ++++++++++++++--------------- 1 file changed, 14 insertions(+), 15 deletions(-) diff --git a/app-emulation/lsfg-vk/lsfg-vk-9999.ebuild b/app-emulation/lsfg-vk/lsfg-vk-9999.ebuild index b916f2eaac..2dcdf1ef9d 100644 --- a/app-emulation/lsfg-vk/lsfg-vk-9999.ebuild +++ b/app-emulation/lsfg-vk/lsfg-vk-9999.ebuild @@ -4,7 +4,7 @@ EAPI=8 CARGO_OPTIONAL=1 -inherit cargo cmake flag-o-matic toolchain-funcs +inherit cargo cmake desktop flag-o-matic toolchain-funcs DESCRIPTION="Lossless Scaling Frame Generation on Linux via DXVK/Vulkan" HOMEPAGE="https://github.com/PancakeTAS/lsfg-vk" @@ -18,14 +18,17 @@ if [[ ${PV} == 9999 ]]; then EGIT_SUBMODULES=( thirdparty/dxbc thirdparty/pe-parse + thirdparty/volk ) else HASH_DXBC="80e316fd13d7e8938d99a08f1f405a0679c3ccfa" + HASH_VOLK="be3dbd49bf77052665e96b6c7484af855e7e5f67" PEPARSE_VERSION="2.1.1" SRC_URI=" https://github.com/PancakeTAS/lsfg-vk/archive/refs/tags/v${PV}.tar.gz https://github.com/PancakeTAS/dxbc/archive/${HASH_DXBC}.tar.gz https://github.com/trailofbits/pe-parse/archive/refs/tags/v${PEPARSE_VERSION}.tar.gz + https://github.com/zeux/volk/archive/${HASH_VOLK}.tar.gz " fi @@ -33,14 +36,13 @@ BDEPEND=" dev-util/spirv-headers dev-util/vulkan-headers gui? ( ${RUST_DEPEND} ) - >=media-libs/raylib-9999 " DEPEND=" dev-cpp/toml11 dev-util/glslang gui? ( dev-libs/glib:2 - gui-libs/gtk:4 + gui-libs/gtk:4[introspection] gui-libs/libadwaita ) || ( @@ -75,6 +77,7 @@ src_prepare() { if [[ ${PV} != 9999 ]]; then mv ../dxbc-${HASH_DXBC} thirdparty/dxbc || die mv ../pe-parse-${PEPARSE_VERSION} thirdparty/pe-parse || die + mv ../volk-${HASH_VOLK} thirdparty/volk || die fi # Static linking pe-parse @@ -86,18 +89,15 @@ src_prepare() { 's|add_library(${PROJECT_NAME} ${PEPARSERLIB_SOURCEFILES})|add_library(${PROJECT_NAME} STATIC ${PEPARSERLIB_SOURCEFILES})|'\ thirdparty/pe-parse/pe-parser-library/CMakeLists.txt || die - # Using system toml11 and raylib + # Using system toml11 sed -i\ -e '/add_subdirectory(thirdparty\/toml11 EXCLUDE_FROM_ALL)/d' \ - -e '/add_subdirectory(thirdparty\/raylib EXCLUDE_FROM_ALL)/d' \ -e '/get_target_property(TOML11_INCLUDE_DIRS toml11 INTERFACE_INCLUDE_DIRECTORIES)/{ N /target_include_directories(lsfg-vk SYSTEM PRIVATE ${TOML11_INCLUDE_DIRS})/c\ -find_package(toml11 REQUIRED)\ -find_library(raylib_LIBRARY NAMES raylib) +find_package(toml11 REQUIRED) }'\ - -e '/target_link_libraries(lsfg-vk PRIVATE/{N;N;s/toml11 raylib/toml11::toml11 raylib/;s/ SPIRV-Headers//}'\ - -e '/set(CMAKE_CXX_COMPILER clang++) # gcc release build crashes/d;/set(CMAKE_C_COMPILER clang) # feel free to fix :3/d'\ + -e '/target_link_libraries(lsfg-vk PRIVATE/{:a;N;/)/!ba;s/\btoml11\b/toml11::toml11/g;s/\bSPIRV-Headers\b *//g}'\ CMakeLists.txt || die # Using system spirv headers @@ -111,11 +111,6 @@ target_include_directories(dxbc\ )' \ thirdparty/dxbc/CMakeLists.txt || die - # Fixed library path - sed -i\ - 's|"library_path": "\.\./\.\./\.\./lib/liblsfg-vk\.so"|"library_path": "liblsfg-vk.so"|'\ - VkLayer_LS_frame_generation.json || die - eapply_user cmake_src_prepare } @@ -135,5 +130,9 @@ src_install() { insinto "/usr/share/vulkan/implicit_layer.d/" doins "${S}/VkLayer_LS_frame_generation.json" dolib.so "${WORKDIR}/${P}_build/liblsfg-vk.so" - use gui && newbin "${S}/ui/$(cargo_target_dir)/ui" "lsfg-vk-gui" + if use gui; then + dobin "${S}/ui/$(cargo_target_dir)/lsfg-vk-ui" + domenu "${S}/ui/rsc/gay.pancake.lsfg-vk-ui.desktop" + newicon -s 256 "${S}/ui/rsc/icon.png" "gay.pancake.lsfg-vk-ui.png" + fi }
