Remove unnecessary targets from QEMU build

This change updates the `0001-Customize-Debian-build-files-for-STX`
deb_patch for QEMU build to better filter the list of targets even for
the configure step.

It also reduces the build time by avoiding the generation and linking of
objects related to targets that won't be used by the package installed
on StarlingX.

Test Plan:
PASS - Build qemu package
PASS - Build/install image on AIO-SX
PASS - Verify that the package is installed in the system
PASS - Verify that stx-openstack sanity passes without new bugs

Story: 2010317
Task: 47666

Signed-off-by: Thales Elero Cervi <thaleselero.cervi@windriver.com>
Signed-off-by: Luan Nunes Utimura <LuanNunes.Utimura@windriver.com>
Change-Id: I5ae5427271952d75f7d17b3a995d5bfdccbd803a
This commit is contained in:
Luan Nunes Utimura 2023-04-19 12:02:32 -03:00
parent 49d796e61f
commit 13a2cfc148
1 changed files with 31 additions and 10 deletions

View File

@ -10,10 +10,11 @@ an output directory with 30 packages and ~1.1G in size. Removing
the unnecessary packages resulted in a build that takes ~15min and
in an output directory with only 10 needed packages and ~320M.
We mainly remove UI/Graphical modules and focus on building
qemu-system-x86 only. We do not need other qemu-system-* packages
for different architectures neither the build dependencies for
cross-compiling those packages.
This removes UI/Graphical modules and focus on building
qemu-system-x86 only. Other qemu-system-* packages for different
architectures are not required, neither the build dependencies for
cross-compiling those packages. Also, this reduces the configure
and build targets the ones that really matter for StarlingX.
Removed packages:
* qemu-system-gui
@ -25,8 +26,8 @@ Removed packages:
Signed-off-by: Thales Elero Cervi <thaleselero.cervi@windriver.com>
---
debian/control | 215 +++----------------------------------------------
debian/rules | 80 +-----------------
2 files changed, 14 insertions(+), 281 deletions(-)
debian/rules | 86 ++------------------
2 files changed, 16 insertions(+), 285 deletions(-)
diff --git a/debian/control b/debian/control
index 6534765..7cc0fb4 100644
@ -297,7 +298,7 @@ index 6534765..7cc0fb4 100644
Architecture: amd64 arm arm64 armel armhf hppa i386 ia64 kfreebsd-amd64 kfreebsd-i386 mips mipsel mips64 mips64el powerpc powerpcspe ppc64 ppc64el riscv64 s390x sparc sparc64 x32
Multi-Arch: foreign
diff --git a/debian/rules b/debian/rules
index 9d9f18f..d6778c3 100755
index 9d9f18f..1dc1e10 100755
--- a/debian/rules
+++ b/debian/rules
@@ -72,14 +72,11 @@ endif
@ -317,7 +318,27 @@ index 9d9f18f..d6778c3 100755
sysarch_arm = $(filter aarch64 arm,${system_targets})
sysarch_mips = $(filter mips mipsel mips64 mips64el,${system_targets})
sysarch_ppc = $(filter ppc ppc64,${system_targets})
@@ -348,9 +345,11 @@ endif # enable_linux_user
@@ -99,10 +96,7 @@ ifeq (${enable_linux_user},enable)
# list of linux-user targets, from ./configure
user_targets = \
- i386 x86_64 alpha aarch64 aarch64_be arm armeb cris hppa m68k microblaze microblazeel \
- mips mipsel mips64 mips64el mipsn32 mipsn32el nios2 or1k \
- ppc ppc64 ppc64le riscv32 riscv64 sh4 sh4eb sparc sparc64 sparc32plus \
- s390x xtensa xtensaeb
+ i386 x86_64 \
endif # enable_linux_user
@@ -117,6 +111,7 @@ b/configure-stamp: configure
--${enable_linux_user}-linux-user \
--enable-modules \
--enable-module-upgrades \
+ --target-list="$(addsuffix -softmmu,${system_targets})" \
$(shell sh debian/extract-config-opts \
$(DEB_HOST_ARCH_OS)-$(DEB_HOST_ARCH) debian/control) \
$(QEMU_CONFIGURE_OPTIONS) || \
@@ -348,9 +343,11 @@ endif # enable_linux_user
dh_install -a
dh_missing --list-missing
@ -329,7 +350,7 @@ index 9d9f18f..d6778c3 100755
dh_installman -a
dh_installudev -a
ifeq (${enable_system},enable)
@@ -393,35 +392,6 @@ debian/control: debian/control-in debian/rules
@@ -393,35 +390,6 @@ debian/control: debian/control-in debian/rules
chmod -w $@
endif
@ -365,7 +386,7 @@ index 9d9f18f..d6778c3 100755
### x86 optionrom
build-x86-optionrom: b/optionrom/built
b/optionrom/built:
@@ -471,48 +441,6 @@ install-palcode-clipper: b/qemu-palcode/palcode-clipper
@@ -471,48 +439,6 @@ install-palcode-clipper: b/qemu-palcode/palcode-clipper
install -m 0644 $< ${sysdatadir}/palcode-clipper
sysdata-components += palcode-clipper