]>
Commit | Line | Data |
---|---|---|
2daaede6 | 1 | ############################################################################### |
802ea3af MT |
2 | # IPFire.org - An Open Source Firewall Solution # |
3 | # Copyright (C) - IPFire Development Team <info@ipfire.org> # | |
2daaede6 BS |
4 | ############################################################################### |
5 | ||
f290a2f0 | 6 | name = qemu |
98a43020 | 7 | version = 8.1.0 |
e84f08d8 | 8 | release = 1 |
2daaede6 | 9 | |
802ea3af | 10 | groups = Applications/Virtualization |
5af97d9c | 11 | url = https://www.qemu.org |
802ea3af | 12 | license = GPLv2+ |
5af97d9c | 13 | summary = QEMU is a generic and open source machine emulator and virtualizer |
2daaede6 | 14 | |
802ea3af MT |
15 | description |
16 | QEMU is a processor emulator that relies on dynamic binary translation | |
17 | to achieve a reasonable speed while being easy to port on new host CPU | |
2daaede6 | 18 | architectures. |
802ea3af MT |
19 | end |
20 | ||
bd60a877 MT |
21 | source_dl = https://download.qemu.org/ |
22 | sources = %{thisapp}.tar.xz | |
802ea3af MT |
23 | |
24 | build | |
25 | requires | |
f290a2f0 AF |
26 | autoconf |
27 | automake | |
28 | bison | |
29 | bzip2-devel | |
5af97d9c | 30 | cairo-devel |
f290a2f0 | 31 | flex |
13c5aff0 | 32 | glib2-devel |
0b572234 | 33 | glibc-devel >= 2.36 |
f290a2f0 | 34 | gnutls-devel |
802ea3af | 35 | libcurl-devel |
f290a2f0 AF |
36 | libgcrypt-devel |
37 | libjpeg-devel | |
38 | libpng-devel | |
bd60a877 | 39 | libseccomp-devel |
f290a2f0 | 40 | libtasn1-devel |
5af97d9c | 41 | libudev-devel |
f290a2f0 | 42 | libusb-devel |
802ea3af | 43 | libuuid-devel |
f290a2f0 | 44 | lzo-devel |
5af97d9c MT |
45 | meson |
46 | ninja | |
802ea3af | 47 | ncurses-devel |
f290a2f0 | 48 | nettle-devel |
802ea3af | 49 | pciutils-devel |
f290a2f0 | 50 | pixman-devel |
5af97d9c | 51 | systemd-devel |
802ea3af | 52 | zlib-devel |
5af97d9c | 53 | zstd-devel |
802ea3af MT |
54 | end |
55 | ||
5af97d9c MT |
56 | targets = \ |
57 | aarch64-linux-user \ | |
58 | aarch64-softmmu \ | |
59 | riscv64-linux-user \ | |
60 | riscv64-softmmu \ | |
61 | x86_64-linux-user \ | |
62 | x86_64-softmmu | |
f290a2f0 | 63 | |
802ea3af | 64 | configure_options = \ |
f290a2f0 AF |
65 | --prefix=%{prefix} \ |
66 | --bindir=%{bindir} \ | |
67 | --sysconfdir=%{sysconfdir} \ | |
68 | --libdir=%{libdir} \ | |
69 | --libexecdir=%{libdir} \ | |
70 | --datadir=%{datadir} \ | |
71 | --mandir=%{mandir} \ | |
72 | --localstatedir=%{localstatedir} \ | |
802ea3af | 73 | --extra-cflags="%{CFLAGS}" \ |
f290a2f0 | 74 | --extra-ldflags="%{LDFLAGS}" \ |
802ea3af | 75 | --disable-strip \ |
f290a2f0 AF |
76 | --disable-werror \ |
77 | --target-list="%{targets}" \ | |
78 | --enable-bzip2 \ | |
79 | --enable-fdt \ | |
80 | --enable-kvm \ | |
81 | --enable-libusb \ | |
82 | --enable-lzo \ | |
5af97d9c | 83 | --enable-lto \ |
f290a2f0 | 84 | --enable-pie \ |
f290a2f0 AF |
85 | --enable-vnc \ |
86 | --enable-vnc-jpeg \ | |
5af97d9c | 87 | --enable-seccomp \ |
d6e9b7d0 | 88 | --disable-xen \ |
e84f08d8 | 89 | --disable-dbus-display \ |
d6e9b7d0 | 90 | --disable-sdl |
802ea3af | 91 | |
f290a2f0 | 92 | install_cmds |
a725c75b MT |
93 | # Remove ivshm stuff |
94 | rm -vf %{BUILDROOT}%{bindir}/ivshmem* %{BUILDROOT}%{mandir}/ivshmem* | |
802ea3af | 95 | |
68a22b29 SS |
96 | # Remove deprecated run directory. |
97 | rm -rvf %{BUILDROOT}/var/run | |
98 | ||
99 | # Remove firmware files for non supported platforms. | |
100 | rm -rvf %{BUILDROOT}%{datadir}/%{name}/hppa-firmware.img | |
101 | rm -rvf %{BUILDROOT}%{datadir}/%{name}/openbios-ppc | |
102 | rm -rvf %{BUILDROOT}%{datadir}/%{name}/openbios-sparc32 | |
103 | rm -rvf %{BUILDROOT}%{datadir}/%{name}/openbios-sparc64 | |
104 | rm -rvf %{BUILDROOT}%{datadir}/%{name}/palcode-clipper | |
105 | rm -rvf %{BUILDROOT}%{datadir}/%{name}/s390-ccw.img | |
106 | rm -rvf %{BUILDROOT}%{datadir}/%{name}/s390-netboot.img | |
107 | rm -rvf %{BUILDROOT}%{datadir}/%{name}/u-boot.e500 | |
108 | ||
5af97d9c MT |
109 | # Make firmware non-executable |
110 | find %{BUILDROOT}%{datadir}/%{name} -type f -executable | xargs chmod -v a-x | |
802ea3af MT |
111 | end |
112 | end | |
113 | ||
114 | packages | |
115 | package %{name} | |
a725c75b MT |
116 | # Always install the native package (for KVM) |
117 | requires | |
5af97d9c | 118 | qemu-%{DISTRO_ARCH} = %{thisver} |
a725c75b MT |
119 | end |
120 | ||
121 | recommends | |
122 | qemu-img = %{thisver} | |
123 | end | |
124 | end | |
125 | ||
126 | template QEMUARCH | |
127 | summary = QEMU for %{qemu_arch} | |
128 | description = %{summary} | |
129 | ||
130 | requires = %{name} = %{thisver} | |
131 | ||
132 | files | |
5af97d9c | 133 | %{bindir}/qemu-%{qemu_arch} |
a725c75b | 134 | %{bindir}/qemu-system-%{qemu_arch} |
5af97d9c | 135 | %{mandir}/man1/qemu-%{qemu_arch}.1* |
a725c75b MT |
136 | %{mandir}/man1/qemu-system-%{qemu_arch}.1* |
137 | end | |
138 | end | |
139 | ||
140 | package %{name}-aarch64 | |
141 | template QEMUARCH | |
142 | qemu_arch = aarch64 | |
143 | end | |
144 | ||
5af97d9c | 145 | package %{name}-riscv64 |
a725c75b | 146 | template QEMUARCH |
5af97d9c | 147 | qemu_arch = riscv64 |
a725c75b MT |
148 | end |
149 | ||
150 | package %{name}-x86_64 | |
151 | template QEMUARCH | |
152 | qemu_arch = x86_64 | |
153 | end | |
154 | ||
155 | package %{name}-img | |
156 | summary = QEMU command line tool for manipulating disk images | |
157 | description | |
158 | This package provides a command line tool for manipulating disk images | |
159 | end | |
160 | ||
161 | files | |
162 | %{bindir}/qemu-img | |
163 | %{bindir}/qemu-io | |
164 | %{bindir}/qemu-nbd | |
165 | %{mandir}/man1/qemu-img.1* | |
166 | %{mandir}/man8/qemu-nbd.8* | |
167 | end | |
168 | end | |
1f9bc2f0 | 169 | |
5af97d9c MT |
170 | package %{name}-devel |
171 | template DEVEL | |
172 | end | |
173 | ||
1f9bc2f0 MT |
174 | package %{name}-debuginfo |
175 | template DEBUGINFO | |
176 | end | |
802ea3af | 177 | end |