3 # - qemu-system-ppc -hda ac-ppc.img says:
4 # qemu: could not open disk image ac-ppc.img: error "Success"
5 # qemu-0.12.2-2.x86_64.rpm - broken
6 # qemu-0.12.3-3.x86_64/qemu-0.12.4-1.x86_64 - stops on "returning from prom_init"
7 # qemu-0.15.0-2.x86_64.rpm - qemu-system-sparc/ppc booting with -kernel, -initrd options stalls in openbios prompt
8 # qemu-0.11.1-*.x86_64.rpm - OK
11 %bcond_with nosdlgui # do not use SDL gui (use X11 instead)
13 Summary: QEMU CPU Emulator
14 Summary(pl.UTF-8): QEMU - emulator procesora
19 Group: Applications/Emulators
20 Source0: http://wiki.qemu.org/download/%{name}-%{version}.tar.bz2
21 # Source0-md5: 78eb1e984f4532aa9f2bdd3c127b5b61
22 Patch0: %{name}-cflags.patch
23 Patch1: vgabios-widescreens.patch
24 Patch6: %{name}-nosdlgui.patch
25 # Proof of concept, for reference, do not remove
26 Patch8: %{name}-kde_virtual_workspaces_hack.patch
27 Patch17: %{name}-whitelist.patch
28 URL: http://wiki.qemu.org/Index.html
29 BuildRequires: SDL-devel >= 1.2.1
30 BuildRequires: alsa-lib-devel
31 BuildRequires: bluez-libs-devel
32 BuildRequires: gnutls-devel
33 BuildRequires: ncurses-devel
34 BuildRequires: perl-Encode
35 BuildRequires: perl-tools-pod
36 BuildRequires: pkgconfig
37 BuildRequires: sed >= 4.0
38 BuildRequires: texi2html
39 BuildRequires: texinfo
41 BuildRequires: xen-devel
42 BuildRequires: xorg-lib-libX11-devel
43 Requires: %{name}-img = %{version}-%{release}
44 Requires: %{name}-system-alpha = %{version}-%{release}
45 Requires: %{name}-system-arm = %{version}-%{release}
46 Requires: %{name}-system-cris = %{version}-%{release}
47 Requires: %{name}-system-lm32 = %{version}-%{release}
48 Requires: %{name}-system-m68k = %{version}-%{release}
49 Requires: %{name}-system-microblaze = %{version}-%{release}
50 Requires: %{name}-system-mips = %{version}-%{release}
51 Requires: %{name}-system-ppc = %{version}-%{release}
52 Requires: %{name}-system-or32 = %{version}-%{release}
53 Requires: %{name}-system-s390x = %{version}-%{release}
54 Requires: %{name}-system-sh4 = %{version}-%{release}
55 Requires: %{name}-system-sparc = %{version}-%{release}
56 Requires: %{name}-system-unicore32 = %{version}-%{release}
57 Requires: %{name}-system-x86 = %{version}-%{release}
58 Requires: %{name}-system-xtensa = %{version}-%{release}
59 Requires: %{name}-user = %{version}-%{release}
60 # sparc is currently unsupported (missing cpu_get_real_ticks() impl in vl.c)
61 ExclusiveArch: %{ix86} %{x8664} %{?with_userspace:ppc}
62 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
64 # some PPC/SPARC boot image in ELF format
65 %define _noautostrip .*%{_datadir}/qemu/.*-.*
68 QEMU is a FAST! processor emulator. By using dynamic translation it
69 achieves a reasonnable speed while being easy to port on new host
70 CPUs. QEMU has two operating modes:
72 - User mode emulation. In this mode, QEMU can launch Linux processes
73 compiled for one CPU on another CPU. Linux system calls are converted
74 because of endianness and 32/64 bit mismatches. Wine (Windows
75 emulation) and DOSEMU (DOS emulation) are the main targets for QEMU.
77 - Full system emulation. In this mode, QEMU emulates a full system,
78 including a processor and various peripherials. It can also be used to
79 provide virtual hosting of several virtual PC on a single server.
81 %description -l pl.UTF-8
82 QEMU to szybki(!) emulator procesora. Poprzez użycie dynamicznego
83 tłumaczenia osiąga rozsądną szybkość i jest łatwy do przeportowania,
84 aby działał na kolejnych procesorach. QEMU ma dwa tryby pracy:
86 - Emulacja trybu użytkownika. W tym trybie QEMU może uruchamiać
87 procesy linuksowe skompilowane dla jednego procesora na innym
88 procesorze. Linuksowe wywołania systemowe są tłumaczone ze względu na
89 niezgodność kolejności bajtów w słowie i 32/64-bitowego rozmiaru
90 słowa. Wine (emulacja Windows) i DOSEMU (emulacja DOS-a) to główne
93 - Pełna emulacja systemu. W tym trybie QEMU emuluje cały system,
94 włączając w to procesor i różne urządzenia peryferyjne. Może być także
95 używane do wirtualnego hostowania kilku wirtualnych pecetów na
99 Summary: QEMU common files needed by all QEMU targets
100 Summary(pl.UTF-8): Wspólne pliki QEMU wymagane przez wszystkie środowiska QEMU
101 Group: Development/Tools
102 Requires: SDL >= 1.2.1
103 Conflicts: qemu < 1.0-2
106 QEMU is a generic and open source processor emulator which achieves a
107 good emulation speed by using dynamic translation.
109 This package provides the common files needed by all QEMU targets.
111 %description common -l pl.UTF-8
112 QEMU to ogólny, mający otwarte źródła emulator procesora, osiągający
113 dobrą szybkość emulacji dzięki użyciu translacji dynamicznej.
115 Ten pakiet udostępnia wspólne pliki wymagane przez wszystkie
119 Summary: QEMU command line tool for manipulating disk images
120 Summary(pl.UTF-8): Narzędzie QEMU do operacji na obrazach dysków
121 Group: Development/Tools
122 Conflicts: qemu < 1.0-2
125 This package provides a command line tool for manipulating disk
128 %description img -l pl.UTF-8
129 Ten pakiet udostępnia działające z linii poleceń narzędzia do operacji
133 Summary: QEMU user mode emulation of qemu targets
134 Summary(pl.UTF-8): QEMU - emulacja trybu użytkownika środowisk qemu
135 Group: Development/Tools
136 Requires: %{name}-common = %{version}-%{release}
139 QEMU is a generic and open source processor emulator which achieves a
140 good emulation speed by using dynamic translation.
142 This package provides the user mode emulation of QEMU targets.
144 %description user -l pl.UTF-8
145 QEMU to ogólny, mający otwarte źródła emulator procesora, osiągający
146 dobrą szybkość emulacji dzięki użyciu translacji dynamicznej.
148 Ten pakiet udostępnia emulację trybu użytkownika środowisk QEMU.
150 %package system-alpha
151 Summary: QEMU system emulator for Alpha
152 Summary(pl.UTF-8): QEMU - emulator systemu z procesorem Alpha
153 Group: Development/Tools
154 Requires: %{name}-common = %{version}-%{release}
156 %description system-alpha
157 QEMU is a generic and open source processor emulator which achieves a
158 good emulation speed by using dynamic translation.
160 This package provides the system emulator with Alpha CPU.
162 %description system-alpha -l pl.UTF-8
163 QEMU to ogólny, mający otwarte źródła emulator procesora, osiągający
164 dobrą szybkość emulacji dzięki użyciu translacji dynamicznej.
166 Ten pakiet zawiera emulator systemu z procesorem Alpha.
169 Summary: QEMU system emulator for ARM
170 Summary(pl.UTF-8): QEMU - emulator systemu z procesorem ARM
171 Group: Development/Tools
172 Requires: %{name}-common = %{version}-%{release}
174 %description system-arm
175 QEMU is a generic and open source processor emulator which achieves a
176 good emulation speed by using dynamic translation.
178 This package provides the system emulator for ARM.
180 %description system-arm -l pl.UTF-8
181 QEMU to ogólny, mający otwarte źródła emulator procesora, osiągający
182 dobrą szybkość emulacji dzięki użyciu translacji dynamicznej.
184 Ten pakiet zawiera emulator systemu z procesorem ARM.
187 Summary: QEMU system emulator for cris
188 Summary(pl.UTF-8): QEMU - emulator systemu z procesorem CRIS
189 Group: Development/Tools
190 Requires: %{name}-common = %{version}-%{release}
192 %description system-cris
193 QEMU is a generic and open source processor emulator which achieves a
194 good emulation speed by using dynamic translation.
196 This package provides the system emulator with CRIS CPU.
198 %description system-cris -l pl.UTF-8
199 QEMU to ogólny, mający otwarte źródła emulator procesora, osiągający
200 dobrą szybkość emulacji dzięki użyciu translacji dynamicznej.
202 Ten pakiet zawiera emulator systemu z procesorem CRIS.
205 Summary: QEMU system emulator for LM32
206 Summary(pl.UTF-8): QEMU - emulator systemu z procesorem LM32
207 Group: Development/Tools
208 Requires: %{name}-common = %{version}-%{release}
210 %description system-lm32
211 QEMU is a generic and open source processor emulator which achieves a
212 good emulation speed by using dynamic translation.
214 This package provides the system emulator with LM32 CPU.
216 %description system-lm32 -l pl.UTF-8
217 QEMU to ogólny, mający otwarte źródła emulator procesora, osiągający
218 dobrą szybkość emulacji dzięki użyciu translacji dynamicznej.
220 Ten pakiet zawiera emulator systemu z procesorem LM32.
223 Summary: QEMU system emulator for m68k
224 Summary(pl.UTF-8): QEMU - emulator systemu z procesorem m68k
225 Group: Development/Tools
226 Requires: %{name}-common = %{version}-%{release}
228 %description system-m68k
229 QEMU is a generic and open source processor emulator which achieves a
230 good emulation speed by using dynamic translation.
232 This package provides the system emulator with m68k CPU.
234 %description system-m68k -l pl.UTF-8
235 QEMU to ogólny, mający otwarte źródła emulator procesora, osiągający
236 dobrą szybkość emulacji dzięki użyciu translacji dynamicznej.
238 Ten pakiet zawiera emulator systemu z procesorem m68k.
240 %package system-microblaze
241 Summary: QEMU system emulator for MicroBlaze
242 Summary(pl.UTF-8): QEMU - emulator systemu z procesorem MicroBlaze
243 Group: Development/Tools
244 Requires: %{name}-common = %{version}-%{release}
246 %description system-microblaze
247 QEMU is a generic and open source processor emulator which achieves a
248 good emulation speed by using dynamic translation.
250 This package provides the system emulator with MicroBlaze CPU.
252 %description system-microblaze -l pl.UTF-8
253 QEMU to ogólny, mający otwarte źródła emulator procesora, osiągający
254 dobrą szybkość emulacji dzięki użyciu translacji dynamicznej.
256 Ten pakiet zawiera emulator systemu z procesorem MicroBlaze.
259 Summary: QEMU system emulator for MIPS
260 Summary(pl.UTF-8): QEMU - emulator systemu z procesorem MIPS
261 Group: Development/Tools
262 Requires: %{name}-common = %{version}-%{release}
264 %description system-mips
265 QEMU is a generic and open source processor emulator which achieves a
266 good emulation speed by using dynamic translation.
268 This package provides the system emulator with MIPS CPU.
270 %description system-mips -l pl.UTF-8
271 QEMU to ogólny, mający otwarte źródła emulator procesora, osiągający
272 dobrą szybkość emulacji dzięki użyciu translacji dynamicznej.
274 Ten pakiet zawiera emulator systemu z procesorem MIPS.
277 Summary: QEMU system emulator for OpenRISC
278 Summary(pl.UTF-8): QEMU - emulator systemu z procesorem OpenRISC
279 Group: Development/Tools
280 Requires: %{name}-common = %{version}-%{release}
282 %description system-or32
283 QEMU is a generic and open source processor emulator which achieves a
284 good emulation speed by using dynamic translation.
286 This package provides the system emulator with OpenRISC CPU.
288 %description system-or32 -l pl.UTF-8
289 QEMU to ogólny, mający otwarte źródła emulator procesora, osiągający
290 dobrą szybkość emulacji dzięki użyciu translacji dynamicznej.
292 Ten pakiet zawiera emulator systemu z procesorem OpenRISC.
295 Summary: QEMU system emulator for PowerPC
296 Summary(pl.UTF-8): QEMU - emulator systemu z procesorem PowerPC
297 Group: Development/Tools
298 Requires: %{name}-common = %{version}-%{release}
300 %description system-ppc
301 QEMU is a generic and open source processor emulator which achieves a
302 good emulation speed by using dynamic translation.
304 This package provides the system emulator with PowerPC CPU.
306 %description system-ppc -l pl.UTF-8
307 QEMU to ogólny, mający otwarte źródła emulator procesora, osiągający
308 dobrą szybkość emulacji dzięki użyciu translacji dynamicznej.
310 Ten pakiet zawiera emulator systemu z procesorem PowerPC.
312 %package system-s390x
313 Summary: QEMU system emulator for S390
314 Summary(pl.UTF-8): QEMU - emulator systemu z procesorem S390
315 Group: Development/Tools
316 Requires: %{name}-common = %{version}-%{release}
318 %description system-s390x
319 QEMU is a generic and open source processor emulator which achieves a
320 good emulation speed by using dynamic translation.
322 This package provides the system emulator with S390 CPU.
324 %description system-s390x -l pl.UTF-8
325 QEMU to ogólny, mający otwarte źródła emulator procesora, osiągający
326 dobrą szybkość emulacji dzięki użyciu translacji dynamicznej.
328 Ten pakiet zawiera emulator systemu z procesorem S390.
331 Summary: QEMU system emulator for SH4
332 Summary(pl.UTF-8): QEMU - emulator systemu z procesorem SH4
333 Group: Development/Tools
334 Requires: %{name}-common = %{version}-%{release}
336 %description system-sh4
337 QEMU is a generic and open source processor emulator which achieves a
338 good emulation speed by using dynamic translation.
340 This package provides the system emulator with SH4 CPU.
342 %description system-sh4 -l pl.UTF-8
343 QEMU to ogólny, mający otwarte źródła emulator procesora, osiągający
344 dobrą szybkość emulacji dzięki użyciu translacji dynamicznej.
346 Ten pakiet zawiera emulator systemu z procesorem SH4.
348 %package system-sparc
349 Summary: QEMU system emulator for SPARC
350 Summary(pl.UTF-8): QEMU - emulator systemu z procesorem SPARC
351 Group: Development/Tools
352 Requires: %{name}-common = %{version}-%{release}
354 %description system-sparc
355 QEMU is a generic and open source processor emulator which achieves a
356 good emulation speed by using dynamic translation.
358 This package provides the system emulator with SPARC/SPARC64 CPU.
360 %description system-sparc -l pl.UTF-8
361 QEMU to ogólny, mający otwarte źródła emulator procesora, osiągający
362 dobrą szybkość emulacji dzięki użyciu translacji dynamicznej.
364 Ten pakiet zawiera emulator systemu z procesorem SPARC/SPARC64.
366 %package system-unicore32
367 Summary: QEMU system emulator for UniCore32
368 Summary(pl.UTF-8): QEMU - emulator systemu z procesorem UniCore32
369 Group: Development/Tools
370 Requires: %{name}-common = %{version}-%{release}
372 %description system-unicore32
373 QEMU is a generic and open source processor emulator which achieves a
374 good emulation speed by using dynamic translation.
376 This package provides the system emulator with UniCore32 CPU.
378 %description system-unicore32 -l pl.UTF-8
379 QEMU to ogólny, mający otwarte źródła emulator procesora, osiągający
380 dobrą szybkość emulacji dzięki użyciu translacji dynamicznej.
382 Ten pakiet zawiera emulator systemu z procesorem UniCore32.
385 Summary: QEMU system emulator for x86
386 Summary(pl.UTF-8): QEMU - emulator systemu z procesorem x86
387 Group: Development/Tools
388 Requires: %{name}-common = %{version}-%{release}
390 %description system-x86
391 QEMU is a generic and open source processor emulator which achieves a
392 good emulation speed by using dynamic translation.
394 This package provides the system emulator with x86 CPU. When being run
395 in a x86 machine that supports it, this package also provides the KVM
396 virtualization platform.
398 %description system-x86 -l pl.UTF-8
399 QEMU to ogólny, mający otwarte źródła emulator procesora, osiągający
400 dobrą szybkość emulacji dzięki użyciu translacji dynamicznej.
402 Ten pakiet zawiera emulator systemu z procesorem x86. W przypadku
403 uruchomienia na maszynie x86 pozwalającej na to, ten pakiet udostępnia
404 także platformę wirtualizacji KVM.
406 %package system-xtensa
407 Summary: QEMU system emulator for Xtensa
408 Summary(pl.UTF-8): QEMU - emulator systemu z procesorem Xtensa
409 Group: Development/Tools
410 Requires: %{name}-common = %{version}-%{release}
412 %description system-xtensa
413 QEMU is a generic and open source processor emulator which achieves a
414 good emulation speed by using dynamic translation.
416 This package provides the system emulator with Xtensa CPU.
418 %description system-xtensa -l pl.UTF-8
419 QEMU to ogólny, mający otwarte źródła emulator procesora, osiągający
420 dobrą szybkość emulacji dzięki użyciu translacji dynamicznej.
422 Ten pakiet zawiera emulator systemu z procesorem Xtensa.
428 %{?with_nosdlgui:%patch6 -p1}
432 # workaround for conflict with alsa/error.h
433 ln -s ../error.h qapi/error.h
437 --extra-cflags="%{rpmcflags} -I/usr/include/ncurses" \
438 --extra-ldflags="%{rpmldflags}" \
439 --sysconfdir=%{_sysconfdir} \
440 --prefix=%{_prefix} \
442 --host-cc="%{__cc}" \
445 --audio-drv-list="alsa" \
446 --interp-prefix=%{_libdir}/%{name}
447 # note: CONFIG_QEMU_HELPERDIR is used when compiling, libexecdir when installing;
448 # --libexecdir in configure is nop
451 CONFIG_QEMU_HELPERDIR="%{_libdir}"
453 # rebuild patched vesa tables with additional widescreen modes.
454 %{__make} -C roms/vgabios stdvga-bios
457 rm -rf $RPM_BUILD_ROOT
460 DESTDIR=$RPM_BUILD_ROOT \
461 libexecdir=%{_libdir}
463 install -d $RPM_BUILD_ROOT%{_sysconfdir}
464 cat <<'EOF' > $RPM_BUILD_ROOT%{_sysconfdir}/qemu-ifup
470 %{__rm} $RPM_BUILD_ROOT%{_docdir}/qemu/qemu-{doc,tech}.html
471 %{__rm} $RPM_BUILD_ROOT%{_docdir}/qemu/qmp-commands.txt
473 # install patched vesa tables with additional widescreen modes.
474 install -m 644 roms/vgabios/VGABIOS-lgpl-latest.stdvga.bin $RPM_BUILD_ROOT%{_datadir}/%{name}/vgabios-stdvga.bin
477 rm -rf $RPM_BUILD_ROOT
480 %defattr(644,root,root,755)
483 %defattr(644,root,root,755)
484 %doc README qemu-doc.html qemu-tech.html QMP/qmp-commands.txt
485 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/qemu-ifup
486 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/qemu/target-*.conf
487 %dir %{_sysconfdir}/qemu
488 %attr(755,root,root) %{_bindir}/virtfs-proxy-helper
489 %attr(755,root,root) %{_bindir}/vscclient
490 %attr(755,root,root) %{_bindir}/qemu-nbd
491 %attr(755,root,root) %{_libdir}/qemu-bridge-helper
492 %{_mandir}/man1/qemu.1*
493 %{_mandir}/man1/virtfs-proxy-helper.1*
494 %{_mandir}/man8/qemu-nbd.8*
496 %dir %{_datadir}/qemu
497 %{_datadir}/%{name}/cpus-*.conf
498 %{_datadir}/%{name}/keymaps
499 %{_datadir}/%{name}/qemu-icon.bmp
500 # various bios images
501 %{_datadir}/%{name}/*.bin
502 %{_datadir}/%{name}/*.rom
503 %{_datadir}/%{name}/*.dtb
504 %{_datadir}/%{name}/openbios-ppc
505 %{_datadir}/%{name}/openbios-sparc*
506 %{_datadir}/%{name}/palcode-clipper
509 %defattr(644,root,root,755)
510 %attr(755,root,root) %{_bindir}/qemu-img
511 %{_mandir}/man1/qemu-img.1*
514 %defattr(644,root,root,755)
515 %attr(755,root,root) %{_bindir}/qemu-x86_64
516 %attr(755,root,root) %{_bindir}/qemu-i386
517 %attr(755,root,root) %{_bindir}/qemu-alpha
518 %attr(755,root,root) %{_bindir}/qemu-arm
519 %attr(755,root,root) %{_bindir}/qemu-armeb
520 %attr(755,root,root) %{_bindir}/qemu-cris
521 %attr(755,root,root) %{_bindir}/qemu-ga
522 %attr(755,root,root) %{_bindir}/qemu-io
523 %attr(755,root,root) %{_bindir}/qemu-m68k
524 %attr(755,root,root) %{_bindir}/qemu-microblaze
525 %attr(755,root,root) %{_bindir}/qemu-microblazeel
526 %attr(755,root,root) %{_bindir}/qemu-mips
527 %attr(755,root,root) %{_bindir}/qemu-mipsel
528 %attr(755,root,root) %{_bindir}/qemu-or32
529 %attr(755,root,root) %{_bindir}/qemu-ppc
530 %attr(755,root,root) %{_bindir}/qemu-ppc64
531 %attr(755,root,root) %{_bindir}/qemu-ppc64abi32
532 %attr(755,root,root) %{_bindir}/qemu-s390x
533 %attr(755,root,root) %{_bindir}/qemu-sh4
534 %attr(755,root,root) %{_bindir}/qemu-sh4eb
535 %attr(755,root,root) %{_bindir}/qemu-sparc
536 %attr(755,root,root) %{_bindir}/qemu-sparc32plus
537 %attr(755,root,root) %{_bindir}/qemu-sparc64
538 %attr(755,root,root) %{_bindir}/qemu-unicore32
541 %defattr(644,root,root,755)
542 %attr(755,root,root) %{_bindir}/qemu-system-alpha
545 %defattr(644,root,root,755)
546 %attr(755,root,root) %{_bindir}/qemu-system-arm
549 %defattr(644,root,root,755)
550 %attr(755,root,root) %{_bindir}/qemu-system-cris
553 %defattr(644,root,root,755)
554 %attr(755,root,root) %{_bindir}/qemu-system-lm32
557 %defattr(644,root,root,755)
558 %attr(755,root,root) %{_bindir}/qemu-system-m68k
560 %files system-microblaze
561 %defattr(644,root,root,755)
562 %attr(755,root,root) %{_bindir}/qemu-system-microblaze
563 %attr(755,root,root) %{_bindir}/qemu-system-microblazeel
566 %defattr(644,root,root,755)
567 %attr(755,root,root) %{_bindir}/qemu-system-mips
568 %attr(755,root,root) %{_bindir}/qemu-system-mipsel
569 %attr(755,root,root) %{_bindir}/qemu-system-mips64
570 %attr(755,root,root) %{_bindir}/qemu-system-mips64el
573 %defattr(644,root,root,755)
574 %attr(755,root,root) %{_bindir}/qemu-system-or32
577 %defattr(644,root,root,755)
578 %attr(755,root,root) %{_bindir}/qemu-system-ppc
579 %attr(755,root,root) %{_bindir}/qemu-system-ppc64
580 %attr(755,root,root) %{_bindir}/qemu-system-ppcemb
583 %defattr(644,root,root,755)
584 %attr(755,root,root) %{_bindir}/qemu-system-s390x
587 %defattr(644,root,root,755)
588 %attr(755,root,root) %{_bindir}/qemu-system-sh4
589 %attr(755,root,root) %{_bindir}/qemu-system-sh4eb
592 %defattr(644,root,root,755)
593 %attr(755,root,root) %{_bindir}/qemu-system-sparc
594 %attr(755,root,root) %{_bindir}/qemu-system-sparc64
596 %files system-unicore32
597 %defattr(644,root,root,755)
598 %attr(755,root,root) %{_bindir}/qemu-system-unicore32
601 %defattr(644,root,root,755)
602 %attr(755,root,root) %{_bindir}/qemu-system-i386
603 %attr(755,root,root) %{_bindir}/qemu-system-x86_64
606 %defattr(644,root,root,755)
607 %attr(755,root,root) %{_bindir}/qemu-system-xtensa
608 %attr(755,root,root) %{_bindir}/qemu-system-xtensaeb