Compare commits

..

5 Commits

2 changed files with 37 additions and 150 deletions

View File

@ -1,115 +0,0 @@
#!/bin/sh
#
# Init file for configuring Qemu non-native binary formats
#
# Written by Dag Wieers <dag@wieers.com>
#
# chkconfig: 2345 35 98
# description: Qemu non-native binary formats
. /etc/rc.d/init.d/functions
RETVAL=0
prog="qemu"
start() {
cpu="$(uname -m)"
case "$cpu" in
i386|i486|i586|i686|i86pc|BePC)
cpu="i386";;
"Power Macintosh"|ppc|ppc64)
cpu="ppc";;
armv4l|armv5l)
cpu="arm";;
esac
echo -n $"Registering non-native binary handler for Qemu"
( /sbin/modprobe binfmt_misc &&
mount -t binfmt_misc none /proc/sys/fs/binfmt_misc ) &>/dev/null
if [ "$cpu" != "i386" -a "$cpu" != "x86_64" ]; then
echo ':i386:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x03\x00:\xff\xff\xff\xff\xff\xfe\xfe\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfb\xff\xff\xff:/usr/bin/qemu-i386:' >/proc/sys/fs/binfmt_misc/register
echo ':i486:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x06\x00:\xff\xff\xff\xff\xff\xfe\xfe\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfb\xff\xff\xff:/usr/bin/qemu-i386:' >/proc/sys/fs/binfmt_misc/register
fi
if [ "$cpu" != "x86_64" ]; then
echo ':x86_64:M::\x7fELF\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x3e\x00:\xff\xff\xff\xff\xff\xfe\xfe\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfb\xff\xff\xff:/usr/bin/qemu-x86_64:' >/proc/sys/fs/binfmt_misc/register
fi
if [ "$cpu" != "arm" ]; then
echo ':arm:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x28\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-arm:' >/proc/sys/fs/binfmt_misc/register
echo ':armeb:M::\x7fELF\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x28:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-armeb:' > /proc/sys/fs/binfmt_misc/register
fi
if [ "$cpu" != "ppc" ]; then
echo ':ppc:M::\x7fELF\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x14:\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfb\xff\xff\xff:/usr/bin/qemu-ppc:' >/proc/sys/fs/binfmt_misc/register
fi
if [ "$cpu" != "sparc" ]; then
echo ':sparc:M::\x7fELF\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x02:\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfb\xff\xff\xff:$QEMU/qemu-sparc:' >/proc/sys/fs/binfmt_misc/register
fi
if [ $cpu != "m68k" ] ; then
# echo 'Please check cpu value and header information for m68k!'
echo ':m68k:M::\x7fELF\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x04:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-m68k:' > /proc/sys/fs/binfmt_misc/register
fi
if [ $cpu != "mips" ] ; then
# FIXME: We could use the other endianness on a MIPS host.
echo ':mips:M::\x7fELF\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x08:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-mips:' > /proc/sys/fs/binfmt_misc/register
echo ':mipsel:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x08\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-mipsel:' > /proc/sys/fs/binfmt_misc/register
echo ':mipsn32:M::\x7fELF\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x08:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-mipsn32:' > /proc/sys/fs/binfmt_misc/register
echo ':mipsn32el:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x08\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-mipsn32el:' > /proc/sys/fs/binfmt_misc/register
echo ':mips64:M::\x7fELF\x02\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x08:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-mips64:' > /proc/sys/fs/binfmt_misc/register
echo ':mips64el:M::\x7fELF\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x08\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-mips64el:' > /proc/sys/fs/binfmt_misc/register
fi
echo_success
echo
}
stop() {
echo -n $"Unregistering non-native binary handler for Qemu"
for cpu in i386 i486 x86_64 ppc arm armeb sparc m68k mips mipsel mipsn32 mipsn32el mips64 mips64el; do
if [ -r "/proc/sys/fs/binfmt_misc/qemu-$cpu" ]; then
echo "-1" >/proc/sys/fs/binfmt_misc/qemu-$cpu
fi
if [ -r "/proc/sys/fs/binfmt_misc/$cpu" ]; then
echo "-1" >/proc/sys/fs/binfmt_misc/$cpu
fi
done
echo_success
echo
}
restart() {
stop
start
}
status() {
if ls /proc/sys/fs/binfmt_misc/qemu-* &>/dev/null; then
echo $"Qemu non-native binary format handlers registered."
return 0
else
echo $"Qemu non-native binary format handlers not registered."
return 1
fi
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart|reload)
restart
;;
condrestart)
if status &>/dev/null; then
restart
fi
;;
status)
status
RETVAL=$?
;;
*)
echo $"Usage: $prog {start|stop|restart|condrestart|status}"
RETVAL=1
esac
exit $RETVAL

View File

@ -1,5 +1,5 @@
Name: qemu
Version: 8.2.0
Version: 9.0.0
Release: 1mamba
Summary: A generic and open source processor emulator
Group: Applications/Emulators
@ -8,8 +8,6 @@ Distribution: openmamba
Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
URL: https://www.qemu.org/
Source: https://download.qemu.org/qemu-%{version}.tar.xz
#Source: http://wiki.qemu.org/download/qemu-%{version}.tar.bz2
Source1: %{name}-initscript
Source2: qemu-guest-agent.service
Source3: 99-qemu-guest-agent.rules
Source4: qemu-ga-sysconfig
@ -35,35 +33,41 @@ BuildRequires: libcacard-devel
BuildRequires: libcairo-devel
BuildRequires: libcap-ng-devel
BuildRequires: libcurl-devel
BuildRequires: libdw-devel
BuildRequires: libepoxy-devel
BuildRequires: libfdt-devel
BuildRequires: libfuse3-devel
BuildRequires: libgcc
BuildRequires: libgdk-pixbuf-devel
BuildRequires: libglib-devel
BuildRequires: libgnutls-devel
BuildRequires: libgtk3-devel
BuildRequires: libjack-devel
BuildRequires: libjpeg-devel
BuildRequires: libkeyutils-devel
BuildRequires: liblzo-devel
BuildRequires: libmesa-devel
BuildRequires: libmultipath-tools-devel
BuildRequires: libncurses-devel
BuildRequires: libndctl-devel
BuildRequires: libnettle-devel
BuildRequires: libnfs-devel
BuildRequires: libnuma-devel
BuildRequires: libpam-devel
BuildRequires: libpipewire-devel
BuildRequires: libpixman-devel
BuildRequires: libpng-devel
BuildRequires: libpulseaudio-devel
BuildRequires: libsasl2-devel
BuildRequires: libsdl2_image-devel
BuildRequires: libseccomp-devel
BuildRequires: libselinux-devel
BuildRequires: libsnappy-devel
BuildRequires: libsndio-devel
BuildRequires: libspice-devel
BuildRequires: libssh-devel
BuildRequires: libstdc++6-devel
BuildRequires: libudev-devel
BuildRequires: libusb-devel
BuildRequires: libusbredir-devel
BuildRequires: libvirglrenderer-devel
BuildRequires: libvte-devel
%ifarch x86_64 %{ix86}
BuildRequires: libxen-devel
@ -72,19 +76,18 @@ BuildRequires: libxkbcommon-devel
BuildRequires: libz-devel
BuildRequires: libzstd-devel
## AUTOBUILDREQ-END
BuildRequires: python-sphinx_rtd_theme-py3
BuildRequires: python-sphinxcontrib-jquery-py3
BuildRequires: libmultipath-tools-devel >= 0.9.1
%ifarch x86_64 %{ix86}
BuildRequires: libxen-devel >= 4.18.0-1mamba
%endif
BuildRequires: libadplug-devel >= 1.5.1
BuildRequires: libbrltty-devel >= 6.1
BuildRequires: libfdt-devel
BuildRequires: libglib-static >= 2.34.1-2mamba
BuildRequires: spice-protocol-devel
#BuildRequires: libcelt051-devel
BuildRequires: libmultipath-tools-devel >= 0.9.1
BuildRequires: libopenssl-static
BuildRequires: libbrltty-devel >= 6.1
#% if "%{_build_cpu}" != "ppc"
#BuildRequires: gcc34
#% endif
BuildRequires: python-sphinx_rtd_theme-py3
BuildRequires: python-sphinxcontrib-jquery-py3
BuildRequires: spice-protocol-devel
Conflicts: kvm
%systemd_requires
@ -193,17 +196,12 @@ cd build-dynamic
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%makeinstall -C build-dynamic
#install -D -m 755 %{S:1} \
# %{buildroot}%{_prefix}/lib/systemd/scripts/%{name}-binfmt
#install -D -m 0644 %{S:5} \
# %{buildroot}%{_unitdir}/qemu.service
install -d -m0755 %{buildroot}%{_binfmtdir}
scripts/qemu-binfmt-conf.sh --exportdir %{buildroot}%{_binfmtdir}/ \
--systemd ALL --qemu-path %{_bindir}
cd build-static
find *-linux-user -name qemu-\* | while read f; do
find -maxdepth 1 -name qemu-\* -type f | while read f; do
cp -L ${f} %{buildroot}%{_bindir}/`basename $f`.static
## (obsolete?) disable stripping static binaries by installing without -x
@ -248,39 +246,28 @@ rm -f %{buildroot}%{_datadir}/qemu/palcode-clipper
find /etc/rc[0-6].d/ -type l -xtype l -exec rm -f {} \;
:
%post -n libcacard
/sbin/ldconfig
:
%postun -n libcacard
/sbin/ldconfig
:
%post -n libcacard -p /sbin/ldconfig
%postun -n libcacard -p /sbin/ldconfig
%files -f %{name}.lang
%defattr(-,root,root)
%{_bindir}/%{name}*
%{_bindir}/elf2dmp
%exclude %{_bindir}/qemu-ga
#%{_bindir}/ivshmem-client
#%{_bindir}/ivshmem-server
%exclude %{_bindir}/%{name}*.static
%{_datadir}/applications/qemu.desktop
%{_datadir}/icons/hicolor/*/apps/qemu.png
%{_datadir}/icons/hicolor/*/apps/qemu.bmp
%{_datadir}/icons/hicolor/scalable/apps/qemu.svg
%{_libexecdir}/qemu-bridge-helper
#%{_libexecdir}/qemu-pr-helper
%{_libexecdir}/vhost-user-gpu
%{_libexecdir}/virtfs-proxy-helper
#%{_libexecdir}/virtiofsd
%{_datadir}/%{name}
%{_binfmtdir}/*.conf
%{_includedir}/qemu-plugin.h
%{_docdir}/%{name}
#%{_datadir}/qemu/hppa-firmware.img
#%{_datadir}/qemu/palcode-clipper
%{_mandir}/man1/qemu*.1*
%{_mandir}/man1/virtfs-proxy-helper.1*
#%{_mandir}/man1/virtiofsd.1*
%exclude %{_mandir}/man7/qemu-ga-ref.7*
%{_mandir}/man7/qemu-*.7*
%{_mandir}/man8/qemu-*.8*
@ -304,6 +291,21 @@ find /etc/rc[0-6].d/ -type l -xtype l -exec rm -f {} \;
%attr(0755,root,root) %{_bindir}/%{name}*.static
%changelog
* Thu Apr 25 2024 Automatic Build System <autodist@openmamba.org> 9.0.0-1mamba
- automatic version update by autodist
* Thu Mar 21 2024 Automatic Build System <autodist@mambasoft.it> 8.2.2-2mamba
- rebuilt by autoport with build requirements: libxen-devel>=4.18.0-1mamba
* Tue Mar 05 2024 Automatic Build System <autodist@openmamba.org> 8.2.2-1mamba
- automatic version update by autodist
* Tue Jan 30 2024 Automatic Build System <autodist@openmamba.org> 8.2.1-1mamba
- automatic version update by autodist
* Mon Dec 25 2023 Silvan Calarco <silvan.calarco@mambasoft.it> 8.2.0-2mamba
- rebuilt with virglrenderer
* Wed Dec 20 2023 Automatic Build System <autodist@mambasoft.it> 8.2.0-1mamba
- automatic version update by autodist