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
10 # NOTE: wine detects the following SONAMES for dlopen at build time:
11 # libcrypto,libssl (wininet.dll)
12 # libcups (winspool.dll.so,wineps.dll.so)
13 # libcurses/libncurses (wineconsole program)
14 # libfontconfig (gdi32.dll.so)
15 # libfreetype (wineps.dll.so,gdi32.dll.so)
16 # libGL (x11drv.dll.so,ddraw.dll.so)
17 # libjack (winejack.drv.so - explicit dependency in subpackage)
18 # libX11, libXext, libXi, libXrender (x11drv.dll.so)
19 # thus requires rebuild after change of any of the above.
25 Summary: Program that lets you launch Win applications
26 Summary(es): Ejecuta programas Windows en Linux
27 Summary(pl): Program pozwalaj±cy uruchamiaæ aplikacje Windows
28 Summary(pt_BR): Executa programas Windows no Linux
34 Group: Applications/Emulators
35 Source0: http://ibiblio.org/pub/linux/system/emulators/wine/%{name}-%{version}.tar.bz2
36 # Source0-md5: 7b5aca2682acc01cd94872072f7a7f1c
37 Patch0: %{name}-fontcache.patch
38 Patch1: %{name}-makedep.patch
39 Patch2: %{name}-alsa.patch
40 Patch3: %{name}-ncurses.patch
41 #PatchX: %{name}-dga.patch
42 URL: http://www.winehq.org/
43 BuildRequires: OpenGL-GLU-devel
44 %{?with_alsa:BuildRequires: alsa-lib-devel}
45 %{?with_arts:BuildRequires: artsc-devel}
46 BuildRequires: autoconf
47 BuildRequires: automake
49 # BuildRequires: chpax >= 0.20020901-2
50 %{?with_cups:BuildRequires: cups-devel}
51 BuildRequires: docbook-dtd31-sgml
52 BuildRequires: docbook-utils
54 BuildRequires: fontconfig-devel
55 BuildRequires: fontforge
56 BuildRequires: freetype-devel >= 2.0.5
57 BuildRequires: giflib-devel
58 %{?with_jack:BuildRequires: jack-audio-connection-kit-devel}
59 BuildRequires: libjpeg-devel
60 BuildRequires: libtool
61 %{?with_nas:BuildRequires: nas-devel}
62 BuildRequires: ncurses-devel
63 # db2* failed previously - probably openjade or opensp bug
64 BuildRequires: openjade >= 1:1.3.3-0.pre1
65 BuildRequires: opensp >= 1:1.5.1
66 BuildRequires: openssl-devel >= 0.9.7d
67 %{?with_sane:BuildRequires: sane-backends-devel}
68 BuildRequires: valgrind
69 BuildRequires: xorg-lib-libXi-devel
70 BuildRequires: xorg-lib-libXmu-devel
71 BuildRequires: xorg-lib-libXrender-devel
72 BuildRequires: xorg-lib-libXxf86dga-devel
73 BuildRequires: xorg-lib-libXxf86vm-devel
74 Requires: binfmt-detector
75 # link to wine/ntdll.dll.so, without any SONAME
76 Provides: libntdll.dll.so
77 ExclusiveArch: %{ix86}
78 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
80 %define _noautoreqdep libGL.so.1 libGLU.so.1
81 %define no_install_post_strip 1
83 %define _winedir %{_datadir}/%{name}
85 %define getsoname() %((objdump -p %{1} 2>/dev/null || echo SONAME ERROR) | awk '/SONAME/ { print $2; s=1 }; END { if(s==0) print "ERROR" }')
88 Wine is a program which allows running Microsoft Windows programs
89 (including DOS, Windows 3.x and Win32 executables) on Unix. It
90 consists of a program loader which loads and executes a Microsoft
91 Windows binary, and a library that implements Windows API calls using
92 their Unix or X11 equivalents. The library may also be used for
93 porting Win32 code into native Unix executables.
96 Ejecuta programas Windows en Linux.
99 Wine jest programem dziêki któremu mo¿na uruchamiaæ programy napisane
100 dla Microsoft Windows pod systemami uniksowymi. Sk³ada siê on z
101 loadera, który pozwala wczytywaæ i uruchamiaæ programy w formacie
102 Microsoft Windows, oraz z biblioteki, która implementuje API Windows
103 przy u¿yciu odpowiedników uniksowych oraz z X11. Biblioteka mo¿e byæ
104 tak¿e wykorzystana do przenoszenia aplikacji Win32 do Uniksa.
106 %description -l pt_BR
107 O Wine é um programa que permite rodar programas MS-Windows no X11.
108 Ele consiste de um carregador de programa, que carrega e executa um
109 binário MS-Windows, e de uma biblioteca de emulação que traduz as
110 chamadas da API para as equivalentes Unix/X11.
113 Summary: Wine - header files
114 Summary(es): Biblioteca de desarrollo de wine
115 Summary(pl): Wine - pliki nag³owkowe
116 Summary(pt_BR): Biblioteca de desenvolvimento do wine
117 Group: Development/Libraries
118 Requires: %{name} = %{epoch}:%{version}-%{release}
123 %description devel -l es
124 Biblioteca de desarrollo de wine.
126 %description devel -l pl
127 Wine - pliki nag³ówkowe.
129 %description devel -l pt_BR
130 Arquivos de inclusão e bibliotecas para desenvolver aplicações com o
134 Summary: Wine - programs
135 Summary(pl): Wine - programy
137 Requires: %{name} = %{epoch}:%{version}-%{release}
139 %description programs
142 %description programs -l pl
146 Summary: Direct3D implementation DLLs for Wine
147 Summary(pl): Biblioteki DLL z implementacj± Direct3D dla Wine
148 Group: Applications/Emulators
149 Requires: %{name} = %{epoch}:%{version}-%{release}
153 Direct3D implementation DLLs for Wine (through OpenGL).
155 %description dll-d3d -l pl
156 Biblioteki DLL z implementacj± Direct3D dla Wine (poprzez OpenGL).
159 Summary: OpenGL implementation DLLs for Wine
160 Summary(pl): Biblioteki DLL z implementacj± OpenGL dla Wine
161 Group: Applications/Emulators
162 Requires: %{name} = %{epoch}:%{version}-%{release}
166 OpenGL implementation DLLs for Wine.
168 %description dll-gl -l pl
169 Biblioteki DLL z implementacj± OpenGL dla Wine.
172 Summary: TWAIN implementation DLL for Wine
173 Summary(pl): Biblioteka DLL z implementacj± TWAIN dla Wine
174 Group: Applications/Emulators
175 Requires: %{name} = %{epoch}:%{version}-%{release}
177 %description dll-twain
178 TWAIN implementation DLL for Wine (through SANE).
180 %description dll-twain -l pl
181 Biblioteka DLL z implementacj± TWAIN dla Wine (poprzez SANE).
184 Summary: ALSA driver for WINE mm.dll implementation
185 Summary(pl): Sterownik ALSA dla implementacji mm.dll w Wine
186 Group: Applications/Emulators
187 Requires: %{name} = %{epoch}:%{version}-%{release}
189 %description drv-alsa
190 ALSA driver for WINE mm.dll (multimedia system) implementation.
192 %description drv-alsa -l pl
193 Sterownik ALSA dla implementacji mm.dll (systemu multimediów) w Wine.
196 Summary: aRts driver for WINE mm.dll implementation
197 Summary(pl): Sterownik aRts dla implementacji mm.dll w Wine
198 Group: Applications/Emulators
199 Requires: %{name} = %{epoch}:%{version}-%{release}
201 %description drv-arts
202 aRts driver for WINE mm.dll (multimedia system) implementation.
204 %description drv-arts -l pl
205 Sterownik aRts dla implementacji mm.dll (systemu multimediów) w Wine.
208 Summary: JACK driver for WINE mm.dll implementation
209 Summary(pl): Sterownik JACK-a dla implementacji mm.dll w Wine
210 Group: Applications/Emulators
211 Requires: %{name} = %{epoch}:%{version}-%{release}
212 Requires: jack-audio-connection-kit
213 # dlopened by SONAME detected at build time
214 %{?with_jack:Requires: %{getsoname /usr/%{_lib}/libjack.so}}
216 %description drv-jack
217 JACK driver for WINE mm.dll (multimedia system) implementation.
219 %description drv-jack -l pl
220 Sterownik JACK-a dla implementacji mm.dll (systemu multimediów) w
224 Summary: NAS driver for WINE mm.dll implementation
225 Summary(pl): Sterownik NAS dla implementacji mm.dll w Wine
226 Group: Applications/Emulators
227 Requires: %{name} = %{epoch}:%{version}-%{release}
230 NAS driver for WINE mm.dll (multimedia system) implementation.
232 %description drv-nas -l pl
233 Sterownik NAS dla implementacji mm.dll (systemu multimediów) w Wine.
242 # turn off compilation of some tools
243 sed -i -e "s|winetest \\\|\\\|;s|avitools||" programs/Makefile.in
244 #sed -i -e "s|avitools||" programs/Makefile.in
250 %{!?debug:--disable-debug} \
251 %{!?debug:--disable-trace} \
257 %{__make} -C programs
258 #%{__make} -C programs/regapi
261 rm -rf $RPM_BUILD_ROOT
262 install -d $RPM_BUILD_ROOT{%{_mandir}/man1,%{_aclocaldir}}
265 DESTDIR=$RPM_BUILD_ROOT
267 %{__make} -C programs install \
268 DESTDIR=$RPM_BUILD_ROOT
270 install tools/fnt2bdf $RPM_BUILD_ROOT%{_bindir}
272 install aclocal.m4 $RPM_BUILD_ROOT%{_aclocaldir}/wine.m4
273 #mv -f $RPM_BUILD_ROOT{/usr/X11R6/share/aclocal,%{_aclocaldir}}/wine.m4
276 $RPM_BUILD_ROOT%{_winedir}/windows/{system,Desktop,Favorites,Fonts} \
277 "$RPM_BUILD_ROOT%{_winedir}/windows/Start Menu/Programs/Startup" \
278 $RPM_BUILD_ROOT%{_winedir}/windows/{SendTo,ShellNew,system32,NetHood} \
279 $RPM_BUILD_ROOT%{_winedir}/windows/{Profiles/Administrator,Recent} \
280 $RPM_BUILD_ROOT%{_winedir}/{"Program Files/Common Files","My Documents"}
282 touch $RPM_BUILD_ROOT%{_winedir}/{autoexec.bat,config.sys,windows/win.ini}
283 touch $RPM_BUILD_ROOT%{_winedir}/windows/system/{shell.dll,shell32.dll}
284 touch $RPM_BUILD_ROOT%{_winedir}/windows/system/{winsock.dll,wsock32.dll}
286 cat >$RPM_BUILD_ROOT%{_winedir}/windows/system.ini <<EOF
290 waveaudio=mciwave.drv
292 videodisc=mcipionr.drv
297 %if %{?debug:0}%{!?debug:1}
298 echo "Strip executable binaries and shared object files."
299 filelist=`find $RPM_BUILD_ROOT -type f ! -regex ".*ld-[0-9.]*so.*"`
300 elfexelist=`echo $filelist | xargs -r file | \
301 awk '/ELF.*executable/ {print $1}' | cut -d: -f1`
302 elfsharedlist=`echo $filelist | xargs -r file | \
303 awk '/LF.*shared object/ {print $1}' | cut -d: -f1`; \
304 if [ -n "$elfexelist" ]; then \
305 strip -R .note -R .comment $elfexelist
307 if [ -n "$elfsharedlist" ]; then
308 strip --strip-unneeded -R .note -R .comment $elfsharedlist
312 # /sbin/chstk -e $RPM_BUILD_ROOT%{_bindir}/wine
314 programs="notepad progman regedit regsvr32 uninstaller wineconsole winefile winemine winepath winhelp"
317 rm -f files.so; touch files.so
318 rm -f files.programs; touch files.programs
319 cd $RPM_BUILD_ROOT%{_libdir}/wine
322 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|winearts.drv.so|winejack.drv.so|winenas.drv.so)
325 echo "%attr(755,root,root) %{_libdir}/wine/$f" >>$BZZZ/files.so
329 for p in $programs; do
330 echo "%attr(755,root,root) %{_bindir}/$p" >> files.programs
331 echo "%attr(755,root,root) %{_libdir}/wine/$p.exe.so" >> files.programs
332 grep -v "$p\.exe\.so$" files.so > files.so.
333 mv -f files.so. files.so
337 rm -rf $RPM_BUILD_ROOT
339 %post -p /sbin/ldconfig
340 %postun -p /sbin/ldconfig
342 %triggerpostun -- wine < 1:0.9.12-1.9
343 rm -f /var/lock/subsys/wine
344 if [ -x /sbin/chkconfig ]; then
345 /sbin/chkconfig --del wine
349 %defattr(644,root,root,755)
350 %doc README ChangeLog AUTHORS ANNOUNCE
351 %lang(de) %doc documentation/README.de
352 %lang(es) %doc documentation/README.es
353 %lang(fr) %doc documentation/README.fr
354 %lang(it) %doc documentation/README.it
355 %lang(ko) %doc documentation/README.ko
356 %lang(nb) %doc documentation/README.no
357 %lang(pt) %doc documentation/README.pt
358 %lang(pt_BR) %doc documentation/README.pt_br
359 %attr(755,root,root) %{_bindir}/msiexec
360 %attr(755,root,root) %{_bindir}/wine
361 %attr(755,root,root) %{_bindir}/wineboot
362 %attr(755,root,root) %{_bindir}/winebrowser
363 %attr(755,root,root) %{_bindir}/winecfg
364 %attr(755,root,root) %{_bindir}/winedbg
365 %attr(755,root,root) %{_bindir}/wine-kthread
366 %attr(755,root,root) %{_bindir}/winelauncher
367 %attr(755,root,root) %{_bindir}/wineprefixcreate
368 %attr(755,root,root) %{_bindir}/wine-preloader
369 %attr(755,root,root) %{_bindir}/wine-pthread
370 %attr(755,root,root) %{_bindir}/wineserver
371 %attr(755,root,root) %{_bindir}/wineshelllink
372 %attr(755,root,root) %{_libdir}/*.so*
374 %{_libdir}/wine/*.dll16
375 %{_libdir}/wine/*.drv16
376 %{_libdir}/wine/*.exe16
377 %{_mandir}/man1/wine.1*
378 %{_mandir}/man1/winedbg.1*
379 %{_mandir}/man1/wineprefixcreate.1*
380 %{_mandir}/man1/wineserver.1*
382 %{_desktopdir}/wine.desktop
384 %files programs -f files.programs
385 %defattr(644,root,root,755)
388 %defattr(644,root,root,755)
389 %attr(755,root,root) %{_bindir}/fnt2bdf
390 %attr(755,root,root) %{_bindir}/function_grep.pl
391 %attr(755,root,root) %{_bindir}/widl
392 %attr(755,root,root) %{_bindir}/winebuild
393 %attr(755,root,root) %{_bindir}/winedump
394 %attr(755,root,root) %{_bindir}/wineg++
395 %attr(755,root,root) %{_bindir}/winegcc
396 %attr(755,root,root) %{_bindir}/winemaker
397 #%attr(755,root,root) %{_bindir}/winewrap
398 %attr(755,root,root) %{_bindir}/wmc
399 %attr(755,root,root) %{_bindir}/wrc
400 %{_libdir}/wine/lib*.def
401 # no shared variants, so not separated
402 %{_libdir}/wine/lib*.def.a
403 %{_libdir}/wine/libdx*.a
404 %{_libdir}/wine/libstrmiids.a
405 %{_libdir}/wine/libuuid.a
406 %{_libdir}/wine/libwinecrt0.a
408 %{_mandir}/man1/widl.1*
409 %{_mandir}/man1/winedump.1*
410 %{_mandir}/man1/winegcc.1*
411 %{_mandir}/man1/winemaker.1*
412 %{_mandir}/man1/winebuild.1*
413 %{_mandir}/man1/wmc.1*
414 %{_mandir}/man1/wrc.1*
418 %defattr(644,root,root,755)
419 %attr(755,root,root) %{_libdir}/wine/d3d8.dll.so
420 %attr(755,root,root) %{_libdir}/wine/d3d9.dll.so
421 %attr(755,root,root) %{_libdir}/wine/d3dx8.dll.so
422 %attr(755,root,root) %{_libdir}/wine/wined3d.dll.so
425 %defattr(644,root,root,755)
426 %attr(755,root,root) %{_libdir}/wine/glu32.dll.so
427 %attr(755,root,root) %{_libdir}/wine/opengl32.dll.so
431 %defattr(644,root,root,755)
432 %attr(755,root,root) %{_libdir}/wine/sane.ds.so
433 %attr(755,root,root) %{_libdir}/wine/twain*.dll.so
438 %defattr(644,root,root,755)
439 %attr(755,root,root) %{_libdir}/wine/winealsa.drv.so
444 %defattr(644,root,root,755)
445 %attr(755,root,root) %{_libdir}/wine/winearts.drv.so
450 %defattr(644,root,root,755)
451 %attr(755,root,root) %{_libdir}/wine/winejack.drv.so
456 %defattr(644,root,root,755)
457 %attr(755,root,root) %{_libdir}/wine/winenas.drv.so
460 # additional dependencies in *.so not separated (yet?) from main package
461 # ddraw.dll.so,x11drv.dll.so depend on X11 libs
462 # ole2disp.dll.so,oleaut32.dll.so,typelib.dll.so depend on lib(un)gif,libjpeg,libX11
463 # ttydrv.dll.so depends on ncurses