]> git.pld-linux.org Git - packages/qemu.git/blame - qemu.spec
add -system-unicore32 package.
[packages/qemu.git] / qemu.spec
CommitLineData
0b920c52 1# TODO:
3d0e0752 2# - package virtfs-proxy-helper, qemu-bridge-helper.
697b0ba8 3# - package qemu-system-or32
98a1a188 4# - update patches
01b9430c 5# - qemu-system-ppc -hda ac-ppc.img says:
fabf5a9c 6# qemu: could not open disk image ac-ppc.img: error "Success"
01b9430c 7# qemu-0.12.2-2.x86_64.rpm - broken
cef095a4 8# qemu-0.12.3-3.x86_64/qemu-0.12.4-1.x86_64 - stops on "returning from prom_init"
fabf5a9c
ER
9# qemu-0.15.0-2.x86_64.rpm - qemu-system-sparc/ppc booting with -kernel, -initrd options stalls in openbios prompt
10# qemu-0.11.1-*.x86_64.rpm - OK
0b920c52 11#
6aef4654 12# Conditional build:
a6d3659e 13%bcond_with nosdlgui # do not use SDL gui (use X11 instead)
007877cb 14
cd19124e 15Summary: QEMU CPU Emulator
eec0535a 16Summary(pl.UTF-8): QEMU - emulator procesora
7b81d160 17Name: qemu
697b0ba8 18Version: 1.2.0
ad857655 19Release: 1
5a2da1d0
JB
20License: GPL
21Group: Applications/Emulators
697b0ba8
PS
22Source0: http://wiki.qemu.org/download/%{name}-%{version}.tar.bz2
23# Source0-md5: 78eb1e984f4532aa9f2bdd3c127b5b61
9bcd4ab6 24Patch0: %{name}-cflags.patch
d9002706 25Patch1: vgabios-widescreens.patch
7b81d160 26Patch6: %{name}-nosdlgui.patch
81a493f2 27# Proof of concept, for reference, do not remove
7b81d160 28Patch8: %{name}-kde_virtual_workspaces_hack.patch
ba4329df 29Patch17: %{name}-whitelist.patch
d6bd22e9 30URL: http://wiki.qemu.org/Index.html
867764ba 31BuildRequires: SDL-devel >= 1.2.1
b0b3ca8d 32BuildRequires: alsa-lib-devel
b99b1652
AM
33BuildRequires: bluez-libs-devel
34BuildRequires: gnutls-devel
98a1a188 35BuildRequires: ncurses-devel
995bac8b 36BuildRequires: perl-Encode
2fb8ea02 37BuildRequires: perl-tools-pod
ba84a935 38BuildRequires: pkgconfig
8bb1261c 39BuildRequires: sed >= 4.0
a1146336 40BuildRequires: texi2html
22f71ecb 41BuildRequires: texinfo
cad677a4 42BuildRequires: which
3d0e0752 43BuildRequires: xen-devel
ba84a935 44BuildRequires: xorg-lib-libX11-devel
fabf5a9c
ER
45Requires: %{name}-img = %{version}-%{release}
46Requires: %{name}-system-alpha = %{version}-%{release}
47Requires: %{name}-system-arm = %{version}-%{release}
48Requires: %{name}-system-cris = %{version}-%{release}
49Requires: %{name}-system-lm32 = %{version}-%{release}
50Requires: %{name}-system-m68k = %{version}-%{release}
51Requires: %{name}-system-microblaze = %{version}-%{release}
52Requires: %{name}-system-mips = %{version}-%{release}
53Requires: %{name}-system-ppc = %{version}-%{release}
54Requires: %{name}-system-s390x = %{version}-%{release}
55Requires: %{name}-system-sh4 = %{version}-%{release}
56Requires: %{name}-system-sparc = %{version}-%{release}
72ddf007 57Requires: %{name}-system-unicore32 = %{version}-%{release}
fabf5a9c
ER
58Requires: %{name}-system-x86 = %{version}-%{release}
59Requires: %{name}-system-xtensa = %{version}-%{release}
60Requires: %{name}-user = %{version}-%{release}
2ef13cb9 61# sparc is currently unsupported (missing cpu_get_real_ticks() impl in vl.c)
007877cb 62ExclusiveArch: %{ix86} %{x8664} %{?with_userspace:ppc}
cd19124e 63BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
64
98a1a188 65# some PPC/SPARC boot image in ELF format
22f71ecb 66%define _noautostrip .*%{_datadir}/qemu/.*-.*
a154aede 67
cd19124e 68%description
69QEMU is a FAST! processor emulator. By using dynamic translation it
70achieves a reasonnable speed while being easy to port on new host
71CPUs. QEMU has two operating modes:
72
73- User mode emulation. In this mode, QEMU can launch Linux processes
74 compiled for one CPU on another CPU. Linux system calls are converted
75 because of endianness and 32/64 bit mismatches. Wine (Windows
76 emulation) and DOSEMU (DOS emulation) are the main targets for QEMU.
77
78- Full system emulation. In this mode, QEMU emulates a full system,
8799423b
ER
79 including a processor and various peripherials. It can also be used to
80 provide virtual hosting of several virtual PC on a single server.
cd19124e 81
27b30e9c
JR
82%description -l pl.UTF-8
83QEMU to szybki(!) emulator procesora. Poprzez użycie dynamicznego
84tłumaczenia osiąga rozsądną szybkość i jest łatwy do przeportowania,
85aby działał na kolejnych procesorach. QEMU ma dwa tryby pracy:
5a2da1d0 86
27b30e9c 87- Emulacja trybu użytkownika. W tym trybie QEMU może uruchamiać
5a2da1d0 88 procesy linuksowe skompilowane dla jednego procesora na innym
27b30e9c
JR
89 procesorze. Linuksowe wywołania systemowe są tłumaczone ze względu na
90 niezgodność kolejności bajtów w słowie i 32/64-bitowego rozmiaru
91 słowa. Wine (emulacja Windows) i DOSEMU (emulacja DOS-a) to główne
5a2da1d0
JB
92 cele QEMU.
93
27b30e9c
JR
94- Pełna emulacja systemu. W tym trybie QEMU emuluje cały system,
95 włączając w to procesor i różne urządzenia peryferyjne. Może być także
96 używane do wirtualnego hostowania kilku wirtualnych pecetów na
8799423b 97 pojedynczym serwerze.
5a2da1d0 98
fabf5a9c
ER
99%package common
100Summary: QEMU common files needed by all QEMU targets
101Group: Development/Tools
102Requires: SDL >= 1.2.1
103Conflicts: qemu < 1.0-2
104
105%description common
106QEMU is a generic and open source processor emulator which achieves a
107good emulation speed by using dynamic translation.
108
109This package provides the common files needed by all QEMU targets.
110
111%package img
112Summary: QEMU command line tool for manipulating disk images
113Group: Development/Tools
114Conflicts: qemu < 1.0-2
115
116%description img
117This package provides a command line tool for manipulating disk images
118
119%package user
120Summary: QEMU user mode emulation of qemu targets
121Group: Development/Tools
122Requires: %{name}-common = %{version}-%{release}
123
124%description user
125QEMU is a generic and open source processor emulator which achieves a
126good emulation speed by using dynamic translation.
127
128This package provides the user mode emulation of QEMU targets.
129
130%package system-alpha
131Summary: QEMU system emulator for alpha
132Group: Development/Tools
133Requires: %{name}-common = %{version}-%{release}
134
135%description system-alpha
136QEMU is a generic and open source processor emulator which achieves a
137good emulation speed by using dynamic translation.
138
139This package provides the system emulator for alpha.
140
141%package system-arm
142Summary: QEMU system emulator for arm
143Group: Development/Tools
144Requires: %{name}-common = %{version}-%{release}
145
146%description system-arm
147QEMU is a generic and open source processor emulator which achieves a
148good emulation speed by using dynamic translation.
149
150This package provides the system emulator for arm.
151
152%package system-cris
153Summary: QEMU system emulator for cris
154Group: Development/Tools
155Requires: %{name}-common = %{version}-%{release}
156
157%description system-cris
158QEMU is a generic and open source processor emulator which achieves a
159good emulation speed by using dynamic translation.
160
161This package provides the system emulator for cris.
162
163%package system-lm32
164Summary: QEMU system emulator for lm32
165Group: Development/Tools
166Requires: %{name}-common = %{version}-%{release}
167
168%description system-lm32
169QEMU is a generic and open source processor emulator which achieves a
170good emulation speed by using dynamic translation.
171
172This package provides the system emulator for lm32.
173
174%package system-m68k
175Summary: QEMU system emulator for m68k
176Group: Development/Tools
177Requires: %{name}-common = %{version}-%{release}
178
179%description system-m68k
180QEMU is a generic and open source processor emulator which achieves a
181good emulation speed by using dynamic translation.
182
183This package provides the system emulator for m68k.
184
185%package system-microblaze
186Summary: QEMU system emulator for microblaze
187Group: Development/Tools
188Requires: %{name}-common = %{version}-%{release}
189
190%description system-microblaze
191QEMU is a generic and open source processor emulator which achieves a
192good emulation speed by using dynamic translation.
193
194This package provides the system emulator for microblaze.
195
196%package system-mips
197Summary: QEMU system emulator for mips
198Group: Development/Tools
199Requires: %{name}-common = %{version}-%{release}
200
201%description system-mips
202QEMU is a generic and open source processor emulator which achieves a
203good emulation speed by using dynamic translation.
204
205This package provides the system emulator for mips.
206
207%package system-ppc
208Summary: QEMU system emulator for ppc
209Group: Development/Tools
210Requires: %{name}-common = %{version}-%{release}
211
212%description system-ppc
213QEMU is a generic and open source processor emulator which achieves a
214good emulation speed by using dynamic translation.
215
216This package provides the system emulator for ppc.
217
218%package system-s390x
219Summary: QEMU system emulator for s390x
220Group: Development/Tools
221Requires: %{name}-common = %{version}-%{release}
222
223%description system-s390x
224QEMU is a generic and open source processor emulator which achieves a
225good emulation speed by using dynamic translation.
226
227This package provides the system emulator for s390x.
228
229%package system-sh4
230Summary: QEMU system emulator for sh4
231Group: Development/Tools
232Requires: %{name}-common = %{version}-%{release}
233
234%description system-sh4
235QEMU is a generic and open source processor emulator which achieves a
236good emulation speed by using dynamic translation.
237
238This package provides the system emulator for sh4.
239
240%package system-sparc
241Summary: QEMU system emulator for sparc
242Group: Development/Tools
243Requires: %{name}-common = %{version}-%{release}
244
245%description system-sparc
246QEMU is a generic and open source processor emulator which achieves a
247good emulation speed by using dynamic translation.
248
249This package provides the system emulator for sparc/sparc64.
250
72ddf007
PS
251%package system-unicore32
252Summary: QEMU system emulator for unicore32
253Group: Development/Tools
254Requires: %{name}-common = %{version}-%{release}
255
256%description system-unicore32
257QEMU is a generic and open source processor emulator which achieves a
258good emulation speed by using dynamic translation.
259
260This package provides the system emulator for unicore32.
261
fabf5a9c
ER
262%package system-x86
263Summary: QEMU system emulator for x86
264Group: Development/Tools
265Requires: %{name}-common = %{version}-%{release}
fabf5a9c
ER
266
267%description system-x86
268QEMU is a generic and open source processor emulator which achieves a
269good emulation speed by using dynamic translation.
270
271This package provides the system emulator for x86. When being run in a
272x86 machine that supports it, this package also provides the KVM
273virtualization platform.
274
275%package system-xtensa
276Summary: QEMU system emulator for xtensa
277Group: Development/Tools
278Requires: %{name}-common = %{version}-%{release}
279
280%description system-xtensa
281QEMU is a generic and open source processor emulator which achieves a
282good emulation speed by using dynamic translation.
283
284This package provides the system emulator for xtensa.
285
cd19124e 286%prep
c21a255a 287%setup -q
3c6e2290 288%patch0 -p1
d9002706 289%patch1 -p1
8d073aaa 290%{?with_nosdlgui:%patch6 -p1}
7b81d160 291#patch8 -p1
137653c3 292%patch17 -p0
0b920c52 293
bd30ad73
GP
294# workaround for conflict with alsa/error.h
295ln -s ../error.h qapi/error.h
296
80bac37e 297%build
8bd2aee2 298./configure \
3c6e2290
JR
299 --extra-cflags="%{rpmcflags} -I/usr/include/ncurses" \
300 --extra-ldflags="%{rpmldflags}" \
697b0ba8 301 --disable-strip \
7c0786d1 302 --sysconfdir=%{_sysconfdir} \
8bd2aee2 303 --prefix=%{_prefix} \
98a1a188
AM
304 --cc="%{__cc}" \
305 --host-cc="%{__cc}" \
b99b1652 306 --enable-mixemu \
98a1a188 307 --audio-drv-list="alsa" \
7b81d160 308 --interp-prefix=%{_libdir}/%{name}
b74098c4 309%{__make} V=1
cd19124e 310
d9002706
PS
311# rebuild patched vesa tables with additional widescreen modes.
312%{__make} -C roms/vgabios stdvga-bios
313
cd19124e 314%install
315rm -rf $RPM_BUILD_ROOT
5a2da1d0 316
cd19124e 317%{__make} install \
318 DESTDIR=$RPM_BUILD_ROOT
ac6e5743 319
a91fea76 320install -d $RPM_BUILD_ROOT%{_sysconfdir}
321cat <<'EOF' > $RPM_BUILD_ROOT%{_sysconfdir}/qemu-ifup
ac6e5743 322#!/bin/sh
a91fea76 323
ac6e5743 324EOF
a62a2d89 325
c33439fc
ER
326# already packaged
327rm -rf $RPM_BUILD_ROOT%{_docdir}/qemu/qemu-{doc,tech}.html
328
d9002706
PS
329# install patched vesa tables with additional widescreen modes.
330install -m 644 roms/vgabios/VGABIOS-lgpl-latest.stdvga.bin $RPM_BUILD_ROOT%{_datadir}/%{name}/vgabios-stdvga.bin
331
cd19124e 332%clean
333rm -rf $RPM_BUILD_ROOT
334
335%files
336%defattr(644,root,root,755)
fabf5a9c
ER
337
338%files common
339%defattr(644,root,root,755)
867764ba 340%doc README qemu-doc.html qemu-tech.html
a91fea76 341%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/qemu-ifup
fabf5a9c 342%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/qemu/target-*.conf
7c0786d1 343%dir %{_sysconfdir}/qemu
fabf5a9c 344%attr(755,root,root) %{_bindir}/qemu-nbd
cd19124e 345%{_mandir}/man1/qemu.1*
98a1a188 346%{_mandir}/man8/qemu-nbd.8*
fabf5a9c
ER
347
348%dir %{_datadir}/qemu
3d0e0752 349%{_datadir}/%{name}/cpus-*.conf
fabf5a9c
ER
350%{_datadir}/%{name}/keymaps
351# various bios images
352%{_datadir}/%{name}/*.bin
353%{_datadir}/%{name}/*.rom
354%{_datadir}/%{name}/*.dtb
355%{_datadir}/%{name}/openbios-ppc
356%{_datadir}/%{name}/openbios-sparc*
357%{_datadir}/%{name}/palcode-clipper
358
359%files img
360%defattr(644,root,root,755)
361%attr(755,root,root) %{_bindir}/qemu-img
362%{_mandir}/man1/qemu-img.1*
363
364%files user
365%defattr(644,root,root,755)
366%attr(755,root,root) %{_bindir}/qemu-x86_64
367%attr(755,root,root) %{_bindir}/qemu-i386
368%attr(755,root,root) %{_bindir}/qemu-alpha
369%attr(755,root,root) %{_bindir}/qemu-arm
370%attr(755,root,root) %{_bindir}/qemu-armeb
371%attr(755,root,root) %{_bindir}/qemu-cris
372%attr(755,root,root) %{_bindir}/qemu-ga
373%attr(755,root,root) %{_bindir}/qemu-io
374%attr(755,root,root) %{_bindir}/qemu-m68k
375%attr(755,root,root) %{_bindir}/qemu-microblaze
376%attr(755,root,root) %{_bindir}/qemu-microblazeel
377%attr(755,root,root) %{_bindir}/qemu-mips
378%attr(755,root,root) %{_bindir}/qemu-mipsel
379%attr(755,root,root) %{_bindir}/qemu-ppc
380%attr(755,root,root) %{_bindir}/qemu-ppc64
381%attr(755,root,root) %{_bindir}/qemu-ppc64abi32
382%attr(755,root,root) %{_bindir}/qemu-s390x
383%attr(755,root,root) %{_bindir}/qemu-sh4
384%attr(755,root,root) %{_bindir}/qemu-sh4eb
385%attr(755,root,root) %{_bindir}/qemu-sparc
386%attr(755,root,root) %{_bindir}/qemu-sparc32plus
387%attr(755,root,root) %{_bindir}/qemu-sparc64
388%attr(755,root,root) %{_bindir}/qemu-unicore32
389
390%files system-alpha
391%defattr(644,root,root,755)
392%attr(755,root,root) %{_bindir}/qemu-system-alpha
393
394%files system-arm
395%defattr(644,root,root,755)
396%attr(755,root,root) %{_bindir}/qemu-system-arm
397
398%files system-cris
399%defattr(644,root,root,755)
400%attr(755,root,root) %{_bindir}/qemu-system-cris
401
402%files system-lm32
403%defattr(644,root,root,755)
404%attr(755,root,root) %{_bindir}/qemu-system-lm32
405
406%files system-m68k
407%defattr(644,root,root,755)
408%attr(755,root,root) %{_bindir}/qemu-system-m68k
409
410%files system-microblaze
411%defattr(644,root,root,755)
412%attr(755,root,root) %{_bindir}/qemu-system-microblaze
413%attr(755,root,root) %{_bindir}/qemu-system-microblazeel
414
415%files system-mips
416%defattr(644,root,root,755)
417%attr(755,root,root) %{_bindir}/qemu-system-mips
418%attr(755,root,root) %{_bindir}/qemu-system-mipsel
419%attr(755,root,root) %{_bindir}/qemu-system-mips64
420%attr(755,root,root) %{_bindir}/qemu-system-mips64el
421
422%files system-ppc
423%defattr(644,root,root,755)
424%attr(755,root,root) %{_bindir}/qemu-system-ppc
425%attr(755,root,root) %{_bindir}/qemu-system-ppc64
426%attr(755,root,root) %{_bindir}/qemu-system-ppcemb
427
428%files system-s390x
429%defattr(644,root,root,755)
430%attr(755,root,root) %{_bindir}/qemu-system-s390x
431
432%files system-sh4
433%defattr(644,root,root,755)
434%attr(755,root,root) %{_bindir}/qemu-system-sh4
435%attr(755,root,root) %{_bindir}/qemu-system-sh4eb
436
437%files system-sparc
438%defattr(644,root,root,755)
439%attr(755,root,root) %{_bindir}/qemu-system-sparc
440%attr(755,root,root) %{_bindir}/qemu-system-sparc64
441
72ddf007
PS
442%files system-unicore32
443%defattr(644,root,root,755)
444%attr(755,root,root) %{_bindir}/qemu-system-unicore32
445
fabf5a9c
ER
446%files system-x86
447%defattr(644,root,root,755)
448%attr(755,root,root) %{_bindir}/qemu-system-i386
449%attr(755,root,root) %{_bindir}/qemu-system-x86_64
450
451%files system-xtensa
452%defattr(644,root,root,755)
453%attr(755,root,root) %{_bindir}/qemu-system-xtensa
454%attr(755,root,root) %{_bindir}/qemu-system-xtensaeb
This page took 0.114111 seconds and 4 git commands to generate.