File wallpaper-engine-kde-plugin.spec of Package wallpaper-engine-kde-plugin
Name: wallpaper-engine-kde-plugin
Version: 0.1.git
Release: 0
Summary: A kde wallpaper plugin integrating wallpaper engine
License: GPL-2.0-only
URL: https://github.com/catsout/wallpaper-engine-kde-plugin
Source: _service
BuildRequires: cmake(Qt6WebSockets)
BuildRequires: kf6-extra-cmake-modules
BuildRequires: cmake(Qt6EglFSDeviceIntegrationPrivate)
BuildRequires: cmake(LibKWorkspace)
BuildRequires: shaderc
BuildRequires: mpv-devel
BuildRequires: liblz4-devel
BuildRequires: vulkan-devel
Requires: python3-websockets
BuildRequires: fdupes
BuildRequires: pkgconfig(eigen3)
BuildRequires: cmake
BuildRequires: cmake(nlohmann_json)
BuildRequires: cmake(glslang)
BuildRequires: glslang-nonstd-devel
Provides: qt6qmlimport(com.github.catsout.wallpaperEngineKde.1) = %version
%description
A wallpaper plugin integrating wallpaper engine into kde wallpaper setting.
%prep
%setup -q -n %_sourcedir/%name-%version -T -D
%__mkdir -p %_builddir/%_sourcedir
%__ln -rs %_sourcedir/%name-%version %_builddir/%_sourcedir
rm -rf src/backend_scene
%__mv ../wallpaper-scene-renderer-* ./src/backend_scene
pushd ./src/backend_scene/third_party/
rm -rf Eigen glslang nlohmann SPIRV-Reflect miniaudio
popd
%__mv ../SPIRV-Reflect-* ./src/backend_scene/third_party/SPIRV-Reflect
%__mv ../miniaudio-* ./src/backend_scene/third_party/miniaudio
%__sed -i '4, 10 d' src/backend_scene/third_party/CMakeLists.txt
%__sed -i 's|add_subdirectory(glslang EXCLUDE_FROM_ALL)|add_library(glslang ALIAS glslang::glslang) |g' src/backend_scene/third_party/CMakeLists.txt
%__sed -i ' 9a find_package (Eigen3::Eigen REQUIRED IMPORTED NAMES Eigen3 ) \
find_package(nlohmann_json REQUIRED ) \
find_package(Vulkan REQUIRED COMPONENTS glslang glslc SPIRV-Tools) \
find_package(glslang REQUIRED )' src/backend_scene/CMakeLists.txt
%__sed -i 's|glslang|MachineIndependent glslang::SPIRV |g' src/backend_scene/src/Vulkan/CMakeLists.txt
%build
%cmake_kf6 -DQT_MAJOR_VERSION=6
%kf6_build
%install
%kf6_install
%fdupes %{buildroot}
%files
%defattr(-,root,root,-)
%doc README.md
%license LICENSE
%_kf6_plasmadir/wallpapers/
%_kf6_qmldir/com/
%_kf6_appstreamdir/com.github.catsout.wallpaperEngineKde.appdata.xml