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: 4f6270a0828e0f8e524cf360b7fd58ee
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" }')
87 %undefine debuginfocflags
90 Wine is a program which allows running Microsoft Windows programs
91 (including DOS, Windows 3.x and Win32 executables) on Unix. It
92 consists of a program loader which loads and executes a Microsoft
93 Windows binary, and a library that implements Windows API calls using
94 their Unix or X11 equivalents. The library may also be used for
95 porting Win32 code into native Unix executables.
98 Ejecuta programas Windows en Linux.
101 Wine jest programem dziêki któremu mo¿na uruchamiaæ programy napisane
102 dla Microsoft Windows pod systemami uniksowymi. Sk³ada siê on z
103 loadera, który pozwala wczytywaæ i uruchamiaæ programy w formacie
104 Microsoft Windows, oraz z biblioteki, która implementuje API Windows
105 przy u¿yciu odpowiedników uniksowych oraz z X11. Biblioteka mo¿e byæ
106 tak¿e wykorzystana do przenoszenia aplikacji Win32 do Uniksa.
108 %description -l pt_BR
109 O Wine é um programa que permite rodar programas MS-Windows no X11.
110 Ele consiste de um carregador de programa, que carrega e executa um
111 binário MS-Windows, e de uma biblioteca de emulação que traduz as
112 chamadas da API para as equivalentes Unix/X11.
115 Summary: Wine - header files
116 Summary(es): Biblioteca de desarrollo de wine
117 Summary(pl): Wine - pliki nag³owkowe
118 Summary(pt_BR): Biblioteca de desenvolvimento do wine
119 Group: Development/Libraries
120 Requires: %{name} = %{epoch}:%{version}-%{release}
125 %description devel -l es
126 Biblioteca de desarrollo de wine.
128 %description devel -l pl
129 Wine - pliki nag³ówkowe.
131 %description devel -l pt_BR
132 Arquivos de inclusão e bibliotecas para desenvolver aplicações com o
136 Summary: Wine - programs
137 Summary(pl): Wine - programy
139 Requires: %{name} = %{epoch}:%{version}-%{release}
141 %description programs
144 %description programs -l pl
148 Summary: Direct3D implementation DLLs for Wine
149 Summary(pl): Biblioteki DLL z implementacj± Direct3D dla Wine
150 Group: Applications/Emulators
151 Requires: %{name} = %{epoch}:%{version}-%{release}
155 Direct3D implementation DLLs for Wine (through OpenGL).
157 %description dll-d3d -l pl
158 Biblioteki DLL z implementacj± Direct3D dla Wine (poprzez OpenGL).
161 Summary: OpenGL implementation DLLs for Wine
162 Summary(pl): Biblioteki DLL z implementacj± OpenGL dla Wine
163 Group: Applications/Emulators
164 Requires: %{name} = %{epoch}:%{version}-%{release}
168 OpenGL implementation DLLs for Wine.
170 %description dll-gl -l pl
171 Biblioteki DLL z implementacj± OpenGL dla Wine.
174 Summary: TWAIN implementation DLL for Wine
175 Summary(pl): Biblioteka DLL z implementacj± TWAIN dla Wine
176 Group: Applications/Emulators
177 Requires: %{name} = %{epoch}:%{version}-%{release}
179 %description dll-twain
180 TWAIN implementation DLL for Wine (through SANE).
182 %description dll-twain -l pl
183 Biblioteka DLL z implementacj± TWAIN dla Wine (poprzez SANE).
186 Summary: ALSA driver for WINE mm.dll implementation
187 Summary(pl): Sterownik ALSA dla implementacji mm.dll w Wine
188 Group: Applications/Emulators
189 Requires: %{name} = %{epoch}:%{version}-%{release}
191 %description drv-alsa
192 ALSA driver for WINE mm.dll (multimedia system) implementation.
194 %description drv-alsa -l pl
195 Sterownik ALSA dla implementacji mm.dll (systemu multimediów) w Wine.
198 Summary: aRts driver for WINE mm.dll implementation
199 Summary(pl): Sterownik aRts dla implementacji mm.dll w Wine
200 Group: Applications/Emulators
201 Requires: %{name} = %{epoch}:%{version}-%{release}
203 %description drv-arts
204 aRts driver for WINE mm.dll (multimedia system) implementation.
206 %description drv-arts -l pl
207 Sterownik aRts dla implementacji mm.dll (systemu multimediów) w Wine.
210 Summary: JACK driver for WINE mm.dll implementation
211 Summary(pl): Sterownik JACK-a dla implementacji mm.dll w Wine
212 Group: Applications/Emulators
213 Requires: %{name} = %{epoch}:%{version}-%{release}
214 Requires: jack-audio-connection-kit
215 # dlopened by SONAME detected at build time
216 %{?with_jack:Requires: %{getsoname /usr/%{_lib}/libjack.so}}
218 %description drv-jack
219 JACK driver for WINE mm.dll (multimedia system) implementation.
221 %description drv-jack -l pl
222 Sterownik JACK-a dla implementacji mm.dll (systemu multimediów) w
226 Summary: NAS driver for WINE mm.dll implementation
227 Summary(pl): Sterownik NAS dla implementacji mm.dll w Wine
228 Group: Applications/Emulators
229 Requires: %{name} = %{epoch}:%{version}-%{release}
232 NAS driver for WINE mm.dll (multimedia system) implementation.
234 %description drv-nas -l pl
235 Sterownik NAS dla implementacji mm.dll (systemu multimediów) w Wine.
244 # turn off compilation of some tools
245 sed -i -e "s|winetest \\\|\\\|;s|avitools||" programs/Makefile.in
246 #sed -i -e "s|avitools||" programs/Makefile.in
252 %{!?debug:--disable-debug} \
253 %{!?debug:--disable-trace} \
259 %{__make} -C programs
260 #%{__make} -C programs/regapi
263 rm -rf $RPM_BUILD_ROOT
264 install -d $RPM_BUILD_ROOT{%{_mandir}/man1,%{_aclocaldir}}
267 DESTDIR=$RPM_BUILD_ROOT
269 %{__make} -C programs install \
270 DESTDIR=$RPM_BUILD_ROOT
272 install tools/fnt2bdf $RPM_BUILD_ROOT%{_bindir}
274 install aclocal.m4 $RPM_BUILD_ROOT%{_aclocaldir}/wine.m4
275 #mv -f $RPM_BUILD_ROOT{/usr/X11R6/share/aclocal,%{_aclocaldir}}/wine.m4
278 $RPM_BUILD_ROOT%{_winedir}/windows/{system,Desktop,Favorites,Fonts} \
279 "$RPM_BUILD_ROOT%{_winedir}/windows/Start Menu/Programs/Startup" \
280 $RPM_BUILD_ROOT%{_winedir}/windows/{SendTo,ShellNew,system32,NetHood} \
281 $RPM_BUILD_ROOT%{_winedir}/windows/{Profiles/Administrator,Recent} \
282 $RPM_BUILD_ROOT%{_winedir}/{"Program Files/Common Files","My Documents"}
284 touch $RPM_BUILD_ROOT%{_winedir}/{autoexec.bat,config.sys,windows/win.ini}
285 touch $RPM_BUILD_ROOT%{_winedir}/windows/system/{shell.dll,shell32.dll}
286 touch $RPM_BUILD_ROOT%{_winedir}/windows/system/{winsock.dll,wsock32.dll}
288 cat >$RPM_BUILD_ROOT%{_winedir}/windows/system.ini <<EOF
292 waveaudio=mciwave.drv
294 videodisc=mcipionr.drv
299 %if %{?debug:0}%{!?debug:1}
300 echo "Strip executable binaries and shared object files."
301 filelist=`find $RPM_BUILD_ROOT -type f ! -regex ".*ld-[0-9.]*so.*"`
302 elfexelist=`echo $filelist | xargs -r file | \
303 awk '/ELF.*executable/ {print $1}' | cut -d: -f1`
304 elfsharedlist=`echo $filelist | xargs -r file | \
305 awk '/LF.*shared object/ {print $1}' | cut -d: -f1`; \
306 if [ -n "$elfexelist" ]; then \
307 strip -R .note -R .comment $elfexelist
309 if [ -n "$elfsharedlist" ]; then
310 strip --strip-unneeded -R .note -R .comment $elfsharedlist
314 # /sbin/chstk -e $RPM_BUILD_ROOT%{_bindir}/wine
316 programs="notepad progman regedit regsvr32 uninstaller wineconsole winefile winemine winepath winhelp"
319 rm -f files.so; touch files.so
320 rm -f files.programs; touch files.programs
321 cd $RPM_BUILD_ROOT%{_libdir}/wine
324 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)
327 echo "%attr(755,root,root) %{_libdir}/wine/$f" >>$BZZZ/files.so
331 for p in $programs; do
332 echo "%attr(755,root,root) %{_bindir}/$p" >> files.programs
333 echo "%attr(755,root,root) %{_libdir}/wine/$p.exe.so" >> files.programs
334 grep -v "$p\.exe\.so$" files.so > files.so.
335 mv -f files.so. files.so
339 rm -rf $RPM_BUILD_ROOT
341 %post -p /sbin/ldconfig
342 %postun -p /sbin/ldconfig
344 %triggerpostun -- wine < 1:0.9.12-1.9
345 rm -f /var/lock/subsys/wine
346 if [ -x /sbin/chkconfig ]; then
347 /sbin/chkconfig --del wine
351 %defattr(644,root,root,755)
352 %doc README ChangeLog AUTHORS ANNOUNCE
353 %lang(de) %doc documentation/README.de
354 %lang(es) %doc documentation/README.es
355 %lang(fr) %doc documentation/README.fr
356 %lang(it) %doc documentation/README.it
357 %lang(ko) %doc documentation/README.ko
358 %lang(nb) %doc documentation/README.no
359 %lang(pt) %doc documentation/README.pt
360 %lang(pt_BR) %doc documentation/README.pt_br
361 %attr(755,root,root) %{_bindir}/msiexec
362 %attr(755,root,root) %{_bindir}/wine
363 %attr(755,root,root) %{_bindir}/wineboot
364 %attr(755,root,root) %{_bindir}/winebrowser
365 %attr(755,root,root) %{_bindir}/winecfg
366 %attr(755,root,root) %{_bindir}/winedbg
367 %attr(755,root,root) %{_bindir}/wine-kthread
368 %attr(755,root,root) %{_bindir}/winelauncher
369 %attr(755,root,root) %{_bindir}/wineprefixcreate
370 %attr(755,root,root) %{_bindir}/wine-preloader
371 %attr(755,root,root) %{_bindir}/wine-pthread
372 %attr(755,root,root) %{_bindir}/wineserver
373 %attr(755,root,root) %{_bindir}/wineshelllink
374 %attr(755,root,root) %{_libdir}/*.so*
376 %{_libdir}/wine/*.dll16
377 %{_libdir}/wine/*.drv16
378 %{_libdir}/wine/*.exe16
379 %{_mandir}/man1/wine.1*
380 %{_mandir}/man1/winedbg.1*
381 %{_mandir}/man1/wineprefixcreate.1*
382 %{_mandir}/man1/wineserver.1*
384 %{_desktopdir}/wine.desktop
386 %files programs -f files.programs
387 %defattr(644,root,root,755)
390 %defattr(644,root,root,755)
391 %attr(755,root,root) %{_bindir}/fnt2bdf
392 %attr(755,root,root) %{_bindir}/function_grep.pl
393 %attr(755,root,root) %{_bindir}/widl
394 %attr(755,root,root) %{_bindir}/winebuild
395 %attr(755,root,root) %{_bindir}/winedump
396 %attr(755,root,root) %{_bindir}/wineg++
397 %attr(755,root,root) %{_bindir}/winegcc
398 %attr(755,root,root) %{_bindir}/winemaker
399 #%attr(755,root,root) %{_bindir}/winewrap
400 %attr(755,root,root) %{_bindir}/wmc
401 %attr(755,root,root) %{_bindir}/wrc
402 %{_libdir}/wine/lib*.def
403 # no shared variants, so not separated
404 %{_libdir}/wine/lib*.def.a
405 %{_libdir}/wine/libdx*.a
406 %{_libdir}/wine/libstrmiids.a
407 %{_libdir}/wine/libuuid.a
408 %{_libdir}/wine/libwinecrt0.a
410 %{_mandir}/man1/widl.1*
411 %{_mandir}/man1/winedump.1*
412 %{_mandir}/man1/winegcc.1*
413 %{_mandir}/man1/winemaker.1*
414 %{_mandir}/man1/winebuild.1*
415 %{_mandir}/man1/wmc.1*
416 %{_mandir}/man1/wrc.1*
420 %defattr(644,root,root,755)
421 %attr(755,root,root) %{_libdir}/wine/d3d8.dll.so
422 %attr(755,root,root) %{_libdir}/wine/d3d9.dll.so
423 %attr(755,root,root) %{_libdir}/wine/d3dx8.dll.so
424 %attr(755,root,root) %{_libdir}/wine/wined3d.dll.so
427 %defattr(644,root,root,755)
428 %attr(755,root,root) %{_libdir}/wine/glu32.dll.so
429 %attr(755,root,root) %{_libdir}/wine/opengl32.dll.so
433 %defattr(644,root,root,755)
434 %attr(755,root,root) %{_libdir}/wine/sane.ds.so
435 %attr(755,root,root) %{_libdir}/wine/twain*.dll.so
440 %defattr(644,root,root,755)
441 %attr(755,root,root) %{_libdir}/wine/winealsa.drv.so
446 %defattr(644,root,root,755)
447 %attr(755,root,root) %{_libdir}/wine/winearts.drv.so
452 %defattr(644,root,root,755)
453 %attr(755,root,root) %{_libdir}/wine/winejack.drv.so
458 %defattr(644,root,root,755)
459 %attr(755,root,root) %{_libdir}/wine/winenas.drv.so
462 # additional dependencies in *.so not separated (yet?) from main package
463 # ddraw.dll.so,x11drv.dll.so depend on X11 libs
464 # ole2disp.dll.so,oleaut32.dll.so,typelib.dll.so depend on lib(un)gif,libjpeg,libX11
465 # ttydrv.dll.so depends on ncurses