#
+# todo:
+# libvkd3d https://wiki.winehq.org/Vkd3d
+#
# Conditional build:
%bcond_without alsa # don't build ALSA mm driver
-%bcond_without capi # don't build CAPI 2.0 (ISDN) support
+%bcond_with capi # don't build CAPI 2.0 (ISDN) support
%bcond_without gstreamer # don't build GStreamer filters support
%bcond_without sane # don't build TWAIN DLL with scanning support (through SANE)
-%bcond_with hal # HAL dynamic device support [deprecated]
%bcond_without ldap # don't build LDAP DLL
%bcond_without cups # without CUPS printing support in winspool,wineps DLLs
%bcond_without netapi # don't use the Samba NetAPI library
# libfontconfig (gdi32.dll.so)
# libfreetype (gdi32.dll.so)
# libgnutls (secur32.dll.so)
-# libhal (mountmgr.sys.so)
-# libjpeg (gphoto2.ds.so windowscodecs.dll.so)
# libncurses (kernel32.dll.so)
# libodbc (odbc32.dll.so)
-# libpng (windowscodecs.dll.so)
# libsane (sane.ds.so)
# libtiff (windowscodecs.dll.so)
-# libv4l1 (qcap.dll.so)
-# libxslt (msxml3.dll.so)
# thus requires rebuild after change of any of the above.
# library qualifier in rpm generated deps
%define libqual %{nil}
%endif
-%define gecko_ver 2.47
+%ifarch %{x8664}
+%define winelib x86_64
+%else
+%define winelib i386
+%endif
+
+%define gecko_ver 2.47.2
Summary: Program that lets you launch Win applications
Summary(es.UTF-8): Ejecuta programas Windows en Linux
Summary(pl.UTF-8): Program pozwalający uruchamiać aplikacje Windows
Summary(pt_BR.UTF-8): Executa programas Windows no Linux
Name: wine
-Version: 4.0.1
+Version: 7.6
Release: 1
Epoch: 1
License: LGPL
Group: Applications/Emulators
-Source0: https://dl.winehq.org/wine/source/4.0/%{name}-%{version}.tar.xz
-# Source0-md5: 966e7f9a3673194de79c3b3c25a9434b
-Source1: https://dl.winehq.org/wine/wine-gecko/%{gecko_ver}/%{name}_gecko-%{gecko_ver}-x86.msi
-# Source1-md5: 5ebc4ec71c92b3db3d84b334a1db385d
-Source2: https://dl.winehq.org/wine/wine-gecko/%{gecko_ver}/%{name}_gecko-%{gecko_ver}-x86_64.msi
-# Source2-md5: d93ac0d2e6aceafe9113a9918916df45
+Source0: https://dl.winehq.org/wine/source/7.x/%{name}-%{version}.tar.xz
+# Source0-md5: 2a15c22b7a7f56503291381a9f608ecb
+Source1: https://dl.winehq.org/wine/wine-gecko/%{gecko_ver}/%{name}-gecko-%{gecko_ver}-x86.msi
+# Source1-md5: e0a26e37397961b2c7f624575590ef66
+Source2: https://dl.winehq.org/wine/wine-gecko/%{gecko_ver}/%{name}-gecko-%{gecko_ver}-x86_64.msi
+# Source2-md5: ff7168b08fa901516fbaa8a66aa3cee6
Source3: %{name}-uninstaller.desktop
Patch0: %{name}-gphoto2_bool.patch
Patch1: %{name}-makedep.patch
BuildRequires: OpenAL-devel >= 1.1
BuildRequires: OpenCL-devel
BuildRequires: OpenGL-GLU-devel
+BuildRequires: SDL2-devel
%{?with_alsa:BuildRequires: alsa-lib-devel}
%{?with_arts:BuildRequires: artsc-devel}
BuildRequires: autoconf >= 2.62
BuildRequires: automake
BuildRequires: bison
+BuildRequires: clang
%{?with_capi:BuildRequires: capi4k-utils-devel}
%{?with_cups:BuildRequires: cups-devel}
BuildRequires: dbus-devel
BuildRequires: gnutls-devel
%{?with_gstreamer:BuildRequires: gstreamer-devel >= 1.0}
%{?with_gstreamer:BuildRequires: gstreamer-plugins-base-devel >= 1.0}
-%{?with_hal:BuildRequires: hal-devel}
# for icotool used in build
BuildRequires: icoutils >= 0.29.0
BuildRequires: lcms2-devel >= 2
BuildRequires: libcap-devel
+BuildRequires: libglvnd-libEGL-devel
BuildRequires: libgphoto2-devel
-BuildRequires: libgsm-devel
-BuildRequires: libjpeg-devel
-BuildRequires: libmpg123-devel >= 1.5.0
BuildRequires: libpcap-devel
-BuildRequires: libpng-devel >= 1.5
-BuildRequires: libtiff-devel
BuildRequires: libv4l-devel
-BuildRequires: libxml2-devel >= 2.0
-BuildRequires: libxslt-devel
-BuildRequires: ncurses-devel
+BuildRequires: lld
%{?with_ldap:BuildRequires: openldap-devel}
BuildRequires: pkgconfig
BuildRequires: pulseaudio-devel
BuildRequires: xorg-lib-libXrandr-devel
BuildRequires: xorg-lib-libXrender-devel
BuildRequires: xorg-lib-libXxf86vm-devel
-BuildRequires: zlib-devel
+BuildConflicts: crossmingw32-gcc
+BuildConflicts: crossmingw64-gcc
Requires: libfreetype.so.6%{libqual}
Requires: libpng16.so.16%{libqual}
Requires(post): /sbin/ldconfig
%prep
%setup -q
-%patch0 -p1
+#%patch0 -p1
%patch1 -p1
-%patch2 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1
%endif
--with-alsa%{!?with_alsa:=no} \
--with-capi%{!?with_capi:=no} \
- --with-cms \
--with-coreaudio \
--with-cups%{!?with_cups:=no} \
- --with-curses \
--with-dbus \
--with-fontconfig \
--with-freetype \
--with-gphoto \
- --with-glu \
--with-gnutls \
- --with-gsm \
%{__with_without gstreamer} \
- %{__with_without hal} \
- --with-jpeg \
--with-ldap%{!?with_ldap:=no} \
- --with-mpg123 \
--with%{!?with_netapi:out}-netapi \
--with-openal \
--with-opencl \
--with-opengl \
--with-osmesa \
--with-pcap \
- --with-png \
--with-pthread \
--with-pulse \
--with%{!?with_sane:out}-sane \
- --with-tiff \
- --with-v4l \
--with-xcomposite \
--with-xcursor \
--with-xinerama \
--with-xinput \
--with-xinput2 \
- --with-xml \
--with-xrandr \
--with-xrender \
--with-xshape \
--with-xshm \
- --with-xslt \
--with-xxf86vm \
- --with-x \
- --with-zlib
+ --with-x
+
%{__make} depend
%{__make}
dir=$(pwd)
> files.so
> files.programs
-cd $RPM_BUILD_ROOT%{_libdir}/wine
-for f in *.so; do
- case $f in
- capi2032.dll.so|d3d8.dll.so|d3d9.dll.so|d3dx8.dll.so|glu32.dll.so|opengl32.dll.so|sane.ds.so|twain.dll.so|twain_32.dll.so|winealsa.drv.so|wined3d.dll.so|wldap32.dll.so)
- ;;
- *)
- echo "%attr(755,root,root) %{_libdir}/wine/$f" >> $dir/files.so
- esac
-done
-cd -
programs="notepad regedit regsvr32 wineconsole winefile winemine winepath"
for p in $programs; do
echo "%attr(755,root,root) %{_bindir}/$p" >> files.programs
- echo "%attr(755,root,root) %{_libdir}/wine/$p.exe.so" >> files.programs
+ echo "%attr(755,root,root) %{_libdir}/wine/%{winelib}-windows/$p.exe" >> files.programs
echo "%{_mandir}/man1/$p.1*" >> files.programs
- grep -v "$p\.exe\.so$" files.so > files.so.
- mv -f files.so. files.so
+# grep -v "$p\.exe\.so$" files.so > files.so.
+# mv -f files.so. files.so
done
for dir in $RPM_BUILD_ROOT%{_mandir}/*.UTF-8 ; do
done
%ifarch %{x8664}
-install loader/wine.man $RPM_BUILD_ROOT%{_mandir}/man1/wine64.1
+cp -p loader/wine.man $RPM_BUILD_ROOT%{_mandir}/man1/wine64.1
for lang in de fr pl ; do
install -d $RPM_BUILD_ROOT%{_mandir}/${lang}/man1
-install loader/wine.${lang}.UTF-8.man $RPM_BUILD_ROOT%{_mandir}/${lang}/man1/wine64.1
+cp -p loader/wine.${lang}.UTF-8.man $RPM_BUILD_ROOT%{_mandir}/${lang}/man1/wine64.1
done
%else
-install loader/wine.man $RPM_BUILD_ROOT%{_mandir}/man1/wine.1
+cp -p loader/wine.man $RPM_BUILD_ROOT%{_mandir}/man1/wine.1
for lang in de fr pl ; do
install -d $RPM_BUILD_ROOT%{_mandir}/${lang}/man1
-install loader/wine.${lang}.UTF-8.man $RPM_BUILD_ROOT%{_mandir}/${lang}/man1/wine.1
+cp -p loader/wine.${lang}.UTF-8.man $RPM_BUILD_ROOT%{_mandir}/${lang}/man1/wine.1
done
%endif
/sbin/chkconfig --del wine
fi
-%files -f files.so
+%files
%defattr(644,root,root,755)
%doc README AUTHORS ANNOUNCE
%lang(de) %doc documentation/README.de
%lang(ru) %doc documentation/README.ru
%lang(sv) %doc documentation/README.sv
%lang(tr) %doc documentation/README.tr
+%attr(755,root,root) %{_bindir}/msidb
%attr(755,root,root) %{_bindir}/msiexec
%ifnarch %{x8664}
%attr(755,root,root) %{_bindir}/wine
%attr(755,root,root) %{_bindir}/wine64-preloader
%endif
%attr(755,root,root) %{_bindir}/wineserver
-%attr(755,root,root) %{_libdir}/*.so*
%dir %{_libdir}/wine
-%dir %{_libdir}/wine/fakedlls
-%{_libdir}/wine/fakedlls/*.acm
-%{_libdir}/wine/fakedlls/*.cpl
-%{_libdir}/wine/fakedlls/*.dll
+%dir %{_libdir}/wine/%{winelib}-unix
+%attr(755,root,root) %{_libdir}/wine/%{winelib}-unix/*.so*
+%dir %{_libdir}/wine/%{winelib}-windows
+%{_libdir}/wine/%{winelib}-windows/*.acm
+%{_libdir}/wine/%{winelib}-windows/*.ax
+%{_libdir}/wine/%{winelib}-windows/*.com
+%{_libdir}/wine/%{winelib}-windows/*.cpl
+%{_libdir}/wine/%{winelib}-windows/*.dll
%ifarch %{ix86}
-%{_libdir}/wine/fakedlls/*.dll16
+%{_libdir}/wine/%{winelib}-windows/*.dll16
%endif
-%{_libdir}/wine/fakedlls/*.drv
+%{_libdir}/wine/%{winelib}-windows/*.drv
%ifarch %{ix86}
-%{_libdir}/wine/fakedlls/*.drv16
+%{_libdir}/wine/%{winelib}-windows/*.drv16
%endif
-%{_libdir}/wine/fakedlls/*.ds
-%{_libdir}/wine/fakedlls/*.exe
+%{_libdir}/wine/%{winelib}-windows/*.ds
+%{_libdir}/wine/%{winelib}-windows/*.exe
%ifarch %{ix86}
-%{_libdir}/wine/fakedlls/*.exe16
-%{_libdir}/wine/fakedlls/*.mod16
+%{_libdir}/wine/%{winelib}-windows/*.exe16
+%{_libdir}/wine/%{winelib}-windows/*.mod16
%endif
-%{_libdir}/wine/fakedlls/*.ocx
-%{_libdir}/wine/fakedlls/*.sys
-%{_libdir}/wine/fakedlls/*.tlb
+%{_libdir}/wine/%{winelib}-windows/*.msstyles
+%{_libdir}/wine/%{winelib}-windows/*.ocx
+%{_libdir}/wine/%{winelib}-windows/*.sys
+%{_libdir}/wine/%{winelib}-windows/*.tlb
%ifarch %{ix86}
-%{_libdir}/wine/fakedlls/*.vxd
+%{_libdir}/wine/%{winelib}-windows/*.vxd
%endif
%ifnarch %{x8664}
%{_mandir}/man1/wine.1*
%endif
%{_mandir}/man1/msiexec.1*
%{_mandir}/man1/wineboot.1*
+
%{_mandir}/man1/winecfg.1*
%{_mandir}/man1/winedbg.1*
%{_mandir}/man1/wineserver.1*
%attr(755,root,root) %{_bindir}/winecpp
%attr(755,root,root) %{_bindir}/wmc
%attr(755,root,root) %{_bindir}/wrc
-%{_libdir}/wine/lib*.def
# no shared variants, so not separated
-%{_libdir}/wine/libadsiid.a
-%{_libdir}/wine/libdinput.a
-%{_libdir}/wine/libdinput8.a
-%{_libdir}/wine/libdmoguids.a
-%{_libdir}/wine/libdx*.a
-%{_libdir}/wine/libmfuuid.a
-%{_libdir}/wine/libstrmbase.a
-%{_libdir}/wine/libstrmiids.a
-%{_libdir}/wine/libuuid.a
-%{_libdir}/wine/libwinecrt0.a
-%{_libdir}/wine/libwmcodecdspuuid.a
+%{_libdir}/wine/%{winelib}-unix/lib*.a
+#%{_libdir}/wine/%{winelib}-windows/lib*.a
%{_includedir}/wine
%{_mandir}/man1/widl.1*
%{_mandir}/man1/winebuild.1*
%{_mandir}/man1/wrc.1*
%{_aclocaldir}/*.m4
+%if %{with capi}
%files dll-capi
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/wine/capi2032.dll.so
+%attr(755,root,root) %{_libdir}/wine/%{winelib}-windows/capi2032.dll
+%attr(755,root,root) %{_libdir}/wine/%{winelib}-unix/capi2032.so
+%endif
%files dll-d3d
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/wine/d3d8.dll.so
-%attr(755,root,root) %{_libdir}/wine/d3d9.dll.so
-%attr(755,root,root) %{_libdir}/wine/wined3d.dll.so
+%attr(755,root,root) %{_libdir}/wine/%{winelib}-windows/d3d8.dll
+%attr(755,root,root) %{_libdir}/wine/%{winelib}-windows/d3d8thk.dll
+%attr(755,root,root) %{_libdir}/wine/%{winelib}-windows/d3d9.dll
+%attr(755,root,root) %{_libdir}/wine/%{winelib}-windows/d3d10*.dll
+%attr(755,root,root) %{_libdir}/wine/%{winelib}-windows/d3d11.dll
+%attr(755,root,root) %{_libdir}/wine/%{winelib}-windows/wined3d.dll
+%attr(755,root,root) %{_libdir}/wine/%{winelib}-unix/wined3d.dll.so
%files dll-gl
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/wine/glu32.dll.so
-%attr(755,root,root) %{_libdir}/wine/opengl32.dll.so
+%attr(755,root,root) %{_libdir}/wine/%{winelib}-windows/glu32.dll
+%attr(755,root,root) %{_libdir}/wine/%{winelib}-windows/opengl32.dll
%if %{with sane}
%files dll-twain
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/wine/sane.ds.so
-%attr(755,root,root) %{_libdir}/wine/twain*.dll.so
+%attr(755,root,root) %{_libdir}/wine/%{winelib}-unix/sane.so
+%attr(755,root,root) %{_libdir}/wine/%{winelib}-windows/twain*.dll
+%ifarch %{ix86}
+%attr(755,root,root) %{_libdir}/wine/%{winelib}-windows/twain*.dll16
+%endif
%endif
%if %{with ldap}
%files dll-ldap
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/wine/wldap*.dll.so
+%attr(755,root,root) %{_libdir}/wine/%{winelib}-unix/wldap*.so
+%attr(755,root,root) %{_libdir}/wine/%{winelib}-windows/wldap*.dll
%endif
%if %{with alsa}
%files drv-alsa
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/wine/winealsa.drv.so
+%attr(755,root,root) %{_libdir}/wine/%{winelib}-unix/winealsa.drv.so
%endif
# additional dependencies in *.so not separated (yet?) from main package