]> git.pld-linux.org Git - packages/wine.git/blame_incremental - wine.spec
- versioned obsoletes
[packages/wine.git] / wine.spec
... / ...
CommitLineData
1#
2# todo:
3# libvkd3d https://wiki.winehq.org/Vkd3d
4#
5# Conditional build:
6%bcond_with capi # don't build CAPI 2.0 (ISDN) support
7%bcond_without gstreamer # don't build GStreamer filters support
8%bcond_without sane # don't build TWAIN DLL with scanning support (through SANE)
9%bcond_without ldap # don't build LDAP DLL
10%bcond_without cups # without CUPS printing support in winspool,wineps DLLs
11%bcond_without netapi # don't use the Samba NetAPI library
12#
13# NOTE: wine detects the following SONAMES for dlopen at build time:
14# libGL (winex11.drv.so)
15# libOSMesa (gdi32.dll.so)
16# libX11 libXcomposite libXcursor libXext libXi libXinerama libXrandr libXrender libXxf86vm (winex11.drv.so)
17# libcapi20 (capi2032.dll.so)
18# libcups (winspool.drv.so)
19# libdbus (mountmgr.sys.so)
20# libfontconfig (gdi32.dll.so)
21# libfreetype (gdi32.dll.so)
22# libgnutls (secur32.dll.so)
23# libncurses (kernel32.dll.so)
24# libodbc (odbc32.dll.so)
25# libsane (sane.ds.so)
26# libtiff (windowscodecs.dll.so)
27# thus requires rebuild after change of any of the above.
28
29# library qualifier in rpm generated deps
30%ifarch %{x8664} ia64 ppc64 s390x sparc64
31%define libqual ()(64bit)
32%else
33%define libqual %{nil}
34%endif
35
36%ifarch %{x8664}
37%define winelib x86_64
38%else
39%define winelib i386
40%endif
41
42%define gecko_ver 2.47.2
43Summary: Program that lets you launch Win applications
44Summary(es.UTF-8): Ejecuta programas Windows en Linux
45Summary(pl.UTF-8): Program pozwalający uruchamiać aplikacje Windows
46Summary(pt_BR.UTF-8): Executa programas Windows no Linux
47Name: wine
48Version: 7.7
49Release: 2
50Epoch: 1
51License: LGPL
52Group: Applications/Emulators
53Source0: https://dl.winehq.org/wine/source/7.x/%{name}-%{version}.tar.xz
54# Source0-md5: da2a85204a962a173ae0af03533961b4
55Source1: https://dl.winehq.org/wine/wine-gecko/%{gecko_ver}/%{name}-gecko-%{gecko_ver}-x86.msi
56# Source1-md5: e0a26e37397961b2c7f624575590ef66
57Source2: https://dl.winehq.org/wine/wine-gecko/%{gecko_ver}/%{name}-gecko-%{gecko_ver}-x86_64.msi
58# Source2-md5: ff7168b08fa901516fbaa8a66aa3cee6
59Source3: %{name}-uninstaller.desktop
60Patch0: %{name}-gphoto2_bool.patch
61Patch1: %{name}-makedep.patch
62Patch2: %{name}-ncurses.patch
63Patch4: %{name}-disable-valgrind.patch
64Patch5: %{name}-ca_certificates.patch
65Patch6: desktop.patch
66Patch7: %{name}-wine64_man.patch
67URL: http://www.winehq.org/
68BuildRequires: Mesa-libOSMesa-devel
69BuildRequires: OpenAL-devel >= 1.1
70BuildRequires: OpenCL-devel
71BuildRequires: OpenGL-GLU-devel
72BuildRequires: SDL2-devel
73BuildRequires: alsa-lib-devel
74%{?with_arts:BuildRequires: artsc-devel}
75BuildRequires: autoconf >= 2.62
76BuildRequires: automake
77BuildRequires: bison
78%{?with_capi:BuildRequires: capi4k-utils-devel}
79BuildRequires: clang
80%{?with_cups:BuildRequires: cups-devel}
81BuildRequires: dbus-devel
82BuildRequires: flex >= 2.5.33
83BuildRequires: fontconfig-devel
84BuildRequires: freetype-devel >= 2.0.5
85BuildRequires: gettext-devel
86%ifarch %{x8664}
87BuildRequires: gcc >= 6:4.4
88%endif
89BuildRequires: gettext-tools
90BuildRequires: gnutls-devel
91%{?with_gstreamer:BuildRequires: gstreamer-devel >= 1.0}
92%{?with_gstreamer:BuildRequires: gstreamer-plugins-base-devel >= 1.0}
93# for icotool used in build
94BuildRequires: icoutils >= 0.29.0
95BuildRequires: lcms2-devel >= 2
96BuildRequires: libcap-devel
97BuildRequires: libglvnd-libEGL-devel
98BuildRequires: libgphoto2-devel
99BuildRequires: libpcap-devel
100BuildRequires: libv4l-devel
101BuildRequires: lld
102%{?with_ldap:BuildRequires: openldap-devel}
103BuildRequires: pkgconfig
104BuildRequires: pulseaudio-devel
105BuildRequires: samba-devel
106%{?with_sane:BuildRequires: sane-backends-devel}
107BuildRequires: xorg-lib-libX11-devel
108BuildRequires: xorg-lib-libXcomposite-devel
109BuildRequires: xorg-lib-libXcursor-devel
110BuildRequires: xorg-lib-libXext-devel
111BuildRequires: xorg-lib-libXi-devel
112BuildRequires: xorg-lib-libXinerama-devel
113BuildRequires: xorg-lib-libXrandr-devel
114BuildRequires: xorg-lib-libXrender-devel
115BuildRequires: xorg-lib-libXxf86vm-devel
116BuildConflicts: crossmingw32-gcc
117BuildConflicts: crossmingw64-gcc
118Requires: OpenGL
119Requires: libfreetype.so.6%{libqual}
120Requires: libpng16.so.16%{libqual}
121Requires(post): /sbin/ldconfig
122Suggests: binfmt-detector
123Suggests: ca-certificates
124Suggests: cabextract
125Conflicts: ca-certificates < 20080809-4
126# for printing needs lpr
127Suggests: cups-clients
128# for winelauncher
129Suggests: xorg-app-xmessage
130# for ntlm_auth
131Suggests: samba-common >= 1:3.0.25
132# link to wine/ntdll.dll.so, without any SONAME
133Provides: libntdll.dll.so
134Obsoletes: wine-dll-d3d < 1:7.7-2
135Obsoletes: wine-dll-gl < 1:7.7-2
136Obsoletes: wine-doc-pdf < 1:7.7-2
137Obsoletes: wine-drv-alsa < 1:7.7-2
138Obsoletes: wine-drv-arts < 1:7.7-2
139Obsoletes: wine-drv-jack < 1:7.7-2
140Obsoletes: wine-drv-nas < 1:7.7-2
141Obsoletes: wine-programs < 1:7.7-2
142ExclusiveArch: %{ix86} %{x8664} arm
143ExcludeArch: i386
144BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
145
146%define no_install_post_strip 1
147%define _noautoprov elf\\\\(buildid\\\\)
148
149%define _winedir %{_datadir}/%{name}
150
151%description
152Wine is a program which allows running Microsoft Windows programs
153(including DOS, Windows 3.x and Win32 executables) on Unix. It
154consists of a program loader which loads and executes a Microsoft
155Windows binary, and a library that implements Windows API calls using
156their Unix or X11 equivalents. The library may also be used for
157porting Win32 code into native Unix executables.
158
159%description -l es.UTF-8
160Ejecuta programas Windows en Linux.
161
162%description -l pl.UTF-8
163Wine jest programem dzięki któremu można uruchamiać programy napisane
164dla Microsoft Windows pod systemami uniksowymi. Składa się on z
165loadera, który pozwala wczytywać i uruchamiać programy w formacie
166Microsoft Windows, oraz z biblioteki, która implementuje API Windows
167przy użyciu odpowiedników uniksowych oraz z X11. Biblioteka może być
168także wykorzystana do przenoszenia aplikacji Win32 do Uniksa.
169
170%description -l pt_BR.UTF-8
171O Wine é um programa que permite rodar programas MS-Windows no X11.
172Ele consiste de um carregador de programa, que carrega e executa um
173binário MS-Windows, e de uma biblioteca de emulação que traduz as
174chamadas da API para as equivalentes Unix/X11.
175
176%package devel
177Summary: Wine - header files
178Summary(es.UTF-8): Biblioteca de desarrollo de wine
179Summary(pl.UTF-8): Wine - pliki nagłowkowe
180Summary(pt_BR.UTF-8): Biblioteca de desenvolvimento do wine
181Group: Development/Libraries
182Requires: %{name} = %{epoch}:%{version}-%{release}
183
184%description devel
185Wine - header files.
186
187%description devel -l es.UTF-8
188Biblioteca de desarrollo de wine.
189
190%description devel -l pl.UTF-8
191Wine - pliki nagłówkowe.
192
193%description devel -l pt_BR.UTF-8
194Arquivos de inclusão e bibliotecas para desenvolver aplicações com o
195WINE.
196
197%package dll-capi
198Summary: CAPI 2.0 (ISDN) implementation DLLs for Wine
199Summary(pl.UTF-8): Biblioteki DLL z implementacją CAPI 2.0 (ISDN) dla Wine
200Group: Applications/Emulators
201Requires: %{name} = %{epoch}:%{version}-%{release}
202
203%description dll-capi
204CAPI 2.0 (ISDN) implementation DLLs for Wine.
205
206%description dll-capi -l pl.UTF-8
207Biblioteki DLL z implementacją CAPI 2.0 (ISDN) dla Wine.
208
209%package dll-twain
210Summary: TWAIN implementation DLL for Wine
211Summary(pl.UTF-8): Biblioteka DLL z implementacją TWAIN dla Wine
212Group: Applications/Emulators
213Requires: %{name} = %{epoch}:%{version}-%{release}
214
215%description dll-twain
216TWAIN implementation DLL for Wine (through SANE).
217
218%description dll-twain -l pl.UTF-8
219Biblioteka DLL z implementacją TWAIN dla Wine (poprzez SANE).
220
221%package dll-ldap
222Summary: Win32 LDAP API DLL for Wine
223Summary(pl.UTF-8): Biblioteka DLL z implementacją API Win32 LDAP dla Wine
224Group: Applications/Emulators
225Requires: %{name} = %{epoch}:%{version}-%{release}
226
227%description dll-ldap
228Lightweight Directory Access Protocol Library for Wine.
229
230%description dll-ldap -l pl.UTF-8
231Biblioteka LDAP (Lightweight Directory Access Protocol) dla Wine.
232
233%prep
234%setup -q
235#%patch0 -p1
236%patch1 -p1
237%patch4 -p1
238%patch5 -p1
239%patch6 -p1
240%ifarch %{x8664}
241%patch7 -p1
242%endif
243
244%build
245
246#workaround for icon extraction error.
247icotool -x -o . dlls/user32/resources/oic_winlogo.ico
248mv -f oic_winlogo_*32x32x32.png %{name}.png
249rm -f oic_winlogo_*.png
250
251%{__autoconf}
252%{__autoheader}
253%configure \
254%ifarch %{x8664}
255 --enable-win64 \
256%endif
257 --with-alsa \
258 --with-capi%{!?with_capi:=no} \
259 --with-coreaudio \
260 --with-cups%{!?with_cups:=no} \
261 --with-dbus \
262 --with-fontconfig \
263 --with-freetype \
264 --with-gphoto \
265 --with-gnutls \
266 %{__with_without gstreamer} \
267 --with-ldap%{!?with_ldap:=no} \
268 --with%{!?with_netapi:out}-netapi \
269 --with-openal \
270 --with-opencl \
271 --with-opengl \
272 --with-osmesa \
273 --with-pcap \
274 --with-pthread \
275 --with-pulse \
276 --with%{!?with_sane:out}-sane \
277 --with-xcomposite \
278 --with-xcursor \
279 --with-xinerama \
280 --with-xinput \
281 --with-xinput2 \
282 --with-xrandr \
283 --with-xrender \
284 --with-xshape \
285 --with-xshm \
286 --with-xxf86vm \
287 --with-x
288
289%{__make} depend
290%{__make}
291
292%install
293rm -rf $RPM_BUILD_ROOT
294install -d $RPM_BUILD_ROOT{%{_mandir}/man1,%{_aclocaldir}}
295%{__make} install \
296 DESTDIR=$RPM_BUILD_ROOT
297
298install -p tools/sfnt2fon/sfnt2fon $RPM_BUILD_ROOT%{_bindir}
299cp -a aclocal.m4 $RPM_BUILD_ROOT%{_aclocaldir}/wine.m4
300
301install -d \
302 $RPM_BUILD_ROOT%{_winedir}/windows/{system,Desktop,Favorites,Fonts} \
303 "$RPM_BUILD_ROOT%{_winedir}/windows/Start Menu/Programs/Startup" \
304 $RPM_BUILD_ROOT%{_winedir}/windows/{SendTo,ShellNew,system32,NetHood} \
305 $RPM_BUILD_ROOT%{_winedir}/windows/{Profiles/Administrator,Recent} \
306 $RPM_BUILD_ROOT%{_winedir}/{"Program Files/Common Files","My Documents"}
307
308touch $RPM_BUILD_ROOT%{_winedir}/{autoexec.bat,config.sys,windows/win.ini}
309touch $RPM_BUILD_ROOT%{_winedir}/windows/system/{shell.dll,shell32.dll}
310touch $RPM_BUILD_ROOT%{_winedir}/windows/system/{winsock.dll,wsock32.dll}
311
312cat > $RPM_BUILD_ROOT%{_winedir}/windows/system.ini <<'EOF'
313[mci]
314cdaudio=mcicda.drv
315sequencer=mciseq.drv
316waveaudio=mciwave.drv
317avivideo=mciavi.drv
318videodisc=mcipionr.drv
319vcr=mciviscd.drv
320MPEGVideo=mciqtz.drv
321EOF
322
323# /sbin/chstk -e $RPM_BUILD_ROOT%{_bindir}/wine
324
325for dir in $RPM_BUILD_ROOT%{_mandir}/*.UTF-8 ; do
326 mv "$dir" "${dir%.UTF-8}"
327done
328
329%ifarch %{x8664}
330cp -p loader/wine.man $RPM_BUILD_ROOT%{_mandir}/man1/wine64.1
331for lang in de fr pl ; do
332install -d $RPM_BUILD_ROOT%{_mandir}/${lang}/man1
333cp -p loader/wine.${lang}.UTF-8.man $RPM_BUILD_ROOT%{_mandir}/${lang}/man1/wine64.1
334done
335%else
336cp -p loader/wine.man $RPM_BUILD_ROOT%{_mandir}/man1/wine.1
337for lang in de fr pl ; do
338install -d $RPM_BUILD_ROOT%{_mandir}/${lang}/man1
339cp -p loader/wine.${lang}.UTF-8.man $RPM_BUILD_ROOT%{_mandir}/${lang}/man1/wine.1
340done
341%endif
342
343install -d $RPM_BUILD_ROOT%{_winedir}/gecko
344%ifnarch %{x8664}
345cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_winedir}/gecko
346%else
347cp -p %{SOURCE2} $RPM_BUILD_ROOT%{_winedir}/gecko
348%endif
349
350install -d $RPM_BUILD_ROOT%{_pixmapsdir}
351cp -p %{SOURCE3} $RPM_BUILD_ROOT%{_desktopdir}
352cp -p %{name}.png $RPM_BUILD_ROOT%{_pixmapsdir}
353
354%clean
355rm -rf $RPM_BUILD_ROOT
356
357%post
358/sbin/ldconfig
359%update_desktop_database
360
361%postun -p /sbin/ldconfig
362
363%triggerpostun -- wine < 1:0.9.12-1.9
364rm -f /var/lock/subsys/wine
365if [ -x /sbin/chkconfig ]; then
366 /sbin/chkconfig --del wine
367fi
368
369%files
370%defattr(644,root,root,755)
371%doc README AUTHORS ANNOUNCE
372%lang(de) %doc documentation/README.de
373%lang(es) %doc documentation/README.es
374%lang(fr) %doc documentation/README.fr
375%lang(hu) %doc documentation/README.hu
376%lang(it) %doc documentation/README.it
377%lang(ko) %doc documentation/README.ko
378%lang(nb) %doc documentation/README.no
379%lang(pt) %doc documentation/README.pt
380%lang(pt_BR) %doc documentation/README.pt_br
381%lang(ru) %doc documentation/README.ru
382%lang(sv) %doc documentation/README.sv
383%lang(tr) %doc documentation/README.tr
384%attr(755,root,root) %{_bindir}/msidb
385%attr(755,root,root) %{_bindir}/msiexec
386%attr(755,root,root) %{_bindir}/notepad
387%attr(755,root,root) %{_bindir}/regedit
388%attr(755,root,root) %{_bindir}/regsvr32
389%ifnarch %{x8664}
390%attr(755,root,root) %{_bindir}/wine
391%else
392%attr(755,root,root) %{_bindir}/wine64
393%endif
394%attr(755,root,root) %{_bindir}/wineboot
395%attr(755,root,root) %{_bindir}/winecfg
396%attr(755,root,root) %{_bindir}/wineconsole
397%attr(755,root,root) %{_bindir}/winedbg
398%attr(755,root,root) %{_bindir}/winefile
399%attr(755,root,root) %{_bindir}/winemine
400%attr(755,root,root) %{_bindir}/winepath
401%ifnarch %{x8664}
402%attr(755,root,root) %{_bindir}/wine-preloader
403%else
404%attr(755,root,root) %{_bindir}/wine64-preloader
405%endif
406%attr(755,root,root) %{_bindir}/wineserver
407%dir %{_libdir}/wine
408%dir %{_libdir}/wine/%{winelib}-unix
409%attr(755,root,root) %{_libdir}/wine/%{winelib}-unix/*.so*
410%dir %{_libdir}/wine/%{winelib}-windows
411%{_libdir}/wine/%{winelib}-windows/*.acm
412%{_libdir}/wine/%{winelib}-windows/*.ax
413%{_libdir}/wine/%{winelib}-windows/*.com
414%{_libdir}/wine/%{winelib}-windows/*.cpl
415%{_libdir}/wine/%{winelib}-windows/*.dll
416%ifarch %{ix86}
417%{_libdir}/wine/%{winelib}-windows/*.dll16
418%endif
419%{_libdir}/wine/%{winelib}-windows/*.drv
420%ifarch %{ix86}
421%{_libdir}/wine/%{winelib}-windows/*.drv16
422%endif
423%{_libdir}/wine/%{winelib}-windows/*.ds
424%{_libdir}/wine/%{winelib}-windows/*.exe
425%ifarch %{ix86}
426%{_libdir}/wine/%{winelib}-windows/*.exe16
427%{_libdir}/wine/%{winelib}-windows/*.mod16
428%endif
429%{_libdir}/wine/%{winelib}-windows/*.msstyles
430%{_libdir}/wine/%{winelib}-windows/*.ocx
431%{_libdir}/wine/%{winelib}-windows/*.sys
432%{_libdir}/wine/%{winelib}-windows/*.tlb
433%ifarch %{ix86}
434%{_libdir}/wine/%{winelib}-windows/*.vxd
435%endif
436%if %{with capi}
437%exclude %{_libdir}/wine/%{winelib}-windows/capi2032.dll
438%exclude %{_libdir}/wine/%{winelib}-unix/capi2032.so
439%endif
440%if %{with sane}
441%exclude %{_libdir}/wine/%{winelib}-unix/sane.so
442%exclude %{_libdir}/wine/%{winelib}-windows/twain*.dll
443%ifarch %{ix86}
444%exclude %{_libdir}/wine/%{winelib}-windows/twain*.dll16
445%endif
446%endif
447%if %{with ldap}
448%exclude %{_libdir}/wine/%{winelib}-unix/wldap*.so
449%exclude %{_libdir}/wine/%{winelib}-windows/wldap*.dll
450%endif
451%{_mandir}/man1/msiexec.1*
452%{_mandir}/man1/notepad.1*
453%{_mandir}/man1/regedit.1*
454%{_mandir}/man1/regsvr32.1*
455%ifnarch %{x8664}
456%{_mandir}/man1/wine.1*
457%lang(de) %{_mandir}/de/man1/wine.1*
458%lang(fr) %{_mandir}/fr/man1/wine.1*
459%lang(pl) %{_mandir}/pl/man1/wine.1*
460%else
461%{_mandir}/man1/wine64.1*
462%lang(de) %{_mandir}/de/man1/wine64.1*
463%lang(fr) %{_mandir}/fr/man1/wine64.1*
464%lang(pl) %{_mandir}/pl/man1/wine64.1*
465%endif
466%{_mandir}/man1/wineboot.1*
467%{_mandir}/man1/winecfg.1*
468%{_mandir}/man1/wineconsole.1*
469%{_mandir}/man1/winedbg.1*
470%{_mandir}/man1/winefile.1*
471%{_mandir}/man1/winemine.1*
472%{_mandir}/man1/winepath.1*
473%{_mandir}/man1/wineserver.1*
474%lang(de) %{_mandir}/de/man1/wineserver.1*
475%lang(fr) %{_mandir}/fr/man1/wineserver.1*
476%{_winedir}
477%{_desktopdir}/wine.desktop
478%{_desktopdir}/wine-uninstaller.desktop
479%{_pixmapsdir}/%{name}.png
480
481%files devel
482%defattr(644,root,root,755)
483%attr(755,root,root) %{_bindir}/sfnt2fon
484%attr(755,root,root) %{_bindir}/function_grep.pl
485%attr(755,root,root) %{_bindir}/widl
486%attr(755,root,root) %{_bindir}/winebuild
487%attr(755,root,root) %{_bindir}/winedump
488%attr(755,root,root) %{_bindir}/wineg++
489%attr(755,root,root) %{_bindir}/winegcc
490%attr(755,root,root) %{_bindir}/winemaker
491%attr(755,root,root) %{_bindir}/winecpp
492%attr(755,root,root) %{_bindir}/wmc
493%attr(755,root,root) %{_bindir}/wrc
494# no shared variants, so not separated
495%{_libdir}/wine/%{winelib}-unix/lib*.a
496%{_libdir}/wine/%{winelib}-windows/lib*.a
497%{_includedir}/wine
498%{_mandir}/man1/widl.1*
499%{_mandir}/man1/winebuild.1*
500%{_mandir}/man1/winecpp.1*
501%{_mandir}/man1/winedump.1*
502%{_mandir}/man1/winegcc.1*
503%{_mandir}/man1/wineg++.1*
504%{_mandir}/man1/winemaker.1*
505%lang(de) %{_mandir}/de/man1/winemaker.1*
506%lang(fr) %{_mandir}/fr/man1/winemaker.1*
507%{_mandir}/man1/wmc.1*
508%{_mandir}/man1/wrc.1*
509%{_aclocaldir}/*.m4
510
511%if %{with capi}
512%files dll-capi
513%defattr(644,root,root,755)
514%attr(755,root,root) %{_libdir}/wine/%{winelib}-windows/capi2032.dll
515%attr(755,root,root) %{_libdir}/wine/%{winelib}-unix/capi2032.so
516%endif
517
518%if %{with sane}
519%files dll-twain
520%defattr(644,root,root,755)
521%attr(755,root,root) %{_libdir}/wine/%{winelib}-unix/sane.so
522%attr(755,root,root) %{_libdir}/wine/%{winelib}-windows/twain*.dll
523%ifarch %{ix86}
524%attr(755,root,root) %{_libdir}/wine/%{winelib}-windows/twain*.dll16
525%endif
526%endif
527
528%if %{with ldap}
529%files dll-ldap
530%defattr(644,root,root,755)
531%attr(755,root,root) %{_libdir}/wine/%{winelib}-unix/wldap*.so
532%attr(755,root,root) %{_libdir}/wine/%{winelib}-windows/wldap*.dll
533%endif
534
535# additional dependencies in *.so not separated (yet?) from main package
536# ddraw.dll.so,winex11.drv.so depend on X11 libs
537# ole2disp.dll16.so,oleaut32.dll.so,typelib.dll16.so depend on libX11
This page took 0.27707 seconds and 4 git commands to generate.