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

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

Parent Directory Parent Directory | Revision Log Revision Log


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

  ViewVC Help
Powered by ViewVC 1.1.30