Dependencies
sudo dnf install 'rpm-build'
Prepare Build Environment
Acquire SRPM
rm -Rf ~/'rpmbuild' && rpm -ivh ~/'Downloads/wine'*'.src.rpm' && rm -fv ~/'Downloads/wine'*'.src.rpm' && sync
Spec Config
gio open ~/'rpmbuild/SPECS/wine.spec'
Release
Default release is 1%{?dist}
Increase 1 for future package builds
Add .pba to the end to make 1%{?dist}.pba
If Version changes, start back at release 1
-
Release: 1%{?dist}.pba
Add Patches
# acomminos/wine-pba
Patch600: 0001-wined3d-Initial-implementation-of-a-persistent-mappe.patch
Patch601: 0002-wined3d-Add-support-for-backing-dynamic-wined3d_buff.patch
Patch602: 0003-wined3d-Use-ARB_multi_bind-to-speed-up-UBO-updates.patch
Patch603: 0004-wined3d-Use-GL_CLIENT_STORAGE_BIT-for-persistent-map.patch
Patch604: 0005-wined3d-Disable-persistently-mapped-shader-resource-.patch
Patch605: 0006-wined3d-Perform-initial-allocation-of-persistent-buf.patch
Patch606: 0007-wined3d-Avoid-freeing-persistent-buffer-heap-element.patch
Patch607: 0008-wined3d-Add-DISABLE_PBA-envvar-some-PBA-cleanup.patch
Patch608: 0009-wined3d-Add-quirk-to-use-GL_CLIENT_STORAGE_BIT-for-m.patch
Include Patches
# acomminos/wine-pba
%patch600 -p1
%patch601 -p1
%patch602 -p1
%patch603 -p1
%patch604 -p1
%patch605 -p1
%patch606 -p1
%patch607 -p1
%patch608 -p1
Build SRPM
rpmbuild -bs ~/'rpmbuild/SPECS/wine.spec' && sync
~/rpmbuild/SRPMS
Compile Locally
sudo dnf builddep ~/'rpmbuild/SRPMS/wine'*'.src.rpm' && sync
rpmbuild -ba ~/'rpmbuild/SPECS/wine.spec' && sync
Cleanup
sudo dnf remove 'rpm-build'
rm -Rf ~/'rpmbuild' ~/'Downloads/wine'*'.src.rpm'