add: Terra WINE (#4857) (#4896)

* add: Terra WINE stack

* chore: Rename some stuff and conflicts

* chore: Rename Git

* Update winetricks-git.spec



* Update winetricks.spec



* Update and rename wine-devel.spec to wine-dev.spec



* fix: Weird ix86 stuff

* fix: I messed with Winetricks last can you tell

* fix: Requires

* fix: Files

* fix?: aarch64 fixes

* fix: Better dir fix

* fix: Even better

* fix: What

* fix: ?

* AaaaaAAAAA



* Update wine-stable.spec



* Update wine-dev.spec



* Update winetricks-git.spec



* Hopefully actually fix that jank

---------


(cherry picked from commit 3c1be11bfd)

Signed-off-by: Gilver <rockgrub@disroot.org>
Co-authored-by: Gilver <rockgrub@disroot.org>
This commit is contained in:
Raboneko
2025-05-19 04:41:01 -07:00
committed by GitHub
parent 58eef4bde8
commit 904463c1b7
18 changed files with 1639 additions and 0 deletions
+10
View File
@@ -0,0 +1,10 @@
project pkg {
arches = ["x86_64"]
rpm {
spec = "winetricks-git.spec"
}
labels {
subrepo = "extras"
nightly = 1
}
}
+7
View File
@@ -0,0 +1,7 @@
rpm.global("commit", gh_commit("Winetricks/winetricks"));
if rpm.changed() {
rpm.release();
rpm.global("commit_date", date());
let v = gh("Winetricks/winetricks");
rpm.global("ver", v);
}
@@ -0,0 +1,75 @@
# Fedora sometimes sources the snapshots under stable versions and just bumps release
# For user clarity I have separated these into different packages
%global commit 00427b67de70bfefd282d0abc7edd1daa442e73e
%global shortcommit %(c=%{commit}; echo ${c:0:7})
%global ver 20250102
%global commit_date 20250504
Name: winetricks-git
Version: %{ver}^%{commit_date}git.%{shortcommit}
Release: 1%{?dist}
Summary: Work around common problems in Wine; Winetricks Git builds
License: LGPL-2.1-or-later
URL: https://github.com/Winetricks/winetricks
Source0: %{url}/archive/%{commit}.tar.gz#/%{name}-%{commit}.tar.gz
BuildRequires: desktop-file-utils
BuildRequires: gcc
BuildRequires: make
Requires: cabextract
Requires: gzip
Requires: unzip
Requires: wget
Requires: which
Requires: hicolor-icon-theme
Requires: (kdialog or zenity)
Requires: (wine-stable or wine-staging or wine-dev or wine-common)
Conflicts: winetricks
Conflicts: terra-winetricks
BuildArch: noarch
# need arch-specific wine, not available everywhere:
# - adopted from wine.spec
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
ExcludeArch: ppc64 ppc64le
%description
Winetricks is an easy way to work around common problems in Wine.
It has a menu of supported games/apps for which it can do all the
workarounds automatically. It also lets you install missing DLLs
or tweak various Wine settings individually.
This version of Winetricks is built from the latest Git.
It is also compatible with Terra WINE builds.
%prep
%setup -qn winetricks-%{commit}
sed -i -e s:steam:: -e s:flash:: tests/*
%build
# Empty build section because RPM
%install
%make_install
# some tarballs do not install appdata
install -Dm0644 -t %{buildroot}%{_datadir}/metainfo src/io.github.winetricks.Winetricks.metainfo.xml
%check
desktop-file-validate %{buildroot}%{_datadir}/applications/winetricks.desktop
%files
%license COPYING
%license debian/copyright
%doc README.md
%{_bindir}/winetricks
%{_mandir}/man1/winetricks.1*
%{_datadir}/applications/winetricks.desktop
%{_datadir}/bash-completion/completions/winetricks
%{_datadir}/icons/hicolor/scalable/apps/winetricks.svg
%{_datadir}/metainfo/io.github.winetricks.Winetricks.metainfo.xml
%changelog
%autochangelog
+9
View File
@@ -0,0 +1,9 @@
project pkg {
arches = ["x86_64"]
rpm {
spec = "winetricks.spec"
}
labels {
subrepo = "extras"
}
}
+1
View File
@@ -0,0 +1 @@
rpm.version(gh("Winetricks/winetricks"));
@@ -0,0 +1,68 @@
# Fedora sometimes sources the snapshots under stable versions and just bumps release
# For user clarity I have separated these into different packages
Name: terra-winetricks
Version: 20250102
Release: 1%{?dist}
Summary: Winetricks built to be compatible with Terra WINE builds
License: LGPL-2.1-or-later
URL: https://github.com/Winetricks/winetricks
Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz
BuildRequires: desktop-file-utils
BuildRequires: gcc
BuildRequires: make
Requires: cabextract
Requires: gzip
Requires: unzip
Requires: wget
Requires: which
Requires: hicolor-icon-theme
Requires: (kdialog or zenity)
Requires: (wine-stable or wine-staging or wine-dev)
Conflicts: winetricks
Conflicts: winetricks-git
BuildArch: noarch
# need arch-specific wine, not available everywhere:
# - adopted from wine.spec
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
ExcludeArch: ppc64 ppc64le
%description
Winetricks is an easy way to work around common problems in Wine.
It has a menu of supported games/apps for which it can do all the
workarounds automatically. It also lets you install missing DLLs
or tweak various Wine settings individually.
%prep
%setup -q -n winetricks-%{version}
sed -i -e s:steam:: -e s:flash:: tests/*
%build
# Empty build section because RPM
%install
%make_install
# some tarballs do not install appdata
install -Dm0644 -t %{buildroot}%{_datadir}/metainfo src/io.github.winetricks.Winetricks.metainfo.xml
%check
desktop-file-validate %{buildroot}%{_datadir}/applications/winetricks.desktop
%files
%license COPYING
%license debian/copyright
%doc README.md
%{_bindir}/winetricks
%{_mandir}/man1/winetricks.1*
%{_datadir}/applications/winetricks.desktop
%{_datadir}/bash-completion/completions/winetricks
%{_datadir}/icons/hicolor/scalable/apps/winetricks.svg
%{_datadir}/metainfo/io.github.winetricks.Winetricks.metainfo.xml
%changelog
%autochangelog
+11
View File
@@ -0,0 +1,11 @@
project pkg {
arches = ["x86_64", "aarch64", "i386"]
rpm {
spec = "wine-dev.spec"
extra_repos = ["https://repos.fyralabs.com/terrarawhide-mesa"]
}
labels {
mock = 1
subrepo = "extras"
}
}
+12
View File
@@ -0,0 +1,12 @@
let v = (gitlab_tag("gitlab.winehq.org", "5"));
v.crop(1);
rpm.global("ver", v); // Sometimes the development branch includes RC candidates
if rpm.changed () {
rpm.release();
// Only find versions ending in .x (point releases)
let matches = (find_all("[\\d.]+[.]x", get("https://dl.winehq.org/wine/source/")));
matches.dedup();
let s = sh(`echo ${matches} | sed 's/,//g' | sed 's/\[//g' | sed 's/\]//g' | sed 's/"//g' | tr ' ' '\n' | sort -nr | tr '\n' ' '`, #{"stdout": "piped"}).ctx.stdout;
s.truncate(4);
rpm.global("srcmajor", s);
}
+420
View File
@@ -0,0 +1,420 @@
# Terra WINE Development branch
# Based on WineHQ's WINE builds with changes for our repos and update system
%define _lto_cflags %{nil}
%global flavor %nil
%global compat_package terra-wine-dev
# Cannot use the _datadir macro here or it will cause mass macro recursion
%global _prefix /usr/share/wine-dev
%global srcmajor 10.x
# Make this as a variable instead in case of WINE RCs
%global ver 10.7
# This is unfortunate but a lot of Fedora's/SUSE's hardening flags break WINE
%undefine _hardened_build
# Upstream WineHQ names this -devel, I have renamed it dev to signify it is the dev branch
# Also less confusing because it has a devel package
Name: wine-dev
Version: %(echo %{ver} | sed 's/-/~/g')
Release: 1
Epoch: 1
Summary: WINE Is Not An Emulator - runs MS Windows programs
License: LGPL-2.0-or-later
Group: Emulators
URL: https://www.winehq.org
%define lib_major 1
%define lib_name lib%{name}1
%define lib_name_devel lib%{name}-devel
%if 0%{?fedora} < 40
%ifarch x86_64
%define wine %{name}64
%define mark64 ()(64bit)
%else
%define wine %{name}
%define mark64 %{nil}
%endif
%endif
%if 0%{?fedora} >= 40
%define wine %{name}
%ifarch x86_64
%define mark64 ()(64bit)
%else
%define mark64 %{nil}
%endif
%endif
Source0: https://dl.winehq.org/wine/source/%{srcmajor}/wine-%{ver}.tar.xz
Source1: https://dl.winehq.org/wine/source/%{srcmajor}/wine-%{version}.tar.xz.sign
# Alexandres key
Source99: wine.keyring
BuildRequires: alsa-lib-devel
BuildRequires: audiofile-devel
BuildRequires: autoconf
BuildRequires: bison
BuildRequires: coreutils
BuildRequires: cups-devel
BuildRequires: dbus-devel
BuildRequires: desktop-file-utils
BuildRequires: flex
BuildRequires: fontconfig-devel
BuildRequires: fontforge
BuildRequires: fontpackages-devel
BuildRequires: freeglut-devel
BuildRequires: freetype-devel
BuildRequires: gawk
BuildRequires: gcc
BuildRequires: gettext-devel
BuildRequires: giflib-devel
BuildRequires: gnupg2
BuildRequires: gnutls-devel
BuildRequires: gstreamer1-devel
BuildRequires: gstreamer1-plugins-base-devel
BuildRequires: icoutils
BuildRequires: ImageMagick-devel
BuildRequires: krb5-devel
BuildRequires: lcms2-devel
BuildRequires: libattr-devel
BuildRequires: libavcodec-free-devel
BuildRequires: libavformat-free-devel
BuildRequires: libavutil-free-devel
BuildRequires: libgphoto2-devel
BuildRequires: libieee1284-devel
BuildRequires: libnetapi-devel
BuildRequires: libpcap-devel
BuildRequires: librsvg2
BuildRequires: librsvg2-devel
BuildRequires: libstdc++-devel
BuildRequires: libudev-devel
BuildRequires: libusb1-devel
BuildRequires: libv4l-devel
BuildRequires: libX11-devel
BuildRequires: libXcomposite-devel
BuildRequires: libXcursor-devel
BuildRequires: libXext-devel
BuildRequires: libXi-devel
BuildRequires: libXinerama-devel
BuildRequires: libxkbcommon-devel
BuildRequires: libXmu-devel
BuildRequires: libXrandr-devel
BuildRequires: libXrender-devel
BuildRequires: libXxf86dga-devel
BuildRequires: libXxf86vm-devel
BuildRequires: lzma
BuildRequires: mesa-compat-libOSMesa-devel
BuildRequires: mesa-libGL-devel
BuildRequires: mesa-libGLU-devel
BuildRequires: mingw32-gcc
BuildRequires: mingw64-gcc
BuildRequires: ncurses-devel
BuildRequires: ocl-icd-devel
BuildRequires: opencl-headers
BuildRequires: pcsc-lite-devel
BuildRequires: pulseaudio-libs-devel
BuildRequires: samba-devel
BuildRequires: sane-backends-devel
BuildRequires: SDL2-devel
BuildRequires: unixODBC-devel
BuildRequires: unzip
BuildRequires: util-linux
BuildRequires: vulkan-devel
BuildRequires: xz
%if 0%{?fedora} < 40
%ifarch x86_64
%package -n %{wine}
%endif
%endif
Summary: WINE Is Not An Emulator - runs MS Windows programs
Group: Emulators
%ifarch x86_64
Conflicts: %{name}
%else
Conflicts: %{name}64
%endif
%if 0%{?fedora} < 40
Requires: %{name}-common = %{epoch}:%{version}-%{release}
%endif
Provides: %{lib_name} = %{epoch}:%{version}-%{release}
Provides: %{name}-bin = %{epoch}:%{version}-%{release}
Obsoletes: %{lib_name} <= %{epoch}:%{version}-%{release}
%ifarch %{ix86}
%package -n %{name}-common
Summary: WINE Is Not An Emulator - runs MS Windows programs (32-bit common files)
Group: Emulators
Requires: %{name}-bin = %{epoch}:%{version}-%{release}
%description -n %{name}-common
Wine is a program which allows running Microsoft Windows programs
(including DOS, Windows 3.x and Win32 executables) on Unix.
This package contains the files needed to support 32-bit Windows
programs, and is used by both %{name} and %{name}64.
%endif
%define dlopenreq() %(F=/usr/%{_lib}/lib%{1}.so;[ -e $F ] && (file $F|grep -q ASCII && grep -o 'lib[^ ]*' $F|sed -e "s/\$/%{mark64}/"||objdump -p $F | grep SONAME | awk '{ print $2 "%{mark64}" }') || echo "wine-missing-buildrequires-on-%{1}")
Requires: %dlopenreq asound
Requires: %dlopenreq attr
Requires: %dlopenreq cups
Requires: %dlopenreq dbus-1
Requires: %dlopenreq fontconfig
Requires: %dlopenreq freetype
Requires: %dlopenreq gnutls
Requires: %dlopenreq krb5
Requires: %dlopenreq ncurses
Requires: %dlopenreq odbc
Requires: %dlopenreq OSMesa
Requires: %dlopenreq sane
Requires: %dlopenreq SDL2
Requires: %dlopenreq v4l1
Requires: %dlopenreq vulkan
Requires: %dlopenreq Xcomposite
Requires: %dlopenreq Xcursor
Requires: %dlopenreq Xi
Requires: %dlopenreq Xinerama
Requires: %dlopenreq Xrandr
Requires: %dlopenreq Xrender
Requires: %dlopenreq Xxf86vm
%if 0%{?fedora}
Suggests: sane-frontends
%endif
Requires(post): desktop-file-utils
Requires(postun): desktop-file-utils
%define desc Wine is a program which allows running Microsoft Windows programs \
(including DOS, Windows 3.x and Win32 executables) on Unix. It \
consists of a program loader which loads and executes a Microsoft \
Windows binary, and a library (called Winelib) that implements Windows \
API calls using their Unix or X11 equivalents. The library may also \
be used for porting Win32 code into native Unix executables.
%description
%desc
%ifarch x86_64
%description -n %{wine}
%desc
%endif
%package -n %{wine}-devel
Summary: Static libraries and headers for %{name} (64-bit)
Group: Development/C
Requires: %{wine} = %{epoch}:%{version}-%{release}
%ifarch x86_64
Conflicts: %{name}-devel
%else
Conflicts: %{name}64-devel
%endif
Provides: %{lib_name_devel} = %{epoch}:%{version}-%{release}
Obsoletes: %{lib_name_devel} <= %{epoch}:%{version}-%{release}
%description -n %{wine}-devel
Wine is a program which allows running Microsoft Windows programs
(including DOS, Windows 3.x and Win32 executables) on Unix.
This package contains the libraries and header files needed to
develop programs which make use of Wine.
%package -n %compat_package
Summary: WINE Is Not An Emulator - runs MS Windows programs
Group: Emulators
Requires: %{wine} = %{epoch}:%{version}-%{release}
%if 0%{?fedora} < 40
Conflicts: wine wine64 wine-core wine-common wine-desktop wine-devel
%else
Conflicts: wine wine64 wine-core wine-common wine-desktop
%endif
%description -n %compat_package
Wine is a program which allows running Microsoft Windows programs
(including DOS, Windows 3.x and Win32 executables) on Unix.
This compatibility package allows to use %{wine} system-wide as
the default Wine version.
%prep
# Pull key from key server, if this fails import local copy and then refresh it to make sure it is up to date
gpg --keyserver hkp://keys.gnupg.net --recv-keys CEFAC8EAAF17519D || { gpg --with-fingerprint --import %{SOURCE99} && gpg --refresh-keys; }
gpg --update-trustdb
gpg --verify --with-fingerprint %{SOURCE1} %{SOURCE0}
%setup -n wine-%{version} -q -T -b0
%build
# MinGW GCC does not support these options
%define debug_package %{nil}
export LDFLAGS="$(echo "%{build_ldflags}" | sed -e 's/-Wl,-z,relro//' -e 's/-Wl,--build-id=sha1//' -e 's/-specs=\/usr\/lib\/rpm\/redhat\/redhat-package-notes//')"
%ifarch x86_64
export CFLAGS="$(echo "%{optflags}" | sed -e 's/-O2//' -e 's/-Wp,-D_FORTIFY_SOURCE=2//' -e 's/-fcf-protection//' -e 's/-fstack-protector-strong//' -e 's/-fstack-clash-protection//') -O2"
%else
export CFLAGS="$(echo "%{optflags}" | sed -e 's/-Wp,-D_FORTIFY_SOURCE=2//' -e 's/-fcf-protection//' -e 's/-fstack-protector-strong//' -e 's/-fstack-clash-protection//')"
%endif
%configure \
--with-gstreamer \
--disable-tests \
%if 0%{?fedora} >= 40
--enable-archs=i386,x86_64 \
%else
%ifarch x86_64
--enable-win64 \
%endif
%endif
--with-x
make -j4
%install
%makeinstall LDCONFIG=/bin/true
# Compat symlinks for bindir
mkdir -p "%{buildroot}/usr/bin"
for _file in $(ls "%{buildroot}%{_bindir}"); do \
ln -s "%{_bindir}/$_file" "%{buildroot}/usr/bin/$_file"; \
done
%if 0%{?fedora} < 40
%ifarch x86_64
for _file in wine wine-preloader; do \
ln -s "%{_prefix}/bin/$_file" "%{buildroot}/usr/bin/$_file"; \
done
%endif
%endif
# Compat symlinks for desktop file
mkdir -p "%{buildroot}/usr/share/applications"
for _file in $(ls "%{buildroot}%{_datadir}/applications"); do \
ln -s "%{_datadir}/applications/$_file" "%{buildroot}/usr/share/applications/$_file"; \
done
# Compat manpages
%if 0%{?fedora} || 0%{?scientificlinux} || 0%{?centos} >= 700 || 0%{?rhel} >= 700
for _dir in man1 de.UTF-8/man1 fr.UTF-8/man1 pl.UTF-8/man1; do \
if [ -d "%{buildroot}%{_mandir}/$_dir" ]; then \
mkdir -p "$(dirname "%{buildroot}/usr/share/man/$_dir")"; \
cp -pr "%{buildroot}%{_mandir}/$_dir" "%{buildroot}/usr/share/man/$_dir"; \
else \
mkdir -p "%{buildroot}/usr/share/man/$_dir"; \
fi; \
done
%else
for _dir in man1 de.UTF-8/man1 fr.UTF-8/man1 pl.UTF-8/man1; do \
mkdir -p "%{buildroot}/usr/share/man/$_dir"; \
done
%endif
%ifarch x86_64
#install -p -m 0644 loader/wine.man "%{buildroot}/usr/share/man/man1/wine.1"
#install -p -m 0644 loader/wine.de.UTF-8.man "%{buildroot}/usr/share/man/de.UTF-8/man1/wine.1"
#install -p -m 0644 loader/wine.fr.UTF-8.man "%{buildroot}/usr/share/man/fr.UTF-8/man1/wine.1"
#install -p -m 0644 loader/wine.pl.UTF-8.man "%{buildroot}/usr/share/man/pl.UTF-8/man1/wine.1"
%endif
%files -n %{wine}
%doc ANNOUNCE.md AUTHORS README.md
%license LICENSE
%if 0%{?fedora} < 40
%ifarch x86_64
%{_bindir}/wine64
%{_bindir}/wine64-preloader
%endif
%endif
%{_bindir}/function_grep.pl
%{_bindir}/msiexec
%{_bindir}/msidb
%{_bindir}/notepad
%{_bindir}/regedit
%{_bindir}/regsvr32
%{_bindir}/widl
%{_bindir}/wineboot
%{_bindir}/winebuild
%{_bindir}/winecfg
%{_bindir}/wineconsole*
%{_bindir}/winecpp
%{_bindir}/winedbg
%{_bindir}/winedump
%{_bindir}/winefile
%{_bindir}/wineg++
%{_bindir}/winegcc
%{_bindir}/winemaker
%{_bindir}/winemine
%{_bindir}/winepath
%{_bindir}/wineserver
%{_bindir}/wmc
%{_bindir}/wrc
%lang(de) %{_mandir}/de.UTF-8/man?/winemaker.?*
%lang(de) %{_mandir}/de.UTF-8/man?/wineserver.?*
%lang(fr) %{_mandir}/fr.UTF-8/man?/winemaker.?*
%lang(fr) %{_mandir}/fr.UTF-8/man?/wineserver.?*
%{_mandir}/man?/widl.1*
%{_mandir}/man?/winebuild.1*
%{_mandir}/man?/winecpp.1*
%{_mandir}/man?/winedbg.1*
%{_mandir}/man?/winedump.1*
%{_mandir}/man?/wineg++.1*
%{_mandir}/man?/winegcc.1*
%{_mandir}/man?/winemaker.1*
%{_mandir}/man?/wmc.1*
%{_mandir}/man?/wrc.1*
%{_mandir}/man?/msiexec.?*
%{_mandir}/man?/notepad.?*
%{_mandir}/man?/regedit.?*
%{_mandir}/man?/regsvr32.?*
%{_mandir}/man?/wineboot.?*
%{_mandir}/man?/winecfg.?*
%{_mandir}/man?/wineconsole.?*
%{_mandir}/man?/winefile.?*
%{_mandir}/man?/winemine.?*
%{_mandir}/man?/winepath.?*
%{_mandir}/man?/wineserver.?*
%dir %{_datadir}/wine
%{_datadir}/wine/wine.inf
%{_datadir}/wine/nls/*.nls
%{_datadir}/applications/*.desktop
%dir %{_datadir}/wine/fonts
%{_datadir}/wine/fonts/*
%if 0%{?fedora} < 40
%ifarch %{ix86}
%files -n %{name}-common
%{_bindir}/wine
%{_bindir}/wine-preloader
%{_mandir}/man?/wine.?*
%lang(de) %{_mandir}/de.UTF-8/man?/wine.?*
%lang(fr) %{_mandir}/fr.UTF-8/man?/wine.?*
%lang(pl) %{_mandir}/pl.UTF-8/man?/wine.?*
%endif
%else
%{_bindir}/wine
#%{_bindir}/wine-preloader
%{_mandir}/man?/wine.?*
%lang(de) %{_mandir}/de.UTF-8/man?/wine.?*
%lang(fr) %{_mandir}/fr.UTF-8/man?/wine.?*
%lang(pl) %{_mandir}/pl.UTF-8/man?/wine.?*
%endif
%if 0%{?fedora} < 40
%ifarch %ix86 x86_64
%{_libdir}/wine/%{_arch}-unix/*.*
%{_libdir}/wine/%{_arch}-windows/*.*
%endif
%else
%{_libdir}/wine/%{_arch}-unix/*
%{_libdir}/wine/i386-windows/*.*
%{_libdir}/wine/x86_64-windows/*.*
%endif
%files -n %{wine}-devel
%{_includedir}/*
%files -n %compat_package
/usr/bin/*
/usr/share/applications/*.desktop
/usr/share/man/man?/*
%lang(de) /usr/share/man/de.UTF-8/man?/*
%lang(fr) /usr/share/man/fr.UTF-8/man?/*
%lang(pl) /usr/share/man/pl.UTF-8/man?/*
+52
View File
@@ -0,0 +1,52 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
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
=6vF7
-----END PGP PUBLIC KEY BLOCK-----
+11
View File
@@ -0,0 +1,11 @@
project pkg {
arches = ["x86_64", "aarch64", "i386"]
rpm {
spec = "wine-stable.spec"
extra_repos = ["https://repos.fyralabs.com/terrarawhide-mesa"]
}
labels {
mock = 1
subrepo = "extras"
}
}
+6
View File
@@ -0,0 +1,6 @@
let matches = (find_all("[\\d.]+[.]0", get("https://dl.winehq.org/wine/source/"))); // Only find versions ending in .0. Stable WINE always ends in .0
matches.dedup();
// Sort for the largest match, the sed and tr commands remove everything preventing sort from working correctly
let v = sh(`echo ${matches} | sed 's/,//g' | sed 's/\[//g' | sed 's/\]//g' | sed 's/"//g' | tr ' ' '\n' | sort -nr | tr '\n' ' '`, #{"stdout": "piped"}).ctx.stdout;
v.truncate(4);
rpm.version(v);
+413
View File
@@ -0,0 +1,413 @@
# Terra WINE Stable branch
# Based on WineHQ's WINE builds with changes for our repos and update system
%define _lto_cflags %{nil}
%global flavor %nil
%define compat_package terra-wine-stable
%define _prefix /usr/share/wine-stable
# This is unfortunate but a lot of Fedora's/SUSE's hardening flags break WINE
%undefine _hardened_build
Name: wine-stable
Version: 10.0
Release: 1
Epoch: 1
Summary: WINE Is Not An Emulator - runs MS Windows programs
License: LGPL-2.0-or-later
Group: Emulators
URL: https://www.winehq.org/
%define lib_major 1
%define lib_name lib%{name}1
%define lib_name_devel lib%{name}-devel
%if 0%{?fedora} < 40
%ifarch x86_64
%define wine %{name}64
%define mark64 ()(64bit)
%else
%define wine %{name}
%define mark64 %{nil}
%endif
%endif
%if 0%{?fedora} >= 40
%define wine %{name}
%ifarch x86_64
%define mark64 ()(64bit)
%else
%define mark64 %{nil}
%endif
%endif
Source0: https://dl.winehq.org/wine/source/%{version}/wine-%{version}.tar.xz
Source1: https://dl.winehq.org/wine/source/%{version}/wine-%{version}.tar.xz.sign
# Alexandres key
Source99: wine.keyring
BuildRequires: alsa-lib-devel
BuildRequires: audiofile-devel
BuildRequires: autoconf
BuildRequires: bison
BuildRequires: coreutils
BuildRequires: cups-devel
BuildRequires: dbus-devel
BuildRequires: desktop-file-utils
BuildRequires: flex
BuildRequires: fontconfig-devel
BuildRequires: fontforge
BuildRequires: fontpackages-devel
BuildRequires: freeglut-devel
BuildRequires: freetype-devel
BuildRequires: gawk
BuildRequires: gcc
BuildRequires: gettext-devel
BuildRequires: giflib-devel
BuildRequires: gnupg2
BuildRequires: gnutls-devel
BuildRequires: gstreamer1-devel
BuildRequires: gstreamer1-plugins-base-devel
BuildRequires: icoutils
BuildRequires: ImageMagick-devel
BuildRequires: krb5-devel
BuildRequires: lcms2-devel
BuildRequires: libattr-devel
BuildRequires: libavcodec-free-devel
BuildRequires: libavformat-free-devel
BuildRequires: libavutil-free-devel
BuildRequires: libgphoto2-devel
BuildRequires: libieee1284-devel
BuildRequires: libnetapi-devel
BuildRequires: libpcap-devel
BuildRequires: librsvg2
BuildRequires: librsvg2-devel
BuildRequires: libstdc++-devel
BuildRequires: libudev-devel
BuildRequires: libusb1-devel
BuildRequires: libv4l-devel
BuildRequires: libX11-devel
BuildRequires: libXcomposite-devel
BuildRequires: libXcursor-devel
BuildRequires: libXext-devel
BuildRequires: libXi-devel
BuildRequires: libXinerama-devel
BuildRequires: libxkbcommon-devel
BuildRequires: libXmu-devel
BuildRequires: libXrandr-devel
BuildRequires: libXrender-devel
BuildRequires: libXxf86dga-devel
BuildRequires: libXxf86vm-devel
BuildRequires: lzma
BuildRequires: mesa-compat-libOSMesa-devel
BuildRequires: mesa-libGL-devel
BuildRequires: mesa-libGLU-devel
BuildRequires: mingw32-gcc
BuildRequires: mingw64-gcc
BuildRequires: ncurses-devel
BuildRequires: ocl-icd-devel
BuildRequires: opencl-headers
BuildRequires: pcsc-lite-devel
BuildRequires: pulseaudio-libs-devel
BuildRequires: samba-devel
BuildRequires: sane-backends-devel
BuildRequires: SDL2-devel
BuildRequires: unixODBC-devel
BuildRequires: unzip
BuildRequires: util-linux
BuildRequires: vulkan-devel
BuildRequires: xz
%if 0%{?fedora} < 40
%ifarch x86_64
%package -n %{wine}
%endif
%endif
Summary: WINE Is Not An Emulator - runs MS Windows programs
Group: Emulators
%ifarch x86_64
Conflicts: %{name}
%else
Conflicts: %{name}64
%endif
%if 0%{?fedora} < 40
Requires: %{name}-common = %{epoch}:%{version}-%{release}
%endif
Provides: %{lib_name} = %{epoch}:%{version}-%{release}
Provides: %{name}-bin = %{epoch}:%{version}-%{release}
Obsoletes: %{lib_name} <= %{epoch}:%{version}-%{release}
%ifarch %{ix86}
%package -n %{name}-common
Summary: WINE Is Not An Emulator - runs MS Windows programs (32-bit common files)
Group: Emulators
Requires: %{name}-bin = %{epoch}:%{version}-%{release}
%description -n %{name}-common
Wine is a program which allows running Microsoft Windows programs
(including DOS, Windows 3.x and Win32 executables) on Unix.
This package contains the files needed to support 32-bit Windows
programs, and is used by both %{name} and %{name}64.
%endif
%define dlopenreq() %(F=/usr/%{_lib}/lib%{1}.so;[ -e $F ] && (file $F|grep -q ASCII && grep -o 'lib[^ ]*' $F|sed -e "s/\$/%{mark64}/"||objdump -p $F | grep SONAME | awk '{ print $2 "%{mark64}" }') || echo "wine-missing-buildrequires-on-%{1}")
Requires: %dlopenreq asound
Requires: %dlopenreq attr
Requires: %dlopenreq cups
Requires: %dlopenreq dbus-1
Requires: %dlopenreq fontconfig
Requires: %dlopenreq freetype
Requires: %dlopenreq gnutls
Requires: %dlopenreq krb5
Requires: %dlopenreq ncurses
Requires: %dlopenreq odbc
Requires: %dlopenreq OSMesa
Requires: %dlopenreq sane
Requires: %dlopenreq SDL2
Requires: %dlopenreq v4l1
Requires: %dlopenreq vulkan
Requires: %dlopenreq Xcomposite
Requires: %dlopenreq Xcursor
Requires: %dlopenreq Xi
Requires: %dlopenreq Xinerama
Requires: %dlopenreq Xrandr
Requires: %dlopenreq Xrender
Requires: %dlopenreq Xxf86vm
Suggests: sane-frontends
Requires(post): desktop-file-utils
Requires(postun): desktop-file-utils
%define desc Wine is a program which allows running Microsoft Windows programs \
(including DOS, Windows 3.x and Win32 executables) on Unix. It \
consists of a program loader which loads and executes a Microsoft \
Windows binary, and a library (called Winelib) that implements Windows \
API calls using their Unix or X11 equivalents. The library may also \
be used for porting Win32 code into native Unix executables.
%description
%desc
%ifarch x86_64
%description -n %{wine}
%desc
%endif
%package -n %{wine}-devel
Summary: Static libraries and headers for %{name} (64-bit)
Group: Development/C
Requires: %{wine} = %{epoch}:%{version}-%{release}
%ifarch x86_64
Conflicts: %{name}-devel
%else
Conflicts: %{name}64-devel
%endif
Provides: %{lib_name_devel} = %{epoch}:%{version}-%{release}
Obsoletes: %{lib_name_devel} <= %{epoch}:%{version}-%{release}
%description -n %{wine}-devel
Wine is a program which allows running Microsoft Windows programs
(including DOS, Windows 3.x and Win32 executables) on Unix.
This package contains the libraries and header files needed to
develop programs which make use of Wine.
%package -n %compat_package
Summary: WINE Is Not An Emulator - runs MS Windows programs
Group: Emulators
Requires: %{wine} = %{epoch}:%{version}-%{release}
%if 0%{?fedora} < 40
Conflicts: wine wine64 wine-core wine-common wine-desktop wine-devel
%else
Conflicts: wine wine64 wine-core wine-common wine-desktop
%endif
%description -n %compat_package
Wine is a program which allows running Microsoft Windows programs
(including DOS, Windows 3.x and Win32 executables) on Unix.
This compatibility package allows to use %{wine} system-wide as
the default Wine version.
%prep
# Pull key from key server, if this fails import local copy and then refresh it to make sure it is up to date
gpg --keyserver hkp://keys.gnupg.net --recv-keys CEFAC8EAAF17519D || { gpg --with-fingerprint --import %{SOURCE99} && gpg --refresh-keys; }
gpg --update-trustdb
gpg --verify --with-fingerprint %{SOURCE1} %{SOURCE0}
%setup -n wine-%{version} -q -T -b0
%build
# MinGW GCC does not support these options
%define debug_package %{nil}
export LDFLAGS="$(echo "%{build_ldflags}" | sed -e 's/-Wl,-z,relro//' -e 's/-Wl,--build-id=sha1//' -e 's/-specs=\/usr\/lib\/rpm\/redhat\/redhat-package-notes//')"
%ifarch x86_64
export CFLAGS="$(echo "%{optflags}" | sed -e 's/-O2//' -e 's/-Wp,-D_FORTIFY_SOURCE=2//' -e 's/-fcf-protection//' -e 's/-fstack-protector-strong//' -e 's/-fstack-clash-protection//') -O2"
%else
export CFLAGS="$(echo "%{optflags}" | sed -e 's/-Wp,-D_FORTIFY_SOURCE=2//' -e 's/-fcf-protection//' -e 's/-fstack-protector-strong//' -e 's/-fstack-clash-protection//')"
%endif
%configure \
--with-gstreamer \
--disable-tests \
%if 0%{?fedora} >= 40
--enable-archs=i386,x86_64 \
%else
%ifarch x86_64
--enable-win64 \
%endif
%endif
--with-x
make -j4
%install
%makeinstall LDCONFIG=/bin/true
# Compat symlinks for bindir
mkdir -p "%{buildroot}/usr/bin"
for _file in $(ls "%{buildroot}/%{_bindir}"); do \
ln -s "%{_bindir}/$_file" "%{buildroot}/usr/bin/$_file"; \
done
%if 0%{?fedora} < 40
%ifarch x86_64
for _file in wine wine-preloader; do \
ln -s "%{_prefix}/bin/$_file" "%{buildroot}/usr/bin/$_file"; \
done
%endif
%endif
# Compat symlinks for desktop file
mkdir -p "%{buildroot}/usr/share/applications"
for _file in $(ls "%{buildroot}/%{_datadir}/applications"); do \
ln -s "%{_datadir}/applications/$_file" "%{buildroot}/usr/share/applications/$_file"; \
done
# Compat manpages
%if 0%{?fedora} || 0%{?scientificlinux} || 0%{?centos} >= 700 || 0%{?rhel} >= 700
for _dir in man1 de.UTF-8/man1 fr.UTF-8/man1 pl.UTF-8/man1; do \
if [ -d "%{buildroot}/%{_mandir}/$_dir" ]; then \
mkdir -p "$(dirname "%{buildroot}/usr/share/man/$_dir")"; \
cp -pr "%{buildroot}/%{_mandir}/$_dir" "%{buildroot}/usr/share/man/$_dir"; \
else \
mkdir -p "%{buildroot}/usr/share/man/$_dir"; \
fi; \
done
%else
for _dir in man1 de.UTF-8/man1 fr.UTF-8/man1 pl.UTF-8/man1; do \
mkdir -p "%{buildroot}/usr/share/man/$_dir"; \
done
%endif
%ifarch x86_64
install -p -m 0644 loader/wine.man "%{buildroot}/usr/share/man/man1/wine.1"
install -p -m 0644 loader/wine.de.UTF-8.man "%{buildroot}/usr/share/man/de.UTF-8/man1/wine.1"
install -p -m 0644 loader/wine.fr.UTF-8.man "%{buildroot}/usr/share/man/fr.UTF-8/man1/wine.1"
install -p -m 0644 loader/wine.pl.UTF-8.man "%{buildroot}/usr/share/man/pl.UTF-8/man1/wine.1"
%endif
%files -n %{wine}
%doc ANNOUNCE.md AUTHORS README.md
%license LICENSE
%if 0%{?fedora} < 40
%ifarch x86_64
%{_bindir}/wine64
%{_bindir}/wine64-preloader
%endif
%endif
%{_bindir}/function_grep.pl
%{_bindir}/msiexec
%{_bindir}/msidb
%{_bindir}/notepad
%{_bindir}/regedit
%{_bindir}/regsvr32
%{_bindir}/widl
%{_bindir}/wineboot
%{_bindir}/winebuild
%{_bindir}/winecfg
%{_bindir}/wineconsole*
%{_bindir}/winecpp
%{_bindir}/winedbg
%{_bindir}/winedump
%{_bindir}/winefile
%{_bindir}/wineg++
%{_bindir}/winegcc
%{_bindir}/winemaker
%{_bindir}/winemine
%{_bindir}/winepath
%{_bindir}/wineserver
%{_bindir}/wmc
%{_bindir}/wrc
%lang(de) %{_mandir}/de.UTF-8/man?/winemaker.?*
%lang(de) %{_mandir}/de.UTF-8/man?/wineserver.?*
%lang(fr) %{_mandir}/fr.UTF-8/man?/winemaker.?*
%lang(fr) %{_mandir}/fr.UTF-8/man?/wineserver.?*
%{_mandir}/man?/widl.1*
%{_mandir}/man?/winebuild.1*
%{_mandir}/man?/winecpp.1*
%{_mandir}/man?/winedbg.1*
%{_mandir}/man?/winedump.1*
%{_mandir}/man?/wineg++.1*
%{_mandir}/man?/winegcc.1*
%{_mandir}/man?/winemaker.1*
%{_mandir}/man?/wmc.1*
%{_mandir}/man?/wrc.1*
%{_mandir}/man?/msiexec.?*
%{_mandir}/man?/notepad.?*
%{_mandir}/man?/regedit.?*
%{_mandir}/man?/regsvr32.?*
%{_mandir}/man?/wineboot.?*
%{_mandir}/man?/winecfg.?*
%{_mandir}/man?/wineconsole.?*
%{_mandir}/man?/winefile.?*
%{_mandir}/man?/winemine.?*
%{_mandir}/man?/winepath.?*
%{_mandir}/man?/wineserver.?*
%dir %{_datadir}/wine
%{_datadir}/wine/wine.inf
%{_datadir}/wine/nls/*.nls
%{_datadir}/applications/*.desktop
%dir %{_datadir}/wine/fonts
%{_datadir}/wine/fonts/*
%if 0%{?fedora} < 40
%ifarch %{ix86}
%files -n %{name}-common
%{_bindir}/wine
%{_bindir}/wine-preloader
%{_mandir}/man?/wine.?*
%lang(de) %{_mandir}/de.UTF-8/man?/wine.?*
%lang(fr) %{_mandir}/fr.UTF-8/man?/wine.?*
%lang(pl) %{_mandir}/pl.UTF-8/man?/wine.?*
%endif
%else
%{_bindir}/wine
%{_bindir}/wine-preloader
%{_mandir}/man?/wine.?*
%lang(de) %{_mandir}/de.UTF-8/man?/wine.?*
%lang(fr) %{_mandir}/fr.UTF-8/man?/wine.?*
%lang(pl) %{_mandir}/pl.UTF-8/man?/wine.?*
%endif
%if 0%{?fedora} < 40
%ifarch %ix86 x86_64
%{_libdir}/wine/%{_arch}-unix/*.*
%{_libdir}/wine/%{_arch}-windows/*.*
%endif
%else
%{_libdir}/wine/%{_arch}-unix/*
%{_libdir}/wine/i386-windows/*.*
%{_libdir}/wine/x86_64-windows/*.*
%endif
%files -n %{wine}-devel
%{_includedir}/*
%files -n %compat_package
/usr/bin/*
/usr/share/applications/*.desktop
/usr/share/man/man?/*
%lang(de) /usr/share/man/de.UTF-8/man?/*
%lang(fr) /usr/share/man/fr.UTF-8/man?/*
%lang(pl) /usr/share/man/pl.UTF-8/man?/*
+52
View File
@@ -0,0 +1,52 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
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
=6vF7
-----END PGP PUBLIC KEY BLOCK-----
+11
View File
@@ -0,0 +1,11 @@
project pkg {
arches = ["x86_64", "aarch64", "i386"]
rpm {
spec = "wine-staging.spec"
extra_repos = ["https://repos.fyralabs.com/terrarawhide-mesa"]
}
labels {
mock = 1
subrepo = "extras"
}
}
+12
View File
@@ -0,0 +1,12 @@
let v = (gitlab_tag("gitlab.winehq.org", "231"));
v.crop(1);
rpm.version(v);
if rpm.changed () {
rpm.release();
// Only find versions ending in .x (point releases)
let matches = (find_all("[\\d.]+[.]x", get("https://dl.winehq.org/wine/source/")));
matches.dedup();
let s = sh(`echo ${matches} | sed 's/,//g' | sed 's/\[//g' | sed 's/\]//g' | sed 's/"//g' | tr ' ' '\n' | sort -nr | tr '\n' ' '`, #{"stdout": "piped"}).ctx.stdout;
s.truncate(4);
rpm.global("srcmajor", s);
}
+417
View File
@@ -0,0 +1,417 @@
# Terra WINE Staging branch
# Based on WineHQ's WINE builds with changes for our repos and update system
# Gonna be real man, WINE is a mess
%global _default_patch_fuzz 2
# This is unfortunate but a lot of Fedora's/SUSE's hardening flags break WINE
%define _lto_cflags %{nil}
%global flavor %nil
# I love MinGW
%global build_type_safety_c 0
%define compat_package terra-wine-staging
%define _prefix /usr/share/wine-staging
%undefine _hardened_build
%global srcmajor 10.x
Name: wine-staging
Version: 10.7
Release: 1
Epoch: 1
Summary: WINE Is Not An Emulator - runs MS Windows programs
License: LGPL-2.0-or-later
Group: Emulators
URL: https://www.winehq.org
%define lib_major 1
%define lib_name lib%{name}1
%define lib_name_devel lib%{name}-devel
%if 0%{?fedora} < 40
%ifarch x86_64
%define wine %{name}64
%define mark64 ()(64bit)
%else
%define wine %{name}
%define mark64 %{nil}
%endif
%endif
%if 0%{?fedora} >= 40
%define wine %{name}
%ifarch x86_64
%define mark64 ()(64bit)
%else
%define mark64 %{nil}
%endif
%endif
Source0: https://dl.winehq.org/wine/source/%{srcmajor}/wine-%{version}.tar.xz
Source1: https://dl.winehq.org/wine/source/%{srcmajor}/wine-%{version}.tar.xz.sign
# The official GitLab repo containing the patches does not appear to be downloadable so we have to download them from the mirror. What
Source100: https://github.com/wine-staging/wine-staging/archive/v%{version}.tar.gz#/wine-staging-%{version}.tar.xz
# Alexandres key
Source99: wine.keyring
BuildRequires: alsa-lib-devel
BuildRequires: audiofile-devel
BuildRequires: autoconf
BuildRequires: bison
BuildRequires: coreutils
BuildRequires: cups-devel
BuildRequires: dbus-devel
BuildRequires: desktop-file-utils
BuildRequires: flex
BuildRequires: fontconfig-devel
BuildRequires: fontforge
BuildRequires: fontpackages-devel
BuildRequires: freeglut-devel
BuildRequires: freetype-devel
BuildRequires: gawk
BuildRequires: gcc
BuildRequires: gettext-devel
BuildRequires: giflib-devel
BuildRequires: gnupg2
BuildRequires: gnutls-devel
BuildRequires: gstreamer1-devel
BuildRequires: gstreamer1-plugins-base-devel
BuildRequires: gtk3-devel
BuildRequires: icoutils
BuildRequires: ImageMagick-devel
BuildRequires: krb5-devel
BuildRequires: libattr-devel
BuildRequires: libavcodec-free-devel
BuildRequires: libavformat-free-devel
BuildRequires: libavutil-free-devel
BuildRequires: libgcrypt-devel
BuildRequires: libgphoto2-devel
BuildRequires: libieee1284-devel
BuildRequires: libnetapi-devel
BuildRequires: libpcap-devel
BuildRequires: librsvg2
BuildRequires: librsvg2-devel
BuildRequires: libstdc++-devel
BuildRequires: libudev-devel
BuildRequires: libusb1-devel
BuildRequires: libv4l-devel
BuildRequires: libva-devel
BuildRequires: libX11-devel
BuildRequires: libXcomposite-devel
BuildRequires: libXcursor-devel
BuildRequires: libXext-devel
BuildRequires: libXi-devel
BuildRequires: libXinerama-devel
BuildRequires: libxkbcommon-devel
BuildRequires: libXmu-devel
BuildRequires: libXrandr-devel
BuildRequires: libXrender-devel
BuildRequires: libXxf86dga-devel
BuildRequires: libXxf86vm-devel
BuildRequires: lzma
BuildRequires: mesa-compat-libOSMesa-devel
BuildRequires: mesa-libGL-devel
BuildRequires: mesa-libGLU-devel
BuildRequires: mingw32-gcc
BuildRequires: mingw64-gcc
BuildRequires: ncurses-devel
BuildRequires: ocl-icd-devel
BuildRequires: opencl-headers
BuildRequires: pcsc-lite-devel
BuildRequires: pulseaudio-libs-devel
BuildRequires: samba-devel
BuildRequires: sane-backends-devel
BuildRequires: SDL2-devel
BuildRequires: unixODBC-devel
BuildRequires: unzip
BuildRequires: util-linux
BuildRequires: vulkan-devel
BuildRequires: xz
%if 0%{?fedora} < 40
%ifarch x86_64
%package -n %{wine}
%endif
%endif
Summary: WINE Is Not An Emulator - runs MS Windows programs
Group: Emulators
%ifarch x86_64
Conflicts: %{name}
%else
Conflicts: %{name}64
%endif
%if 0%{?fedora} < 40
Requires: %{name}-common = %{epoch}:%{version}-%{release}
%endif
Provides: %{lib_name} = %{epoch}:%{version}-%{release}
Obsoletes: %{lib_name} <= %{epoch}:%{version}-%{release}
Provides: %{name}-bin = %{epoch}:%{version}-%{release}
%ifarch %{ix86}
%package -n %{name}-common
Summary: WINE Is Not An Emulator - runs MS Windows programs (32-bit common files)
Group: Emulators
Requires: %{name}-bin = %{epoch}:%{version}-%{release}
%description -n %{name}-common
Wine is a program which allows running Microsoft Windows programs
(including DOS, Windows 3.x and Win32 executables) on Unix.
This package contains the files needed to support 32-bit Windows
programs, and is used by both %{name} and %{name}64.
%endif
%define dlopenreq() %(F=/usr/%{_lib}/lib%{1}.so;[ -e $F ] && (file $F|grep -q ASCII && grep -o 'lib[^ ]*' $F|sed -e "s/\$/%{mark64}/"||objdump -p $F | grep SONAME | awk '{ print $2 "%{mark64}" }') || echo "wine-missing-buildrequires-on-%{1}")
Requires: %dlopenreq asound
Requires: %dlopenreq attr
Requires: %dlopenreq cups
Requires: %dlopenreq dbus-1
Requires: %dlopenreq fontconfig
Requires: %dlopenreq freetype
Requires: %dlopenreq gnutls
Requires: %dlopenreq krb5
Requires: %dlopenreq ncurses
Requires: %dlopenreq odbc
Requires: %dlopenreq OSMesa
Requires: %dlopenreq sane
Requires: %dlopenreq SDL2
Requires: %dlopenreq v4l1
Requires: %dlopenreq vulkan
Requires: %dlopenreq Xcomposite
Requires: %dlopenreq Xcursor
Requires: %dlopenreq Xi
Requires: %dlopenreq Xinerama
Requires: %dlopenreq Xrandr
Requires: %dlopenreq Xrender
Requires: %dlopenreq Xxf86vm
%if 0%{?fedora}
Suggests: sane-frontends
%endif
Requires(post): desktop-file-utils
Requires(postun): desktop-file-utils
%define desc Wine is a program which allows running Microsoft Windows programs \
(including DOS, Windows 3.x and Win32 executables) on Unix. It \
consists of a program loader which loads and executes a Microsoft \
Windows binary, and a library (called Winelib) that implements Windows \
API calls using their Unix or X11 equivalents. The library may also \
be used for porting Win32 code into native Unix executables.
%description
%desc
%ifarch x86_64
%description -n %{wine}
%desc
%endif
%package -n %{wine}-devel
Summary: Static libraries and headers for %{name} (64-bit)
Group: Development/C
Requires: %{wine} = %{epoch}:%{version}-%{release}
%ifarch x86_64
Conflicts: %{name}-devel
%else
Conflicts: %{name}64-devel
%endif
Provides: %{lib_name_devel} = %{epoch}:%{version}-%{release}
Obsoletes: %{lib_name_devel} <= %{epoch}:%{version}-%{release}
%description -n %{wine}-devel
Wine is a program which allows running Microsoft Windows programs
(including DOS, Windows 3.x and Win32 executables) on Unix.
This package contains the libraries and header files needed to
develop programs which make use of Wine.
%package -n %compat_package
Summary: WINE Is Not An Emulator - runs MS Windows programs
Group: Emulators
Requires: %{wine} = %{epoch}:%{version}-%{release}
Conflicts: wine wine64 wine-core wine-common wine-desktop wine-devel
%description -n %compat_package
Wine is a program which allows running Microsoft Windows programs
(including DOS, Windows 3.x and Win32 executables) on Unix.
This compatibility package allows to use %{wine} system-wide as
the default Wine version.
%prep
# Pull key from key server, if this fails import local copy and then refresh it to make sure it is up to date
gpg --keyserver hkp://keys.gnupg.net --recv-keys CEFAC8EAAF17519D || { gpg --with-fingerprint --import %{SOURCE99} && gpg --refresh-keys; }
gpg --update-trustdb
gpg --verify --with-fingerprint %{SOURCE1} %{SOURCE0}
%setup -n wine-%{version} -q -T -b0
# apply wine staging patch set on top of the wine release.
tar xf %{SOURCE100}
./wine-staging-%{version}/staging/patchinstall.py --all -W shell32-IconCache -W server-Stored_ACLs
%build
# MinGW GCC does not support these options
%define debug_package %{nil}
export LDFLAGS="$(echo "%{build_ldflags}" | sed -e 's/-Wl,-z,relro//' -e 's/-Wl,--build-id=sha1//' -e 's/-specs=\/usr\/lib\/rpm\/redhat\/redhat-package-notes//')"
%ifarch x86_64
export CFLAGS="$(echo "%{optflags}" | sed -e 's/-O2//' -e 's/-Wp,-D_FORTIFY_SOURCE=2//' -e 's/-fcf-protection//' -e 's/-fstack-protector-strong//' -e 's/-fstack-clash-protection//') -O2"
%else
export CFLAGS="$(echo "%{optflags}" | sed -e 's/-Wp,-D_FORTIFY_SOURCE=2//' -e 's/-fcf-protection//' -e 's/-fstack-protector-strong//' -e 's/-fstack-clash-protection//')"
%endif
autoreconf -i -f
%configure \
--with-gstreamer \
--disable-tests \
--with-xattr \
--enable-archs=i386,x86_64 \
--with-x
make -j4
%install
%makeinstall LDCONFIG=/bin/true
# Compat symlinks for bindir
mkdir -p "%{buildroot}/usr/bin"
for _file in $(ls "%{buildroot}%{_bindir}"); do \
ln -s "%{_bindir}/$_file" "%{buildroot}/usr/bin/$_file"; \
done
# Compat symlinks for desktop file
mkdir -p "%{buildroot}/usr/share/applications"
for _file in $(ls "%{buildroot}/%{_datadir}/applications"); do \
ln -s "%{_datadir}/applications/$_file" "%{buildroot}/usr/share/applications/$_file"; \
done
# Compat manpages
%if 0%{?fedora} || 0%{?scientificlinux} || 0%{?centos} >= 700 || 0%{?rhel} >= 700
for _dir in man1 de.UTF-8/man1 fr.UTF-8/man1 pl.UTF-8/man1; do \
if [ -d "%{buildroot}/%{_mandir}/$_dir" ]; then \
mkdir -p "$(dirname "%{buildroot}/usr/share/man/$_dir")"; \
cp -pr "%{buildroot}/%{_mandir}/$_dir" "%{buildroot}/usr/share/man/$_dir"; \
else \
mkdir -p "%{buildroot}/usr/share/man/$_dir"; \
fi; \
done
%else
for _dir in man1 de.UTF-8/man1 fr.UTF-8/man1 pl.UTF-8/man1; do \
mkdir -p "%{buildroot}/usr/share/man/$_dir"; \
done
%endif
%ifarch x86_64
#install -p -m 0644 loader/wine.man "%{buildroot}/usr/share/man/man1/wine.1"
#install -p -m 0644 loader/wine.de.UTF-8.man "%{buildroot}/usr/share/man/de.UTF-8/man1/wine.1"
#install -p -m 0644 loader/wine.fr.UTF-8.man "%{buildroot}/usr/share/man/fr.UTF-8/man1/wine.1"
#install -p -m 0644 loader/wine.pl.UTF-8.man "%{buildroot}/usr/share/man/pl.UTF-8/man1/wine.1"
%endif
%files -n %{wine}
%doc ANNOUNCE.md AUTHORS README.md
%license LICENSE
%if 0%{?fedora} < 40
%ifarch x86_64
%{_bindir}/wine64
%{_bindir}/wine64-preloader
%endif
%endif
%{_bindir}/function_grep.pl
%{_bindir}/msidb
%{_bindir}/msiexec
%{_bindir}/notepad
%{_bindir}/regedit
%{_bindir}/regsvr32
%{_bindir}/widl
%{_bindir}/wineboot
%{_bindir}/winebuild
%{_bindir}/winecfg
%{_bindir}/wineconsole*
%{_bindir}/winecpp
%{_bindir}/winedbg
%{_bindir}/winedump
%{_bindir}/winefile
%{_bindir}/wineg++
%{_bindir}/winegcc
%{_bindir}/winemaker
%{_bindir}/winemine
%{_bindir}/winepath
%{_bindir}/wineserver
%{_bindir}/wmc
%{_bindir}/wrc
%lang(de) %{_mandir}/de.UTF-8/man?/winemaker.?*
%lang(de) %{_mandir}/de.UTF-8/man?/wineserver.?*
%lang(fr) %{_mandir}/fr.UTF-8/man?/winemaker.?*
%lang(fr) %{_mandir}/fr.UTF-8/man?/wineserver.?*
%{_mandir}/man?/widl.1*
%{_mandir}/man?/winebuild.1*
%{_mandir}/man?/winecpp.1*
%{_mandir}/man?/winedbg.1*
%{_mandir}/man?/winedump.1*
%{_mandir}/man?/wineg++.1*
%{_mandir}/man?/winegcc.1*
%{_mandir}/man?/winemaker.1*
%{_mandir}/man?/wmc.1*
%{_mandir}/man?/wrc.1*
%{_mandir}/man?/msiexec.?*
%{_mandir}/man?/notepad.?*
%{_mandir}/man?/regedit.?*
%{_mandir}/man?/regsvr32.?*
%{_mandir}/man?/wineboot.?*
%{_mandir}/man?/winecfg.?*
%{_mandir}/man?/wineconsole.?*
%{_mandir}/man?/winefile.?*
%{_mandir}/man?/winemine.?*
%{_mandir}/man?/winepath.?*
%{_mandir}/man?/wineserver.?*
%dir %{_datadir}/wine
%{_datadir}/wine/wine.inf
%{_datadir}/wine/nls/*.nls
%{_datadir}/applications/*.desktop
%dir %{_datadir}/wine/fonts
%{_datadir}/wine/fonts/*
# %{_datadir}/wine/color/*
%if 0%{?fedora} < 40
%ifarch %{ix86}
%files -n %{name}-common
%{_bindir}/wine
%{_bindir}/wine-preloader
%{_mandir}/man?/wine.?*
%lang(de) %{_mandir}/de.UTF-8/man?/wine.?*
%lang(fr) %{_mandir}/fr.UTF-8/man?/wine.?*
%lang(pl) %{_mandir}/pl.UTF-8/man?/wine.?*
%endif
%else
%{_bindir}/wine
#%{_bindir}/wine-preloader
%{_mandir}/man?/wine.?*
%lang(de) %{_mandir}/de.UTF-8/man?/wine.?*
%lang(fr) %{_mandir}/fr.UTF-8/man?/wine.?*
%lang(pl) %{_mandir}/pl.UTF-8/man?/wine.?*
%endif
%if 0%{?fedora} < 40
%ifarch %ix86 x86_64
%{_libdir}/wine/%{_arch}-unix/*.*
%{_libdir}/wine/%{_arch}-windows/*.*
%endif
%else
%{_libdir}/wine/%{_arch}-unix/*
%{_libdir}/wine/i386-windows/*.*
%{_libdir}/wine/x86_64-windows/*.*
%endif
%files -n %{wine}-devel
%{_includedir}/*
%files -n %compat_package
/usr/bin/*
/usr/share/applications/*.desktop
/usr/share/man/man?/*
%lang(de) /usr/share/man/de.UTF-8/man?/*
%lang(fr) /usr/share/man/fr.UTF-8/man?/*
%lang(pl) /usr/share/man/pl.UTF-8/man?/*
+52
View File
@@ -0,0 +1,52 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
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
=6vF7
-----END PGP PUBLIC KEY BLOCK-----