3 %bcond_without alsa # don't build ALSA mm driver
4 %bcond_without capi # don't build CAPI 2.0 (ISDN) support
5 %bcond_without gstreamer # don't build GStreamer filters support
6 %bcond_without sane # don't build TWAIN DLL with scanning support (through SANE)
7 %bcond_with hal # HAL dynamic device support [deprecated]
8 %bcond_without ldap # don't build LDAP DLL
9 %bcond_without cups # without CUPS printing support in winspool,wineps DLLs
10 %bcond_without netapi # don't use the Samba NetAPI library
12 # NOTE: wine detects the following SONAMES for dlopen at build time:
13 # libGL (winex11.drv.so)
14 # libOSMesa (gdi32.dll.so)
15 # libX11 libXcomposite libXcursor libXext libXi libXinerama libXrandr libXrender libXxf86vm (winex11.drv.so)
16 # libcapi20 (capi2032.dll.so)
17 # libcups (winspool.drv.so)
18 # libdbus (mountmgr.sys.so)
19 # libfontconfig (gdi32.dll.so)
20 # libfreetype (gdi32.dll.so)
21 # libgnutls (secur32.dll.so)
22 # libhal (mountmgr.sys.so)
23 # libjpeg (gphoto2.ds.so windowscodecs.dll.so)
24 # libncurses (kernel32.dll.so)
25 # libodbc (odbc32.dll.so)
26 # libpng (windowscodecs.dll.so)
27 # libsane (sane.ds.so)
28 # libtiff (windowscodecs.dll.so)
29 # libv4l1 (qcap.dll.so)
30 # libxslt (msxml3.dll.so)
31 # thus requires rebuild after change of any of the above.
33 # library qualifier in rpm generated deps
34 %ifarch %{x8664} ia64 ppc64 s390x sparc64
35 %define libqual ()(64bit)
37 %define libqual %{nil}
40 %define gecko_ver 2.24
41 Summary: Program that lets you launch Win applications
42 Summary(es.UTF-8): Ejecuta programas Windows en Linux
43 Summary(pl.UTF-8): Program pozwalający uruchamiać aplikacje Windows
44 Summary(pt_BR.UTF-8): Executa programas Windows no Linux
52 Group: Applications/Emulators
53 Source0: http://downloads.sourceforge.net/wine/%{name}-%{version}.tar.bz2
54 # Source0-md5: 96b51a2f2ae727802d71095354e69fef
55 Source1: http://downloads.sourceforge.net/wine/%{name}_gecko-%{gecko_ver}-x86.msi
56 # Source1-md5: 766bb034172f7f0a97443951a02a0df8
57 Source2: http://downloads.sourceforge.net/wine/%{name}_gecko-%{gecko_ver}-x86_64.msi
58 # Source2-md5: 1912fd191872c72d5f562283e44e8ab4
59 Source3: %{name}-uninstaller.desktop
60 Patch0: %{name}-gphoto2_bool.patch
61 Patch1: %{name}-makedep.patch
62 Patch2: %{name}-ncurses.patch
63 Patch4: %{name}-disable-valgrind.patch
64 Patch5: %{name}-ca_certificates.patch
66 Patch7: %{name}-wine64_man.patch
67 URL: http://www.winehq.org/
68 BuildRequires: Mesa-libOSMesa-devel
69 BuildRequires: OpenAL-devel >= 1.1
70 BuildRequires: OpenCL-devel
71 BuildRequires: OpenGL-GLU-devel
72 BuildRequires: OpenGL-GLX-devel
73 BuildRequires: Mesa-libOSMesa-devel
74 BuildRequires: ParaView-devel
75 %{?with_alsa:BuildRequires: alsa-lib-devel}
76 %{?with_arts:BuildRequires: artsc-devel}
77 BuildRequires: autoconf >= 2.62
78 BuildRequires: automake
80 %{?with_capi:BuildRequires: capi4k-utils-devel}
81 BuildRequires: crossmingw64-gcc
82 %{?with_cups:BuildRequires: cups-devel}
83 BuildRequires: dbus-devel
84 BuildRequires: docbook-dtd31-sgml
85 BuildRequires: docbook-utils
86 BuildRequires: flex >= 2.5.33
87 BuildRequires: fontconfig-devel
88 BuildRequires: fontforge
89 BuildRequires: freetype-devel >= 2.0.5
90 # for findup used after make install
92 BuildRequires: ganv-devel
93 BuildRequires: gegl-devel
94 BuildRequires: gettext-devel
96 BuildRequires: gcc >= 6:4.4
98 BuildRequires: gettext-tools
99 BuildRequires: giflib-devel
100 BuildRequires: gnutls-devel
101 %{?with_gstreamer:BuildRequires: gstreamer0.10-devel >= 0.10}
102 %{?with_gstreamer:BuildRequires: gstreamer0.10-plugins-base-devel >= 0.10}
103 %{?with_hal:BuildRequires: hal-devel}
104 # for icotool used in build
105 BuildRequires: icoutils >= 0.29.0
106 BuildRequires: klibc-devel
107 BuildRequires: kudzu-devel
108 BuildRequires: lcms2-devel >= 2
109 BuildRequires: libgcj-devel
110 BuildRequires: libgphoto2-devel
111 BuildRequires: libgsm-devel
112 BuildRequires: libjpeg-devel
113 BuildRequires: libkqueue-devel
114 BuildRequires: libmpg123-devel >= 1.5.0
115 BuildRequires: libcap-devel
116 BuildRequires: libpcap-devel
117 BuildRequires: libpng-devel >= 1.5
118 BuildRequires: libtiff-devel
119 BuildRequires: libtool
120 BuildRequires: libv4l-devel
121 BuildRequires: libxml2-devel >= 2.0
122 BuildRequires: libxslt-devel
123 BuildRequires: lwp-devel
124 BuildRequires: ncurses-devel
125 # db2* failed previously - probably openjade or opensp bug
126 BuildRequires: openjade >= 1:1.3.3-0.pre1
127 %{?with_ldap:BuildRequires: openldap-devel}
128 BuildRequires: opensp >= 1:1.5.1
129 BuildRequires: pulseaudio-devel
130 BuildRequires: pkgconfig
131 BuildRequires: prelink
132 BuildRequires: samba-devel
133 %{?with_sane:BuildRequires: sane-backends-devel}
134 BuildRequires: unixODBC-devel >= 2.2.12-2
135 #BuildRequires: valgrind
136 BuildRequires: xorg-lib-libX11-devel
137 BuildRequires: xorg-lib-libXcomposite-devel
138 BuildRequires: xorg-lib-libXcursor-devel
139 BuildRequires: xorg-lib-libXext-devel
140 BuildRequires: xorg-lib-libXi-devel
141 BuildRequires: xorg-lib-libXinerama-devel
142 BuildRequires: xorg-lib-libXrandr-devel
143 BuildRequires: xorg-lib-libXrender-devel
144 BuildRequires: xorg-lib-libXxf86vm-devel
145 BuildRequires: zfs-devel
146 BuildRequires: zlib-devel
147 Requires: libfreetype.so.6%{libqual}
148 Requires: libpng16.so.16%{libqual}
149 Requires(post): /sbin/ldconfig
150 Suggests: binfmt-detector
151 Suggests: ca-certificates
153 Conflicts: ca-certificates < 20080809-4
154 # for printing needs lpr
155 Suggests: cups-clients
157 Suggests: xorg-app-xmessage
159 Suggests: samba-common >= 1:3.0.25
160 # link to wine/ntdll.dll.so, without any SONAME
161 Provides: libntdll.dll.so
162 Obsoletes: wine-doc-pdf
163 Obsoletes: wine-drv-arts
164 Obsoletes: wine-drv-jack
165 Obsoletes: wine-drv-nas
166 ExclusiveArch: %{ix86} %{x8664} arm
168 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
170 %define no_install_post_strip 1
172 %define _winedir %{_datadir}/%{name}
175 Wine is a program which allows running Microsoft Windows programs
176 (including DOS, Windows 3.x and Win32 executables) on Unix. It
177 consists of a program loader which loads and executes a Microsoft
178 Windows binary, and a library that implements Windows API calls using
179 their Unix or X11 equivalents. The library may also be used for
180 porting Win32 code into native Unix executables.
182 %description -l es.UTF-8
183 Ejecuta programas Windows en Linux.
185 %description -l pl.UTF-8
186 Wine jest programem dzięki któremu można uruchamiać programy napisane
187 dla Microsoft Windows pod systemami uniksowymi. Składa się on z
188 loadera, który pozwala wczytywać i uruchamiać programy w formacie
189 Microsoft Windows, oraz z biblioteki, która implementuje API Windows
190 przy użyciu odpowiedników uniksowych oraz z X11. Biblioteka może być
191 także wykorzystana do przenoszenia aplikacji Win32 do Uniksa.
193 %description -l pt_BR.UTF-8
194 O Wine é um programa que permite rodar programas MS-Windows no X11.
195 Ele consiste de um carregador de programa, que carrega e executa um
196 binário MS-Windows, e de uma biblioteca de emulação que traduz as
197 chamadas da API para as equivalentes Unix/X11.
200 Summary: Wine - header files
201 Summary(es.UTF-8): Biblioteca de desarrollo de wine
202 Summary(pl.UTF-8): Wine - pliki nagłowkowe
203 Summary(pt_BR.UTF-8): Biblioteca de desenvolvimento do wine
204 Group: Development/Libraries
205 Requires: %{name} = %{epoch}:%{version}-%{release}
210 %description devel -l es.UTF-8
211 Biblioteca de desarrollo de wine.
213 %description devel -l pl.UTF-8
214 Wine - pliki nagłówkowe.
216 %description devel -l pt_BR.UTF-8
217 Arquivos de inclusão e bibliotecas para desenvolver aplicações com o
221 Summary: Wine - programs
222 Summary(pl.UTF-8): Wine - programy
224 Requires: %{name} = %{epoch}:%{version}-%{release}
226 %description programs
229 %description programs -l pl.UTF-8
233 Summary: CAPI 2.0 (ISDN) implementation DLLs for Wine
234 Summary(pl.UTF-8): Biblioteki DLL z implementacją CAPI 2.0 (ISDN) dla Wine
235 Group: Applications/Emulators
236 Requires: %{name} = %{epoch}:%{version}-%{release}
238 %description dll-capi
239 CAPI 2.0 (ISDN) implementation DLLs for Wine.
241 %description dll-capi -l pl.UTF-8
242 Biblioteki DLL z implementacją CAPI 2.0 (ISDN) dla Wine.
245 Summary: Direct3D implementation DLLs for Wine
246 Summary(pl.UTF-8): Biblioteki DLL z implementacją Direct3D dla Wine
247 Group: Applications/Emulators
248 Requires: %{name} = %{epoch}:%{version}-%{release}
252 Direct3D implementation DLLs for Wine (through OpenGL).
254 %description dll-d3d -l pl.UTF-8
255 Biblioteki DLL z implementacją Direct3D dla Wine (poprzez OpenGL).
258 Summary: OpenGL implementation DLLs for Wine
259 Summary(pl.UTF-8): Biblioteki DLL z implementacją OpenGL dla Wine
260 Group: Applications/Emulators
261 Requires: %{name} = %{epoch}:%{version}-%{release}
265 OpenGL implementation DLLs for Wine.
267 %description dll-gl -l pl.UTF-8
268 Biblioteki DLL z implementacją OpenGL dla Wine.
271 Summary: TWAIN implementation DLL for Wine
272 Summary(pl.UTF-8): Biblioteka DLL z implementacją TWAIN dla Wine
273 Group: Applications/Emulators
274 Requires: %{name} = %{epoch}:%{version}-%{release}
276 %description dll-twain
277 TWAIN implementation DLL for Wine (through SANE).
279 %description dll-twain -l pl.UTF-8
280 Biblioteka DLL z implementacją TWAIN dla Wine (poprzez SANE).
283 Summary: Win32 LDAP API DLL for Wine
284 Summary(pl.UTF-8): Biblioteka DLL z implementacją API Win32 LDAP dla Wine
285 Group: Applications/Emulators
286 Requires: %{name} = %{epoch}:%{version}-%{release}
288 %description dll-ldap
289 Lightweight Directory Access Protocol Library for Wine.
291 %description dll-ldap -l pl.UTF-8
292 Biblioteka LDAP (Lightweight Directory Access Protocol) dla Wine.
295 Summary: ALSA driver for WINE mm.dll implementation
296 Summary(pl.UTF-8): Sterownik ALSA dla implementacji mm.dll w Wine
297 Group: Applications/Emulators
298 Requires: %{name} = %{epoch}:%{version}-%{release}
300 %description drv-alsa
301 ALSA driver for WINE mm.dll (multimedia system) implementation.
303 %description drv-alsa -l pl.UTF-8
304 Sterownik ALSA dla implementacji mm.dll (systemu multimediów) w Wine.
319 icotool -x --width=32 --height=32 --bit-depth=32 -o . dlls/user32/resources/oic_winlogo.ico
320 mv -f oic_winlogo_*.png %{name}.png
328 --with-alsa%{!?with_alsa:=no} \
329 --with-capi%{!?with_capi:=no} \
332 --with-cups%{!?with_cups:=no} \
341 %{__with_without gstreamer} \
342 %{__with_without hal} \
344 --with-ldap%{!?with_ldap:=no} \
346 --with%{!?with_netapi:out}-netapi \
356 --with%{!?with_sane:out}-sane \
377 rm -rf $RPM_BUILD_ROOT
378 install -d $RPM_BUILD_ROOT{%{_mandir}/man1,%{_aclocaldir}}
380 DESTDIR=$RPM_BUILD_ROOT
382 install -p tools/sfnt2fon/sfnt2fon $RPM_BUILD_ROOT%{_bindir}
383 cp -a aclocal.m4 $RPM_BUILD_ROOT%{_aclocaldir}/wine.m4
386 $RPM_BUILD_ROOT%{_winedir}/windows/{system,Desktop,Favorites,Fonts} \
387 "$RPM_BUILD_ROOT%{_winedir}/windows/Start Menu/Programs/Startup" \
388 $RPM_BUILD_ROOT%{_winedir}/windows/{SendTo,ShellNew,system32,NetHood} \
389 $RPM_BUILD_ROOT%{_winedir}/windows/{Profiles/Administrator,Recent} \
390 $RPM_BUILD_ROOT%{_winedir}/{"Program Files/Common Files","My Documents"}
392 touch $RPM_BUILD_ROOT%{_winedir}/{autoexec.bat,config.sys,windows/win.ini}
393 touch $RPM_BUILD_ROOT%{_winedir}/windows/system/{shell.dll,shell32.dll}
394 touch $RPM_BUILD_ROOT%{_winedir}/windows/system/{winsock.dll,wsock32.dll}
396 cat > $RPM_BUILD_ROOT%{_winedir}/windows/system.ini <<'EOF'
400 waveaudio=mciwave.drv
402 videodisc=mcipionr.drv
407 # /sbin/chstk -e $RPM_BUILD_ROOT%{_bindir}/wine
412 cd $RPM_BUILD_ROOT%{_libdir}/wine
415 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)
418 echo "%attr(755,root,root) %{_libdir}/wine/$f" >> $dir/files.so
423 programs="notepad regedit regsvr32 wineconsole winefile winemine winepath"
424 for p in $programs; do
425 echo "%attr(755,root,root) %{_bindir}/$p" >> files.programs
426 echo "%attr(755,root,root) %{_libdir}/wine/$p.exe.so" >> files.programs
427 echo "%{_mandir}/man1/$p.1*" >> files.programs
428 grep -v "$p\.exe\.so$" files.so > files.so.
429 mv -f files.so. files.so
432 for dir in $RPM_BUILD_ROOT%{_mandir}/*.UTF-8 ; do
433 mv "$dir" "${dir%.UTF-8}"
437 install loader/wine.man $RPM_BUILD_ROOT%{_mandir}/man1/wine64.1
438 for lang in de fr pl ; do
439 install -d $RPM_BUILD_ROOT%{_mandir}/${lang}/man1
440 install loader/wine.${lang}.UTF-8.man $RPM_BUILD_ROOT%{_mandir}/${lang}/man1/wine64.1
443 install loader/wine.man $RPM_BUILD_ROOT%{_mandir}/man1/wine.1
444 for lang in de fr pl ; do
445 install -d $RPM_BUILD_ROOT%{_mandir}/${lang}/man1
446 install loader/wine.${lang}.UTF-8.man $RPM_BUILD_ROOT%{_mandir}/${lang}/man1/wine.1
450 install -d $RPM_BUILD_ROOT%{_winedir}/gecko
452 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_winedir}/gecko
454 cp -p %{SOURCE2} $RPM_BUILD_ROOT%{_winedir}/gecko
457 install -d $RPM_BUILD_ROOT%{_pixmapsdir}
458 cp -p %{SOURCE3} $RPM_BUILD_ROOT%{_desktopdir}
459 cp -p %{name}.png $RPM_BUILD_ROOT%{_pixmapsdir}
462 rm -rf $RPM_BUILD_ROOT
466 %update_desktop_database
468 %postun -p /sbin/ldconfig
470 %triggerpostun -- wine < 1:0.9.12-1.9
471 rm -f /var/lock/subsys/wine
472 if [ -x /sbin/chkconfig ]; then
473 /sbin/chkconfig --del wine
477 %defattr(644,root,root,755)
478 %doc README AUTHORS ANNOUNCE
479 %lang(de) %doc documentation/README.de
480 %lang(es) %doc documentation/README.es
481 %lang(fr) %doc documentation/README.fr
482 %lang(hu) %doc documentation/README.hu
483 %lang(it) %doc documentation/README.it
484 %lang(ko) %doc documentation/README.ko
485 %lang(nb) %doc documentation/README.no
486 %lang(pt) %doc documentation/README.pt
487 %lang(pt_BR) %doc documentation/README.pt_br
488 %lang(ru) %doc documentation/README.ru
489 %lang(sv) %doc documentation/README.sv
490 %lang(tr) %doc documentation/README.tr
491 %attr(755,root,root) %{_bindir}/msiexec
493 %attr(755,root,root) %{_bindir}/wine
495 %attr(755,root,root) %{_bindir}/wine64
497 %attr(755,root,root) %{_bindir}/wineboot
498 %attr(755,root,root) %{_bindir}/winedbg
499 %attr(755,root,root) %{_bindir}/winecfg
501 %attr(755,root,root) %{_bindir}/wine-preloader
503 %attr(755,root,root) %{_bindir}/wine64-preloader
505 %attr(755,root,root) %{_bindir}/wineserver
506 %attr(755,root,root) %{_libdir}/*.so*
508 %dir %{_libdir}/wine/fakedlls
509 %{_libdir}/wine/fakedlls/*.acm
510 %{_libdir}/wine/fakedlls/*.cpl
511 %{_libdir}/wine/fakedlls/*.dll
513 %{_libdir}/wine/fakedlls/*.dll16
515 %{_libdir}/wine/fakedlls/*.drv
517 %{_libdir}/wine/fakedlls/*.drv16
519 %{_libdir}/wine/fakedlls/*.ds
520 %{_libdir}/wine/fakedlls/*.exe
522 %{_libdir}/wine/fakedlls/*.exe16
523 %{_libdir}/wine/fakedlls/*.mod16
525 %{_libdir}/wine/fakedlls/*.ocx
526 %{_libdir}/wine/fakedlls/*.sys
527 %{_libdir}/wine/fakedlls/*.tlb
529 %{_libdir}/wine/fakedlls/*.vxd
532 %{_mandir}/man1/wine.1*
533 %lang(de) %{_mandir}/de/man1/wine.1*
534 %lang(fr) %{_mandir}/fr/man1/wine.1*
535 %lang(pl) %{_mandir}/pl/man1/wine.1*
537 %{_mandir}/man1/wine64.1*
538 %lang(de) %{_mandir}/de/man1/wine64.1*
539 %lang(fr) %{_mandir}/fr/man1/wine64.1*
540 %lang(pl) %{_mandir}/pl/man1/wine64.1*
542 %{_mandir}/man1/msiexec.1*
543 %{_mandir}/man1/wineboot.1*
544 %{_mandir}/man1/winecfg.1*
545 %{_mandir}/man1/winedbg.1*
546 %{_mandir}/man1/wineserver.1*
547 %lang(de) %{_mandir}/de/man1/wineserver.1*
548 %lang(fr) %{_mandir}/fr/man1/wineserver.1*
550 %{_desktopdir}/wine.desktop
551 %{_desktopdir}/wine-uninstaller.desktop
552 %{_pixmapsdir}/%{name}.png
554 %files programs -f files.programs
555 %defattr(644,root,root,755)
558 %defattr(644,root,root,755)
559 %attr(755,root,root) %{_bindir}/sfnt2fon
560 %attr(755,root,root) %{_bindir}/function_grep.pl
561 %attr(755,root,root) %{_bindir}/widl
562 %attr(755,root,root) %{_bindir}/winebuild
563 %attr(755,root,root) %{_bindir}/winedump
564 %attr(755,root,root) %{_bindir}/wineg++
565 %attr(755,root,root) %{_bindir}/winegcc
566 %attr(755,root,root) %{_bindir}/winemaker
567 %attr(755,root,root) %{_bindir}/winecpp
568 %attr(755,root,root) %{_bindir}/wmc
569 %attr(755,root,root) %{_bindir}/wrc
570 %{_libdir}/wine/lib*.def
571 # no shared variants, so not separated
572 %{_libdir}/wine/lib*.def.a
573 %{_libdir}/wine/libadsiid.a
574 %{_libdir}/wine/libdx*.a
575 %{_libdir}/wine/libstrmbase.a
576 %{_libdir}/wine/libstrmiids.a
577 %{_libdir}/wine/libuuid.a
578 %{_libdir}/wine/libwinecrt0.a
580 %{_mandir}/man1/widl.1*
581 %{_mandir}/man1/winebuild.1*
582 %{_mandir}/man1/winecpp.1*
583 %{_mandir}/man1/winedump.1*
584 %{_mandir}/man1/winegcc.1*
585 %{_mandir}/man1/wineg++.1*
586 %{_mandir}/man1/winemaker.1*
587 %lang(de) %{_mandir}/de/man1/winemaker.1*
588 %lang(fr) %{_mandir}/fr/man1/winemaker.1*
589 %{_mandir}/man1/wmc.1*
590 %{_mandir}/man1/wrc.1*
594 %defattr(644,root,root,755)
595 %attr(755,root,root) %{_libdir}/wine/capi2032.dll.so
598 %defattr(644,root,root,755)
599 %attr(755,root,root) %{_libdir}/wine/d3d8.dll.so
600 %attr(755,root,root) %{_libdir}/wine/d3d9.dll.so
601 %attr(755,root,root) %{_libdir}/wine/wined3d.dll.so
604 %defattr(644,root,root,755)
605 %attr(755,root,root) %{_libdir}/wine/glu32.dll.so
606 %attr(755,root,root) %{_libdir}/wine/opengl32.dll.so
610 %defattr(644,root,root,755)
611 %attr(755,root,root) %{_libdir}/wine/sane.ds.so
612 %attr(755,root,root) %{_libdir}/wine/twain*.dll.so
617 %defattr(644,root,root,755)
618 %attr(755,root,root) %{_libdir}/wine/wldap*.dll.so
623 %defattr(644,root,root,755)
624 %attr(755,root,root) %{_libdir}/wine/winealsa.drv.so
627 # additional dependencies in *.so not separated (yet?) from main package
628 # ddraw.dll.so,winex11.drv.so depend on X11 libs
629 # ole2disp.dll16.so,oleaut32.dll.so,typelib.dll16.so depend on libX11