From 0410c37216522da7b8e2c98653e453e96df28439 Mon Sep 17 00:00:00 2001 From: Mikhail Kashkarov Date: Tue, 3 Sep 2019 20:31:55 +0300 Subject: [PATCH] Fix up mis-accelerated binaries 1. Enable /bin/sh acceleration 2. Accelerate gcc-{version} gcc-6.2.1 listed in $binaries list but not accelerated 3. Move gcov to the gcc binaries group (was not processed correctly) qemu-accel changes: - Changed symlinks: from: /emul/usr/binsh -> bash to: /emul/usr/bin/sh -> bash - New executable file: /emul/usr/bin/gcc-6.2.1 - New symbolic link: /emul/usr/bin/armv7l-tizen-linux-gnueabi-gcov -> gcov Change-Id: I8b2fae83bb5a1009c98175d96065fdb4dedb6210 --- packaging/qemu-accel-aarch64.spec | 8 ++++---- packaging/qemu-accel-armv7hl.spec | 8 ++++---- packaging/qemu-accel-armv7l.spec | 8 ++++---- packaging/qemu-accel.spec.in | 8 ++++---- 4 files changed, 16 insertions(+), 16 deletions(-) diff --git a/packaging/qemu-accel-aarch64.spec b/packaging/qemu-accel-aarch64.spec index be6db48..bae555f 100644 --- a/packaging/qemu-accel-aarch64.spec +++ b/packaging/qemu-accel-aarch64.spec @@ -300,8 +300,8 @@ done # create symlinks for bash ln -s usr/bin "${buildroot_emul_path}/bin" echo '%{our_path}/bin' >> %{_sourcedir}/all-accel.list -ln -sf bash "${buildroot_emul_path}%{_bindir}sh" -echo '%{emul_path}%{_bindir}sh' >> %{_sourcedir}/all-accel.list +ln -sf bash "${buildroot_emul_path}%{_bindir}/sh" +echo '%{emul_path}%{_bindir}/sh' >> %{_sourcedir}/all-accel.list mv ${buildroot_emul_path}/%{_lib}/* ${buildroot_emul_path}%{_libdir}/ rm -rf ${buildroot_emul_path}/%{_lib} @@ -316,7 +316,7 @@ echo '%{emul_path}/usr/lib' >> %{_sourcedir}/multilib-accel.list } # rename binutils binaries -for binary in addr2line ar as c++filt dwp elfedit gprof ld ld.bfd ld.gold nm objcopy objdump ranlib readelf size strings strip gcov +for binary in addr2line ar as c++filt dwp elfedit gprof ld ld.bfd ld.gold nm objcopy objdump ranlib readelf size strings strip do mv ${buildroot_emul_path}%{_bindir}/%{target_arch}-$binary ${buildroot_emul_path}%{_bindir}/$binary sed -e "\|%{emul_path}%{_bindir}/%{target_arch}-$binary|d" -i %{_sourcedir}/all-accel.list @@ -375,7 +375,7 @@ cp %{_libdir}/${host_python}/encodings/*.py ${buildroot_emul_path}%{_libdir}/${h find %{buildroot} -name 'python*' | sed -e "s|${buildroot_emul_path}||" | tee -a python.list # rename gcc binaries -for bin in c++ g++ gcc gfortran cpp gcc-ar gcc-nm gcc-ranlib +for bin in c++ g++ gcc gcc-${gcc_version} gfortran cpp gcc-ar gcc-nm gcc-ranlib gcov do mv ${buildroot_emul_path}%{_bindir}/%{target_arch}-$bin ${buildroot_emul_path}%{_bindir}/$bin ln -s $bin ${buildroot_emul_path}%{_bindir}/%{target_arch}-$bin diff --git a/packaging/qemu-accel-armv7hl.spec b/packaging/qemu-accel-armv7hl.spec index 8adb708..7cbdc5b 100644 --- a/packaging/qemu-accel-armv7hl.spec +++ b/packaging/qemu-accel-armv7hl.spec @@ -300,8 +300,8 @@ done # create symlinks for bash ln -s usr/bin "${buildroot_emul_path}/bin" echo '%{our_path}/bin' >> %{_sourcedir}/all-accel.list -ln -sf bash "${buildroot_emul_path}%{_bindir}sh" -echo '%{emul_path}%{_bindir}sh' >> %{_sourcedir}/all-accel.list +ln -sf bash "${buildroot_emul_path}%{_bindir}/sh" +echo '%{emul_path}%{_bindir}/sh' >> %{_sourcedir}/all-accel.list mv ${buildroot_emul_path}/%{_lib}/* ${buildroot_emul_path}%{_libdir}/ rm -rf ${buildroot_emul_path}/%{_lib} @@ -316,7 +316,7 @@ echo '%{emul_path}/usr/lib' >> %{_sourcedir}/multilib-accel.list } # rename binutils binaries -for binary in addr2line ar as c++filt dwp elfedit gprof ld ld.bfd ld.gold nm objcopy objdump ranlib readelf size strings strip gcov +for binary in addr2line ar as c++filt dwp elfedit gprof ld ld.bfd ld.gold nm objcopy objdump ranlib readelf size strings strip do mv ${buildroot_emul_path}%{_bindir}/%{target_arch}-$binary ${buildroot_emul_path}%{_bindir}/$binary sed -e "\|%{emul_path}%{_bindir}/%{target_arch}-$binary|d" -i %{_sourcedir}/all-accel.list @@ -375,7 +375,7 @@ cp %{_libdir}/${host_python}/encodings/*.py ${buildroot_emul_path}%{_libdir}/${h find %{buildroot} -name 'python*' | sed -e "s|${buildroot_emul_path}||" | tee -a python.list # rename gcc binaries -for bin in c++ g++ gcc gfortran cpp gcc-ar gcc-nm gcc-ranlib +for bin in c++ g++ gcc gcc-${gcc_version} gfortran cpp gcc-ar gcc-nm gcc-ranlib gcov do mv ${buildroot_emul_path}%{_bindir}/%{target_arch}-$bin ${buildroot_emul_path}%{_bindir}/$bin ln -s $bin ${buildroot_emul_path}%{_bindir}/%{target_arch}-$bin diff --git a/packaging/qemu-accel-armv7l.spec b/packaging/qemu-accel-armv7l.spec index 6983664..d77fe1c 100644 --- a/packaging/qemu-accel-armv7l.spec +++ b/packaging/qemu-accel-armv7l.spec @@ -300,8 +300,8 @@ done # create symlinks for bash ln -s usr/bin "${buildroot_emul_path}/bin" echo '%{our_path}/bin' >> %{_sourcedir}/all-accel.list -ln -sf bash "${buildroot_emul_path}%{_bindir}sh" -echo '%{emul_path}%{_bindir}sh' >> %{_sourcedir}/all-accel.list +ln -sf bash "${buildroot_emul_path}%{_bindir}/sh" +echo '%{emul_path}%{_bindir}/sh' >> %{_sourcedir}/all-accel.list mv ${buildroot_emul_path}/%{_lib}/* ${buildroot_emul_path}%{_libdir}/ rm -rf ${buildroot_emul_path}/%{_lib} @@ -316,7 +316,7 @@ echo '%{emul_path}/usr/lib' >> %{_sourcedir}/multilib-accel.list } # rename binutils binaries -for binary in addr2line ar as c++filt dwp elfedit gprof ld ld.bfd ld.gold nm objcopy objdump ranlib readelf size strings strip gcov +for binary in addr2line ar as c++filt dwp elfedit gprof ld ld.bfd ld.gold nm objcopy objdump ranlib readelf size strings strip do mv ${buildroot_emul_path}%{_bindir}/%{target_arch}-$binary ${buildroot_emul_path}%{_bindir}/$binary sed -e "\|%{emul_path}%{_bindir}/%{target_arch}-$binary|d" -i %{_sourcedir}/all-accel.list @@ -375,7 +375,7 @@ cp %{_libdir}/${host_python}/encodings/*.py ${buildroot_emul_path}%{_libdir}/${h find %{buildroot} -name 'python*' | sed -e "s|${buildroot_emul_path}||" | tee -a python.list # rename gcc binaries -for bin in c++ g++ gcc gfortran cpp gcc-ar gcc-nm gcc-ranlib +for bin in c++ g++ gcc gcc-${gcc_version} gfortran cpp gcc-ar gcc-nm gcc-ranlib gcov do mv ${buildroot_emul_path}%{_bindir}/%{target_arch}-$bin ${buildroot_emul_path}%{_bindir}/$bin ln -s $bin ${buildroot_emul_path}%{_bindir}/%{target_arch}-$bin diff --git a/packaging/qemu-accel.spec.in b/packaging/qemu-accel.spec.in index 3a7b43c..fe4718c 100644 --- a/packaging/qemu-accel.spec.in +++ b/packaging/qemu-accel.spec.in @@ -297,8 +297,8 @@ done # create symlinks for bash ln -s usr/bin "${buildroot_emul_path}/bin" echo '%{our_path}/bin' >> %{_sourcedir}/all-accel.list -ln -sf bash "${buildroot_emul_path}%{_bindir}sh" -echo '%{emul_path}%{_bindir}sh' >> %{_sourcedir}/all-accel.list +ln -sf bash "${buildroot_emul_path}%{_bindir}/sh" +echo '%{emul_path}%{_bindir}/sh' >> %{_sourcedir}/all-accel.list mv ${buildroot_emul_path}/%{_lib}/* ${buildroot_emul_path}%{_libdir}/ rm -rf ${buildroot_emul_path}/%{_lib} @@ -313,7 +313,7 @@ echo '%{emul_path}/usr/lib' >> %{_sourcedir}/multilib-accel.list } # rename binutils binaries -for binary in addr2line ar as c++filt dwp elfedit gprof ld ld.bfd ld.gold nm objcopy objdump ranlib readelf size strings strip gcov +for binary in addr2line ar as c++filt dwp elfedit gprof ld ld.bfd ld.gold nm objcopy objdump ranlib readelf size strings strip do mv ${buildroot_emul_path}%{_bindir}/%{target_arch}-$binary ${buildroot_emul_path}%{_bindir}/$binary sed -e "\|%{emul_path}%{_bindir}/%{target_arch}-$binary|d" -i %{_sourcedir}/all-accel.list @@ -372,7 +372,7 @@ cp %{_libdir}/${host_python}/encodings/*.py ${buildroot_emul_path}%{_libdir}/${h find %{buildroot} -name 'python*' | sed -e "s|${buildroot_emul_path}||" | tee -a python.list # rename gcc binaries -for bin in c++ g++ gcc gfortran cpp gcc-ar gcc-nm gcc-ranlib +for bin in c++ g++ gcc gcc-${gcc_version} gfortran cpp gcc-ar gcc-nm gcc-ranlib gcov do mv ${buildroot_emul_path}%{_bindir}/%{target_arch}-$bin ${buildroot_emul_path}%{_bindir}/$bin ln -s $bin ${buildroot_emul_path}%{_bindir}/%{target_arch}-$bin -- 2.7.4