]>
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 |
5af97d9c | 7 | version = 7.2.0 |
68a22b29 | 8 | release = 3 |
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 SS |
88 | --disable-xen \ |
89 | --disable-sdl | |
802ea3af | 90 | |
f290a2f0 | 91 | install_cmds |
a725c75b MT |
92 | # Remove ivshm stuff |
93 | rm -vf %{BUILDROOT}%{bindir}/ivshmem* %{BUILDROOT}%{mandir}/ivshmem* | |
802ea3af | 94 | |
68a22b29 SS |
95 | # Remove deprecated run directory. |
96 | rm -rvf %{BUILDROOT}/var/run | |
97 | ||
98 | # Remove firmware files for non supported platforms. | |
99 | rm -rvf %{BUILDROOT}%{datadir}/%{name}/hppa-firmware.img | |
100 | rm -rvf %{BUILDROOT}%{datadir}/%{name}/openbios-ppc | |
101 | rm -rvf %{BUILDROOT}%{datadir}/%{name}/openbios-sparc32 | |
102 | rm -rvf %{BUILDROOT}%{datadir}/%{name}/openbios-sparc64 | |
103 | rm -rvf %{BUILDROOT}%{datadir}/%{name}/palcode-clipper | |
104 | rm -rvf %{BUILDROOT}%{datadir}/%{name}/s390-ccw.img | |
105 | rm -rvf %{BUILDROOT}%{datadir}/%{name}/s390-netboot.img | |
106 | rm -rvf %{BUILDROOT}%{datadir}/%{name}/u-boot.e500 | |
107 | ||
5af97d9c MT |
108 | # Make firmware non-executable |
109 | find %{BUILDROOT}%{datadir}/%{name} -type f -executable | xargs chmod -v a-x | |
802ea3af MT |
110 | end |
111 | end | |
112 | ||
113 | packages | |
114 | package %{name} | |
a725c75b MT |
115 | # Always install the native package (for KVM) |
116 | requires | |
5af97d9c | 117 | qemu-%{DISTRO_ARCH} = %{thisver} |
a725c75b MT |
118 | end |
119 | ||
120 | recommends | |
121 | qemu-img = %{thisver} | |
122 | end | |
123 | end | |
124 | ||
125 | template QEMUARCH | |
126 | summary = QEMU for %{qemu_arch} | |
127 | description = %{summary} | |
128 | ||
129 | requires = %{name} = %{thisver} | |
130 | ||
131 | files | |
5af97d9c | 132 | %{bindir}/qemu-%{qemu_arch} |
a725c75b | 133 | %{bindir}/qemu-system-%{qemu_arch} |
5af97d9c | 134 | %{mandir}/man1/qemu-%{qemu_arch}.1* |
a725c75b MT |
135 | %{mandir}/man1/qemu-system-%{qemu_arch}.1* |
136 | end | |
137 | end | |
138 | ||
139 | package %{name}-aarch64 | |
140 | template QEMUARCH | |
141 | qemu_arch = aarch64 | |
142 | end | |
143 | ||
5af97d9c | 144 | package %{name}-riscv64 |
a725c75b | 145 | template QEMUARCH |
5af97d9c | 146 | qemu_arch = riscv64 |
a725c75b MT |
147 | end |
148 | ||
149 | package %{name}-x86_64 | |
150 | template QEMUARCH | |
151 | qemu_arch = x86_64 | |
152 | end | |
153 | ||
154 | package %{name}-img | |
155 | summary = QEMU command line tool for manipulating disk images | |
156 | description | |
157 | This package provides a command line tool for manipulating disk images | |
158 | end | |
159 | ||
160 | files | |
161 | %{bindir}/qemu-img | |
162 | %{bindir}/qemu-io | |
163 | %{bindir}/qemu-nbd | |
164 | %{mandir}/man1/qemu-img.1* | |
165 | %{mandir}/man8/qemu-nbd.8* | |
166 | end | |
167 | end | |
1f9bc2f0 | 168 | |
5af97d9c MT |
169 | package %{name}-devel |
170 | template DEVEL | |
171 | end | |
172 | ||
1f9bc2f0 MT |
173 | package %{name}-debuginfo |
174 | template DEBUGINFO | |
175 | end | |
802ea3af | 176 | end |