/[packages]/cauldron/wine/current/SPECS/wine.spec
ViewVC logotype

Annotation of /cauldron/wine/current/SPECS/wine.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 96590 - (hide annotations) (download)
Mon May 9 03:28:09 2011 UTC (12 years, 10 months ago) by anssi
File size: 15428 byte(s)
- add suggests on wine64-gecko in wine64
- update old comment in .spec

1 ahmad 36061 %ifarch x86_64
2     %define wine wine64
3     %define mark64 ()(64bit)
4     %else
5     %define wine wine
6     %define mark64 %{nil}
7     %endif
8     %define lib_name_orig lib%{name}
9     %define lib_major 1
10     %define lib_name %mklibname %{name} %{lib_major}
11     %define lib_name_devel %{mklibname -d wine}
12    
13     # On 32-bit we have
14     # wine32 - those 32-bit binaries that are also used on 64-bit for 32-bit support
15     # wine - all other files (requires 'wine32')
16     # On 64-bit we have
17     # wine64 - all 64-bit files (suggests 'wine32')
18     # - Anssi 07/2010
19    
20     Name: wine
21 ahmad 93485 Version: 1.3.19
22 ahmad 36061 %define pre 0
23 anssi 96590 %define rel 2
24 ahmad 36061 %if %pre
25     Release: %mkrel 0.%pre.%rel
26     %define o_ver %version-%pre
27     %else
28     Release: %mkrel %rel
29     %define o_ver %version
30     %endif
31     Epoch: 1
32     Summary: WINE Is Not An Emulator - runs MS Windows programs
33     License: LGPLv2+
34     Group: Emulators
35     URL: http://www.winehq.com/
36     BuildRoot: %_tmppath/%{name}-%{version}-%{release}-buildroot
37     Source0: http://ibiblio.org/pub/linux/system/emulators/wine/%{name}-%{o_ver}.tar.bz2
38     Source1: http://ibiblio.org/pub/linux/system/emulators/wine/%{name}-%{o_ver}.tar.bz2.sign
39    
40     # RH stuff
41     Source2: wine.init
42     Patch0: wine-1.0-rc3-fix-conflicts-with-openssl.patch
43     Patch1: wine-1.1.7-chinese-font-substitutes.patch
44     # (Anssi 05/2008) Adds:
45     # a: => /media/floppy (/mnt/floppy on 2007.1 and older)
46     # d: => $HOME (at config_dir creation time, not refreshed if $HOME changes;
47     # note that Wine also provides $HOME in My Documents)
48     # com4 => /dev/ttyUSB0 (replaces /dev/ttyS3)
49 ahmad 37896 Patch108: wine-mgaconf.patch
50 ahmad 36061
51     #(eandry) add a pulseaudio sound driver (from http://art.ified.ca/downloads/ )
52 ahmad 74642 #Patch400: http://art.ified.ca/downloads/winepulse/winepulse-configure.ac-1.3.10.patch
53     # (ahmad) 1.3.16-5.mga1 rediff configure.ac patch manually until upstream catches up
54 ahmad 93485 Patch400: winepulse-configure.ac-1.3.19.patch
55 ahmad 36061 Patch401: http://art.ified.ca/downloads/winepulse/winepulse-0.39.patch
56 ahmad 37896 Patch402: http://art.ified.ca/downloads/winepulse/winepulse-winecfg-1.3.11.patch
57 ahmad 36061
58     # (anssi) Wine needs GCC 4.4+ on x86_64 for MS ABI support. Note also that
59 anssi 96590 # 64-bit wine cannot run 32-bit programs without wine32.
60 ahmad 36061 %ifarch x86_64
61     BuildRequires: gcc >= 4.4
62     %endif
63 ahmad 71420 BuildRequires: bison flex
64     BuildRequires: gpm-devel
65     BuildRequires: perl-devel
66     BuildRequires: ncurses-devel
67     BuildRequires: cups-devel
68     BuildRequires: sane-devel
69     BuildRequires: lcms-devel
70     BuildRequires: autoconf
71     BuildRequires: docbook-utils docbook-dtd-sgml
72     BuildRequires: docbook-utils docbook-dtd-sgml sgml-tools
73     BuildRequires: jackit-devel
74     BuildRequires: pulseaudio-devel
75 ahmad 36061 BuildRequires: libmpg123-devel
76     BuildRequires: openal-devel
77 ahmad 71420 BuildRequires: libalsa-devel
78 ahmad 36061 BuildRequires: gstreamer0.10-devel libgstreamer0.10-plugins-base-devel
79 ahmad 71420 BuildRequires: isdn4k-utils-devel
80     BuildRequires: glibc-static-devel
81     BuildRequires: chrpath
82     BuildRequires: ungif-devel xpm-devel
83     BuildRequires: tiff-devel
84     BuildRequires: librsvg
85     BuildRequires: imagemagick
86     BuildRequires: gphoto2-devel
87     BuildRequires: desktop-file-utils
88     BuildRequires: openldap-devel
89     BuildRequires: libxslt-devel
90     BuildRequires: dbus-devel
91     BuildRequires: hal-devel
92     BuildRequires: valgrind
93     BuildRequires: gsm-devel
94     BuildRequires: unixODBC-devel
95     BuildRequires: gnutls-devel
96 ahmad 36061 BuildRequires: prelink
97 ahmad 70893 BuildRequires: gettext-devel
98 ahmad 71420 BuildRequires: mesaglu-devel
99     BuildRequires: libv4l-devel
100     BuildRequires: libxcursor-devel libxcomposite-devel
101     BuildRequires: libxinerama-devel libxrandr-devel
102     BuildRequires: libx11-devel libxrender-devel
103     BuildRequires: libxext-devel libsm-devel
104     BuildRequires: fontforge fontconfig-devel freetype2-devel
105 ahmad 36061
106     %define desc Wine is a program which allows running Microsoft Windows programs \
107     (including DOS, Windows 3.x and Win32 executables) on Unix. It \
108     consists of a program loader which loads and executes a Microsoft \
109     Windows binary, and a library (called Winelib) that implements Windows \
110     API calls using their Unix or X11 equivalents. The library may also \
111     be used for porting Win32 code into native Unix executables.
112    
113     %ifarch x86_64
114     %package -n %{wine}
115     Summary: WINE Is Not An Emulator - runs MS Windows programs
116     Group: Emulators
117     Suggests: wine32 = %{epoch}:%{version}-%{release}
118 anssi 96590 Suggests: wine64-gecko
119 ahmad 36061 %else
120     # on 32-bit we always want wine32 package
121     Requires: wine32 = %{epoch}:%{version}-%{release}
122     %endif
123    
124     Provides: %{wine}-utils = %{epoch}:%{version}-%{release} %{wine}-full = %{epoch}:%{version}-%{release}
125     Provides: %{lib_name}-capi = %{epoch}:%{version}-%{release} %{lib_name}-twain = %{epoch}:%{version}-%{release}
126     Provides: %{lib_name} = %{epoch}:%{version}-%{release}
127     Provides: wine-bin = %{epoch}:%{version}-%{release}
128     Obsoletes: %{wine}-utils %{wine}-full %{lib_name}-capi %{lib_name}-twain
129     Obsoletes: %{lib_name} <= %{epoch}:%{version}-%{release}
130     Requires: xmessage
131     Suggests: sane-frontends
132     # wine dlopen's these, so let's add the dependencies ourself
133     Requires: libfreetype.so.6%{mark64} libasound.so.2%{mark64}
134 ahmad 72084 # wine needs to dlopen libfontconfig to make CJK fonts show correctly in winecfg
135     Requires: libfontconfig.so.1%{mark64}
136 ahmad 72093 Requires: libncurses.so.5%{mark64}
137 ahmad 36061 Requires: libXrender.so.1%{mark64} libpng.so.3%{mark64}
138     Requires(post): desktop-file-utils
139     Requires(postun): desktop-file-utils
140     Requires(post): desktop-common-data
141     Requires(postun): desktop-common-data
142     Requires(preun): rpm-helper
143     Requires(post): rpm-helper
144     %ifarch %{ix86}
145     Conflicts: wine64
146     %else
147     Conflicts: wine
148     %endif
149    
150     %description
151     %desc
152    
153     %ifarch x86_64
154     %description -n %{wine}
155     %desc
156    
157     This package contains the Win64 version of Wine. You need the wine32
158     package from the 32-bit repository to be able to run 32-bit applications.
159     %endif
160    
161     %ifarch %ix86
162     %package -n wine32
163     Summary: 32-bit support for Wine
164     Group: Emulators
165     # This is not an EVR-specific requirement, as otherwise on x86_64 urpmi could
166     # resolve the dependency to wine64 even on upgrades, and therefore replace
167     # wine+wine32 installation with a wine32+wine64 installation. - Anssi
168     Requires: wine-bin
169     Conflicts: wine < 1:1.2-0.rc7.1
170     Conflicts: wine64 < 1:1.2-0.rc7.1
171     # (Anssi) If wine-gecko is not installed, wine pops up a dialog on first
172     # start proposing to download wine-gecko from sourceforge, while recommending
173     # to use distribution packages instead. Therefore suggest wine-gecko here:
174     Suggests: wine-gecko
175    
176     %description -n wine32
177     Wine is a program which allows running Microsoft Windows programs
178     (including DOS, Windows 3.x and Win32 executables) on Unix.
179    
180     This package contains the files needed to support 32-bit Windows
181     programs.
182     %endif
183    
184     %package -n %{wine}-devel
185     Summary: Static libraries and headers for %{name}
186     Group: Development/C
187     Requires: %{wine} = %{epoch}:%{version}
188     Provides: %{lib_name_devel} = %{epoch}:%{version}-%{release}
189     Provides: %{lib_name_orig}-devel = %{epoch}:%{version}-%{release}
190     Obsoletes: %{lib_name_devel} <= %{epoch}:%{version}-%{release}
191     Obsoletes: %{mklibname -d wine 1} < %{epoch}:%{version}
192     %ifarch %{ix86}
193     Conflicts: wine64-devel
194     %else
195     Conflicts: wine-devel
196     %endif
197    
198     %description -n %{wine}-devel
199     Wine is a program which allows running Microsoft Windows programs
200     (including DOS, Windows 3.x and Win32 executables) on Unix.
201    
202     %{wine}-devel contains the libraries and header files needed to
203     develop programs which make use of wine.
204    
205     Wine is often updated.
206    
207     %prep
208     %setup -q -n %name-%o_ver
209     %patch1 -p0 -b .chinese
210     %patch108 -p1 -b .conf
211     %patch400 -p1
212     %patch401 -p1
213     %patch402 -p1
214    
215     %build
216     %ifarch %ix86
217     # (Anssi 04/2008) bug #39604
218     # Some protection systems complain "debugger detected" with our
219     # -fomit-frame-pointer flag, so disable it.
220     export CFLAGS="%{optflags} -fno-omit-frame-pointer"
221     %endif
222    
223     # (Anssi 04/2008)
224     # If icotool is present, it is used to rebuild icon files. It is in contrib
225     # so we do not do that; this is here to ensure that installed icoutils does
226     # not change build behaviour.
227     export ICOTOOL=false
228    
229     autoreconf
230     %configure2_5x --with-x \
231     --with-pulse \
232     --without-nas \
233     --without-esd \
234     %ifarch x86_64
235     --enable-win64
236     %endif
237    
238     %make depend
239     %make
240    
241     %install
242     rm -rf %{buildroot}
243     %makeinstall_std LDCONFIG=/bin/true
244    
245     # Danny: dirty:
246     install -m755 tools/fnt2bdf -D %{buildroot}%{_bindir}/fnt2bdf
247    
248     # Allow users to launch Windows programs by just clicking on the .exe file...
249     install -m755 %{SOURCE2} -D %{buildroot}%{_initrddir}/%{name}
250    
251     mkdir -p %{buildroot}%{_sysconfdir}/xdg/menus/applications-merged
252     cat > %{buildroot}%{_sysconfdir}/xdg/menus/applications-merged/mageia-%{name}.menu <<EOF
253     <!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN"
254     "http://www.freedesktop.org/standards/menu-spec/menu-1.0.dtd">
255     <Menu>
256     <Name>Applications</Name>
257     <Menu>
258     <Name>Tools</Name>
259     <Menu>
260     <Name>Emulators</Name>
261     <Menu>
262     <Name>Wine</Name>
263     <Directory>mageia-%{name}.directory</Directory>
264     <Include>
265     <Category>X-MandrivaLinux-MoreApplications-Emulators-Wine</Category>
266     </Include>
267     </Menu>
268     </Menu>
269     </Menu>
270     </Menu>
271     EOF
272    
273     mkdir -p %{buildroot}%{_datadir}/desktop-directories
274     cat > %{buildroot}%{_datadir}/desktop-directories/mageia-%{name}.directory <<EOF
275     [Desktop Entry]
276     Name=Wine
277     Icon=%{name}
278     Type=Directory
279     EOF
280    
281     mkdir -p %{buildroot}%{_datadir}/applications/
282     for i in winecfg:Configurator \
283     notepad:Notepad \
284     winefile:File\ Manager \
285     regedit:Registry\ Editor \
286     winemine:Minesweeper \
287     wineboot:Reboot \
288     "wineconsole cmd":Command\ Line \
289     "wine uninstaller:Wine Software Uninstaller";
290     do cat > %{buildroot}%{_datadir}/applications/mageia-%{name}-`echo $i|cut -d: -f1`.desktop << EOF
291     [Desktop Entry]
292     Name=`echo $i|cut -d: -f2`
293     Comment=`echo $i|cut -d: -f2`
294     Exec=`echo $i|cut -d: -f1`
295     Icon=%{name}
296     Terminal=false
297     Type=Application
298     Categories=X-MandrivaLinux-MoreApplications-Emulators-Wine;
299     EOF
300     done
301    
302     # Categories=Emulator does nothing and is added as a workaround to kde #27700
303     desktop-file-install --vendor="" \
304     --add-mime-type=application/x-zip-compressed \
305     --remove-mime-type=application/x-zip-compressed \
306     --add-category=Emulator \
307     --dir %{buildroot}%{_datadir}/applications %{buildroot}%{_datadir}/applications/wine.desktop
308    
309     %ifarch x86_64
310     # fix the binary name
311     sed -i 's,Exec=wine ,Exec=wine64 ,' %{buildroot}%{_datadir}/applications/wine.desktop
312     %endif
313    
314     install -d %{buildroot}{%{_liconsdir},%{_iconsdir},%{_miconsdir}}
315    
316     # winecfg icon
317     convert dlls/user32/resources/oic_winlogo.ico[8] %{buildroot}%{_miconsdir}/%{name}.png
318     convert dlls/user32/resources/oic_winlogo.ico[7] %{buildroot}%{_iconsdir}/%{name}.png
319     convert dlls/user32/resources/oic_winlogo.ico[6] %{buildroot}%{_liconsdir}/%{name}.png
320    
321     # notepad icon
322     convert programs/notepad/notepad.ico[2] %{buildroot}%{_miconsdir}/notepad.png
323     convert programs/notepad/notepad.ico[7] %{buildroot}%{_iconsdir}/notepad.png
324     convert programs/notepad/notepad.ico[8] %{buildroot}%{_liconsdir}/notepad.png
325     # winefile icon
326     convert programs/winefile/winefile.ico[2] %{buildroot}%{_miconsdir}/winefile.png
327     convert programs/winefile/winefile.ico[8] %{buildroot}%{_iconsdir}/winefile.png
328     convert programs/winefile/winefile.ico[7] %{buildroot}%{_liconsdir}/winefile.png
329     # regedit icon
330     convert programs/regedit/regedit.ico[2] %{buildroot}%{_miconsdir}/regedit.png
331     convert programs/regedit/regedit.ico[8] %{buildroot}%{_iconsdir}/regedit.png
332     convert programs/regedit/regedit.ico[7] %{buildroot}%{_liconsdir}/regedit.png
333     # winemine icon
334     convert programs/winemine/winemine.ico[2] %{buildroot}%{_miconsdir}/winemine.png
335     convert programs/winemine/winemine.ico[8] %{buildroot}%{_iconsdir}/winemine.png
336     convert programs/winemine/winemine.ico[7] %{buildroot}%{_liconsdir}/winemine.png
337    
338     # wine uninstaller icon:
339     convert programs/msiexec/msiexec.ico[2] %{buildroot}%{_miconsdir}/msiexec.png
340     convert programs/msiexec/msiexec.ico[8] %{buildroot}%{_iconsdir}/msiexec.png
341     convert programs/msiexec/msiexec.ico[7] %{buildroot}%{_liconsdir}/msiexec.png
342    
343     # change the icons in the respective .desktop files, in order:
344     sed -i 's,Icon=%{name},Icon=notepad,' %{buildroot}%{_datadir}/applications/mageia-wine-notepad.desktop
345     sed -i 's,Icon=%{name},Icon=winefile,' %{buildroot}%{_datadir}/applications/mageia-wine-winefile.desktop
346     sed -i 's,Icon=%{name},Icon=regedit,' %{buildroot}%{_datadir}/applications/mageia-wine-regedit.desktop
347     sed -i 's,Icon=%{name},Icon=winemine,' %{buildroot}%{_datadir}/applications/mageia-wine-winemine.desktop
348     sed -i 's,Icon=%{name},Icon=msiexec,' "%{buildroot}%{_datadir}/applications/mageia-wine-wine uninstaller.desktop"
349    
350     %ifarch x86_64
351     chrpath -d %{buildroot}%{_bindir}/{wine64,wineserver,wmc,wrc} %{buildroot}%{_libdir}/%{name}/*.so
352     %else
353     chrpath -d %{buildroot}%{_bindir}/{wine,wineserver,wmc,wrc} %{buildroot}%{_libdir}/%{name}/*.so
354     %endif
355    
356     %ifarch x86_64
357     cat > README.install.urpmi <<EOF
358     This is the Win64 version of Wine. This version can only be used to run
359     64-bit Windows applications as is. For running 32-bit Windows applications,
360     you need to also install the 'wine32' package from the 32-bit repository.
361     EOF
362     %endif
363    
364     %clean
365     rm -fr %{buildroot}
366    
367     %preun -n %{wine}
368     %_preun_service %{name}
369    
370     %post -n %{wine}
371     %_post_service %{name}
372    
373     %files -n %{wine}
374     %defattr(-,root,root)
375     %doc ANNOUNCE AUTHORS README
376     %ifarch x86_64
377     %doc README.install.urpmi
378     %{_bindir}/wine64
379     %{_bindir}/wine64-preloader
380     %endif
381     %{_initrddir}/%{name}
382     %{_bindir}/winecfg
383     %{_bindir}/wineconsole*
384     %{_bindir}/wineserver
385     %{_bindir}/wineboot
386     %{_bindir}/function_grep.pl
387     #%{_bindir}/wineprefixcreate
388     %{_bindir}/msiexec
389     %{_bindir}/notepad
390     %{_bindir}/regedit
391     %{_bindir}/winemine
392     %{_bindir}/winepath
393     %{_bindir}/regsvr32
394     %{_bindir}/winefile
395     %{_mandir}/man1/wine.1*
396     %lang(de) %{_mandir}/de.UTF-8/man1/wine.1*
397     %lang(de) %{_mandir}/de.UTF-8/man1/winemaker.1*
398     %lang(de) %{_mandir}/de.UTF-8/man1/wineserver.1*
399     %lang(fr) %{_mandir}/fr.UTF-8/man1/*
400     %{_mandir}/man1/wineserver.1*
401     %{_mandir}/man1/msiexec.1*
402     %{_mandir}/man1/notepad.1*
403     %{_mandir}/man1/regedit.1*
404     %{_mandir}/man1/regsvr32.1*
405     %{_mandir}/man1/wineboot.1*
406     %{_mandir}/man1/winecfg.1*
407     %{_mandir}/man1/wineconsole.1*
408     %{_mandir}/man1/winecpp.1*
409     %{_mandir}/man1/winefile.1*
410     %{_mandir}/man1/winemine.1*
411     %{_mandir}/man1/winepath.1*
412     %dir %{_datadir}/%{name}
413     %{_datadir}/%{name}/generic.ppd
414     %{_datadir}/%{name}/%{name}.inf
415     %{_datadir}/%{name}/l_intl.nls
416     %{_datadir}/applications/*.desktop
417     %{_sysconfdir}/xdg/menus/applications-merged/mageia-%{name}.menu
418     %{_datadir}/desktop-directories/mageia-%{name}.directory
419     %dir %{_datadir}/wine/fonts
420     %{_datadir}/wine/fonts/*
421     %{_miconsdir}/*.png
422     %{_iconsdir}/*.png
423     %{_liconsdir}/*.png
424    
425     %ifarch %{ix86}
426     %files -n wine32
427     %defattr(-,root,root)
428     %{_bindir}/wine
429     %{_bindir}/wine-preloader
430     %endif
431    
432     %{_libdir}/libwine*.so.%{lib_major}*
433     %dir %{_libdir}/%{name}
434     %{_libdir}/%{name}/*.cpl.so
435     %{_libdir}/%{name}/*.drv.so
436     %{_libdir}/%{name}/*.dll.so
437     %{_libdir}/%{name}/*.exe.so
438     %{_libdir}/%{name}/*.acm.so
439     %{_libdir}/%{name}/*.ocx.so
440     %ifarch %{ix86}
441     %{_libdir}/%{name}/*.vxd.so
442     %{_libdir}/%{name}/*16.so
443     %endif
444     %{_libdir}/%{name}/*.tlb.so
445     %{_libdir}/%{name}/*.ds.so
446     %{_libdir}/%{name}/*.sys.so
447     %{_libdir}/%{name}/fakedlls
448    
449     %files -n %{wine}-devel
450     %defattr(-,root,root)
451     %{_libdir}/%{name}/*.a
452     %{_libdir}/libwine*.so
453     %{_libdir}/%{name}/*.def
454     %{_includedir}/*
455     %{_bindir}/fnt2bdf
456     %{_bindir}/wmc
457     %{_bindir}/wrc
458     %{_bindir}/winebuild
459     %{_bindir}/winegcc
460     %{_bindir}/wineg++
461     %{_bindir}/winecpp
462     %{_bindir}/widl
463     %{_bindir}/winedbg
464     %{_bindir}/winemaker
465     %{_bindir}/winedump
466     %{_mandir}/man1/wmc.1*
467     %{_mandir}/man1/wrc.1*
468     %{_mandir}/man1/winebuild.1*
469     %{_mandir}/man1/winemaker.1*
470     %{_mandir}/man1/winedump.1*
471     %{_mandir}/man1/widl.1*
472     %{_mandir}/man1/winedbg.1*
473     %{_mandir}/man1/wineg++.1*
474     %{_mandir}/man1/winegcc.1*

  ViewVC Help
Powered by ViewVC 1.1.30