3 %bcond_without alsa # don't build ALSA mm driver
4 %bcond_without arts # don't build aRts mm driver
5 %bcond_without jack # don't build JACK mm driver
6 %bcond_without nas # don't build NAS mm driver
7 %bcond_without sane # don't build TWAIN DLL with scanning support (through SANE)
8 %bcond_without cups # without CUPS printing support in winspool,wineps DLLs
9 %bcond_without html_docs # build html docs
10 %bcond_without pdf_docs # build pdf docs
13 # NOTE: wine detects the following SONAMES for dlopen at build time:
14 # libcrypto,libssl (wininet.dll)
15 # libcups (winspool.dll.so,wineps.dll.so)
16 # libcurses/libncurses (wineconsole program)
17 # libfontconfig (gdi32.dll.so)
18 # libfreetype (wineps.dll.so,gdi32.dll.so)
19 # libGL (x11drv.dll.so,ddraw.dll.so)
20 # libjack (winejack.drv.so - explicit dependency in subpackage)
21 # libX11, libXext, libXi, libXrender (x11drv.dll.so)
22 # thus requires rebuild after change of any of the above.
28 Summary: Program that lets you launch Win applications
29 Summary(es): Ejecuta programas Windows en Linux
30 Summary(pl): Program pozwalaj±cy uruchamiaæ aplikacje Windows
31 Summary(pt_BR): Executa programas Windows no Linux
36 Group: Applications/Emulators
37 #Source0: http://dl.sourceforge.net/%{name}/Wine-%{version}.tar.gz
38 Source0: ftp://ftp.ibiblio.org/pub/Linux/ALPHA/%{name}/development/Wine-%{version}.tar.gz
39 # Source0-md5: 17b7b504646498ca72aa7ba9f6462c23
42 Source3: %{name}.systemreg
43 Source4: %{name}.userreg
44 Patch0: %{name}-fontcache.patch
45 Patch1: %{name}-destdir.patch
46 Patch2: %{name}-ncurses.patch
47 Patch3: %{name}-makedep.patch
48 #Patch4: %{name}-dga.patch
49 URL: http://www.winehq.org/
51 BuildRequires: libSM-devel
52 BuildRequires: libXrandr-devel
53 BuildRequires: libXrender-devel
54 BuildRequires: libXt-devel
55 BuildRequires: libXv-devel
57 BuildRequires: XFree86-devel
59 BuildRequires: XFree86-OpenGL-devel-base
60 BuildRequires: XFree86-OpenGL-devel
61 %{?with_alsa:BuildRequires: alsa-lib-devel}
62 %{?with_arts:BuildRequires: artsc-devel}
63 BuildRequires: autoconf
64 BuildRequires: automake
66 # BuildRequires: chpax >= 0.20020901-2
67 %{?with_cups:BuildRequires: cups-devel}
68 BuildRequires: docbook-dtd31-sgml
69 BuildRequires: docbook-utils
71 BuildRequires: fontconfig-devel
72 BuildRequires: fontforge
73 BuildRequires: freetype-devel >= 2.0.5
74 %{?with_jack:BuildRequires: jack-audio-connection-kit-devel}
75 BuildRequires: libjpeg-devel
76 BuildRequires: libtool
77 BuildRequires: libungif-devel
78 %{?with_nas:BuildRequires: nas-devel}
79 BuildRequires: ncurses-devel
80 %if %{with html_docs} || %{with pdf_docs}
81 # db2* failed previously - probably openjade or opensp bug
82 BuildRequires: openjade >= 1:1.3.3-0.pre1
83 BuildRequires: opensp >= 1:1.5.1
85 BuildRequires: openssl-devel >= 0.9.7d
87 BuildRequires: tetex-latex-cyrillic
88 BuildRequires: tetex-metafont
89 BuildRequires: tetex-fonts-jknappen
90 BuildRequires: tetex-fonts-pazo
91 BuildRequires: tetex-fonts-stmaryrd
92 BuildRequires: tetex-fonts-type1-urw
94 %{?with_sane:BuildRequires: sane-backends-devel}
95 BuildRequires: xrender-devel
96 Requires(post): /sbin/ldconfig
97 Requires(post,preun): /sbin/chkconfig
98 # link to wine/ntdll.dll.so, without any SONAME
99 Provides: libntdll.dll.so
100 ExclusiveArch: %{ix86}
101 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
103 %define _noautoreqdep libGL.so.1 libGLU.so.1
104 %define no_install_post_strip 1
106 %define _winedir %{_datadir}/%{name}
108 %define getsoname() %((objdump -p %{1} 2>/dev/null || echo SONAME ERROR) | awk '/SONAME/ { print $2; s=1 }; END { if(s==0) print "ERROR" }')
111 Wine is a program which allows running Microsoft Windows programs
112 (including DOS, Windows 3.x and Win32 executables) on Unix. It
113 consists of a program loader which loads and executes a Microsoft
114 Windows binary, and a library that implements Windows API calls using
115 their Unix or X11 equivalents. The library may also be used for
116 porting Win32 code into native Unix executables.
119 Ejecuta programas Windows en Linux.
122 Wine jest programem dziêki któremu mo¿na uruchamiaæ programy napisane
123 dla Microsoft Windows pod systemami unixowymi. Sk³ada siê on z
124 loadera, który pozwala wczytywaæ i uruchamiaæ programy w formacie
125 Microsoft Windows, oraz z biblioteki, która implementuje API Windows
126 przy u¿yciu odpowiedników Unixowych oraz z X11. Biblioteka mo¿e byæ
127 tak¿e wykorzystana do przenoszenia aplikacji Win32 do Unixa.
129 %description -l pt_BR
130 O Wine é um programa que permite rodar programas MS-Windows no X11.
131 Ele consiste de um carregador de programa, que carrega e executa um
132 binário MS-Windows, e de uma biblioteca de emulação que traduz as
133 chamadas da API para as equivalentes Unix/X11.
136 Summary: Wine - header files
137 Summary(es): Biblioteca de desarrollo de wine
138 Summary(pl): Wine - pliki nag³owkowe
139 Summary(pt_BR): Biblioteca de desenvolvimento do wine
140 Group: Development/Libraries
141 Requires: %{name} = %{version}-%{release}
146 %description devel -l es
147 Biblioteca de desarrollo de wine.
149 %description devel -l pl
150 Wine - pliki nag³ówkowe.
152 %description devel -l pt_BR
153 Arquivos de inclusão e bibliotecas para desenvolver aplicações com o
157 Summary: Wine - programs
158 Summary(pl): Wine - programy
160 Requires: %{name} = %{version}-%{release}
162 %description programs
165 %description programs -l pl
169 Summary: Wine documentation in PDF
170 Summary(pl): Dokumentacja Wine w formacie PDF
174 Wine documentation in PDF format.
176 %description doc-pdf -l pl
177 Dokumentacja Wine w formacie PDF.
180 Summary: Direct3D implementation DLLs for Wine
181 Summary(pl): Biblioteki DLL z implementacj± Direct3D dla Wine
182 Group: Applications/Emulators
183 Requires: %{name} = %{version}-%{release}
187 Direct3D implementation DLLs for Wine (through OpenGL).
189 %description dll-d3d -l pl
190 Biblioteki DLL z implementacj± Direct3D dla Wine (poprzez OpenGL).
193 Summary: OpenGL implementation DLLs for Wine
194 Summary(pl): Biblioteki DLL z implementacj± OpenGL dla Wine
195 Group: Applications/Emulators
196 Requires: %{name} = %{version}-%{release}
200 OpenGL implementation DLLs for Wine.
202 %description dll-gl -l pl
203 Biblioteki DLL z implementacj± OpenGL dla Wine.
206 Summary: TWAIN implementation DLL for Wine
207 Summary(pl): Biblioteka DLL z implementacj± TWAIN dla Wine
208 Group: Applications/Emulators
209 Requires: %{name} = %{version}-%{release}
211 %description dll-twain
212 TWAIN implementation DLL for Wine (through SANE).
214 %description dll-twain -l pl
215 Biblioteka DLL z implementacj± TWAIN dla Wine (poprzez SANE).
218 Summary: ALSA driver for WINE mm.dll implementation
219 Summary(pl): Sterownik ALSA dla implementacji mm.dll w Wine
220 Group: Applications/Emulators
221 Requires: %{name} = %{version}-%{release}
223 %description drv-alsa
224 ALSA driver for WINE mm.dll (multimedia system) implementation.
226 %description drv-alsa -l pl
227 Sterownik ALSA dla implementacji mm.dll (systemu multimediów) w Wine.
230 Summary: aRts driver for WINE mm.dll implementation
231 Summary(pl): Sterownik aRts dla implementacji mm.dll w Wine
232 Group: Applications/Emulators
233 Requires: %{name} = %{version}-%{release}
235 %description drv-arts
236 aRts driver for WINE mm.dll (multimedia system) implementation.
238 %description drv-arts -l pl
239 Sterownik aRts dla implementacji mm.dll (systemu multimediów) w Wine.
242 Summary: JACK driver for WINE mm.dll implementation
243 Summary(pl): Sterownik JACK dla implementacji mm.dll w Wine
244 Group: Applications/Emulators
245 Requires: %{name} = %{version}-%{release}
246 Requires: jack-audio-connection-kit
247 # dlopened by SONAME detected at build time
248 %{?with_jack:Requires: %{getsoname /usr/%{_lib}/libjack.so}}
250 %description drv-jack
251 JACK driver for WINE mm.dll (multimedia system) implementation.
253 %description drv-jack -l pl
254 Sterownik JACK dla implementacji mm.dll (systemu multimediów) w Wine.
257 Summary: NAS driver for WINE mm.dll implementation
258 Summary(pl): Sterownik NAS dla implementacji mm.dll w Wine
259 Group: Applications/Emulators
260 Requires: %{name} = %{version}-%{release}
263 NAS driver for WINE mm.dll (multimedia system) implementation.
265 %description drv-nas -l pl
266 Sterownik NAS dla implementacji mm.dll (systemu multimediów) w Wine.
276 # turn off compilation of some tools
277 #sed -e "s|winetest \\\|\\\|;s|avitools||" programs/Makefile.in > .tmp
278 sed -e "s|avitools||" programs/Makefile.in > .tmp
279 mv -f .tmp programs/Makefile.in
284 %{!?debug:--disable-debug} \
285 %{!?debug:--disable-trace} \
291 %{__make} -C programs
292 #%{__make} -C programs/regapi
295 %if %{with html_docs}
296 db2html wine-user.sgml
297 db2html wine-devel.sgml
298 db2html wine-faq.sgml
299 db2html winelib-user.sgml
303 db2pdf wine-user.sgml
304 db2pdf wine-devel.sgml
306 db2pdf winelib-user.sgml
311 rm -rf $RPM_BUILD_ROOT
312 install -d $RPM_BUILD_ROOT{%{_mandir}/man1,%{_aclocaldir}}
315 DESTDIR=$RPM_BUILD_ROOT
317 %{__make} -C programs install \
318 DESTDIR=$RPM_BUILD_ROOT
320 install programs/winhelp/hlp2sgml $RPM_BUILD_ROOT%{_bindir}
321 install tools/fnt2bdf $RPM_BUILD_ROOT%{_bindir}
323 install aclocal.m4 $RPM_BUILD_ROOT%{_aclocaldir}/wine.m4
324 #mv -f $RPM_BUILD_ROOT{/usr/X11R6/share/aclocal,%{_aclocaldir}}/wine.m4
326 install -d $RPM_BUILD_ROOT%{_sysconfdir}/rc.d/init.d \
327 $RPM_BUILD_ROOT%{_winedir}/windows/{system,Desktop,Favorites,Fonts} \
328 "$RPM_BUILD_ROOT%{_winedir}/windows/Start Menu/Programs/Startup" \
329 $RPM_BUILD_ROOT%{_winedir}/windows/{SendTo,ShellNew,system32,NetHood} \
330 $RPM_BUILD_ROOT%{_winedir}/windows/{Profiles/Administrator,Recent} \
331 $RPM_BUILD_ROOT%{_winedir}/{"Program Files/Common Files","My Documents"}
333 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/wine
334 install %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}
335 install %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}
336 install %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}
338 touch $RPM_BUILD_ROOT%{_winedir}/{autoexec.bat,config.sys,windows/win.ini}
339 touch $RPM_BUILD_ROOT%{_winedir}/windows/system/{shell.dll,shell32.dll}
340 touch $RPM_BUILD_ROOT%{_winedir}/windows/system/{winsock.dll,wsock32.dll}
342 cat >$RPM_BUILD_ROOT%{_winedir}/windows/system.ini <<EOF
346 waveaudio=mciwave.drv
348 videodisc=mcipionr.drv
353 %if %{?debug:0}%{!?debug:1}
354 echo "Strip executable binaries and shared object files."
355 filelist=`find $RPM_BUILD_ROOT -type f ! -regex ".*ld-[0-9.]*so.*"`
356 elfexelist=`echo $filelist | xargs -r file | \
357 awk '/ELF.*executable/ {print $1}' | cut -d: -f1`
358 elfsharedlist=`echo $filelist | xargs -r file | \
359 awk '/LF.*shared object/ {print $1}' | cut -d: -f1`; \
360 if [ -n "$elfexelist" ]; then \
361 strip -R .note -R .comment $elfexelist
363 if [ -n "$elfsharedlist" ]; then
364 strip --strip-unneeded -R .note -R .comment $elfsharedlist
368 # /sbin/chstk -e $RPM_BUILD_ROOT%{_bindir}/wine
370 programs="notepad progman regedit regsvr32 uninstaller wineconsole winefile winemine winepath winhelp wcmd"
373 rm -f files.so; touch files.so
374 rm -f files.programs; touch files.programs
375 cd $RPM_BUILD_ROOT%{_libdir}/wine
378 d3d8.dll.so|d3d9.dll.so|d3dx8.dll.so|glu32.dll.so|opengl32.dll.so|twain_32.dll.so|winealsa.drv.so|winearts.drv.so|winejack.drv.so|winenas.drv.so)
381 echo "%attr(755,root,root) %{_libdir}/wine/$f" >>$BZZZ/files.so
385 for p in $programs; do
386 echo "%attr(755,root,root) %{_bindir}/$p" >> files.programs
387 echo "%attr(755,root,root) %{_libdir}/wine/$p.exe.so" >> files.programs
388 grep -v "$p\.exe\.so$" files.so > files.so.
389 mv -f files.so. files.so
393 rm -rf $RPM_BUILD_ROOT
397 /sbin/chkconfig --add wine
398 if [ ! -f /var/lock/subsys/wine ]; then
399 echo "Run \"/etc/rc.d/init.d/wine start\" to start wine service." >&2
403 if [ "$1" = "0" ]; then
404 if [ -f /var/lock/subsys/wine ]; then
405 /etc/rc.d/init.d/wine stop >&2
407 /sbin/chkconfig --del wine
410 %postun -p /sbin/ldconfig
413 %defattr(644,root,root,755)
414 %doc README DEVELOPERS-HINTS ChangeLog BUGS AUTHORS ANNOUNCE
415 %doc documentation/samples
416 %if %{with html_docs}
417 %doc documentation/wine-{faq,user}
419 %attr(755,root,root) %{_bindir}/wine
420 %attr(755,root,root) %{_bindir}/wineboot
421 %attr(755,root,root) %{_bindir}/winebrowser
422 %attr(755,root,root) %{_bindir}/winecfg
423 %attr(755,root,root) %{_bindir}/winedbg
424 %attr(755,root,root) %{_bindir}/wine-kthread
425 %attr(755,root,root) %{_bindir}/winelauncher
426 %attr(755,root,root) %{_bindir}/wineprefixcreate
427 %attr(755,root,root) %{_bindir}/wine-preloader
428 %attr(755,root,root) %{_bindir}/wine-pthread
429 %attr(755,root,root) %{_bindir}/wineserver
430 %attr(755,root,root) %{_bindir}/wineshelllink
431 %attr(755,root,root) %{_libdir}/*.so*
433 %{_mandir}/man1/wine.*
434 %{_mandir}/man1/winedbg.1*
435 %{_mandir}/man5/wine.conf.*
436 %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/wine.reg
437 %config(missingok,noreplace) %verify(not size mtime md5) %{_sysconfdir}/wine.systemreg
438 %config(missingok,noreplace) %verify(not size mtime md5) %{_sysconfdir}/wine.userreg
439 %attr(754,root,root) %{_sysconfdir}/rc.d/init.d/wine
441 %{_datadir}/fonts/wine
443 %files programs -f files.programs
444 %defattr(644,root,root,755)
447 %defattr(644,root,root,755)
448 %if %{with html_docs}
449 %doc documentation/{wine-devel,winelib-user}
451 %attr(755,root,root) %{_bindir}/fnt2bdf
452 %attr(755,root,root) %{_bindir}/function_grep.pl
453 %attr(755,root,root) %{_bindir}/hlp2sgml
454 %attr(755,root,root) %{_bindir}/widl
455 %attr(755,root,root) %{_bindir}/winebuild
456 %attr(755,root,root) %{_bindir}/winedump
457 %attr(755,root,root) %{_bindir}/wineg++
458 %attr(755,root,root) %{_bindir}/winegcc
459 %attr(755,root,root) %{_bindir}/winemaker
460 #%attr(755,root,root) %{_bindir}/winewrap
461 %attr(755,root,root) %{_bindir}/wmc
462 %attr(755,root,root) %{_bindir}/wrc
464 %{_mandir}/man1/widl.1*
465 %{_mandir}/man1/winedump.1*
466 %{_mandir}/man1/winemaker.1*
467 %{_mandir}/man1/winebuild.1*
468 %{_mandir}/man1/wmc.1*
469 %{_mandir}/man1/wrc.1*
474 %defattr(644,root,root,755)
475 %doc documentation/*.pdf
479 %defattr(644,root,root,755)
480 %attr(755,root,root) %{_libdir}/wine/d3d8.dll.so
481 %attr(755,root,root) %{_libdir}/wine/d3d9.dll.so
482 %attr(755,root,root) %{_libdir}/wine/d3dx8.dll.so
483 %attr(755,root,root) %{_libdir}/wine/wined3d.dll.so
486 %defattr(644,root,root,755)
487 %attr(755,root,root) %{_libdir}/wine/glu32.dll.so
488 %attr(755,root,root) %{_libdir}/wine/opengl32.dll.so
492 %defattr(644,root,root,755)
493 %attr(755,root,root) %{_libdir}/wine/twain_32.dll.so
498 %defattr(644,root,root,755)
499 %attr(755,root,root) %{_libdir}/wine/winealsa.drv.so
504 %defattr(644,root,root,755)
505 %attr(755,root,root) %{_libdir}/wine/winearts.drv.so
510 %defattr(644,root,root,755)
511 %attr(755,root,root) %{_libdir}/wine/winejack.drv.so
516 %defattr(644,root,root,755)
517 %attr(755,root,root) %{_libdir}/wine/winenas.drv.so
520 # additional dependencies in *.so not separated (yet?) from main package
521 # ddraw.dll.so,x11drv.dll.so depend on X11 libs
522 # ole2disp.dll.so,oleaut32.dll.so,typelib.dll.so depend on lib(un)gif,libjpeg,libX11
523 # ttydrv.dll.so depends on ncurses