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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 93485 - (show annotations) (download)
Fri Apr 29 19:31:06 2011 UTC (12 years, 11 months ago) by ahmad
File size: 15556 byte(s)
- Update to 1.3.19
- Rediff the winepulse-configure.ac patch

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

  ViewVC Help
Powered by ViewVC 1.1.30