Skip to content
Snippets Groups Projects
Simon McVittie's avatar
Simon McVittie authored
Until now, the case where only one architecture is supported has only
been tested if pressure-vessel was built for a non-x86 architecture
such as ARM, which is rarely (if ever) done.

We can get coverage for this case by making pv-wrap behave as if only
the first architecture was supported, as a runtime rather than
compile-time decision: this means that an ordinary x86_64 build can
exercise both the x86 and non-x86 code paths.

This is important because steamrt/tasks#595 will add new code that
differs according to whether there is only a single architecture,
or more than one.

In the test, this means we need to be able to mark which of the expected
paths are expected on i386 only, and which ones are expected in general.
Instead of the verbosity that would result from turning all of our
test data into structs, I've done this with an ad-hoc mini-language:
the ones that are only expected on i386 are prefixed with `i386:`.

We also might conceivably want to make use of something similar to
PV_APPEND_PRELOAD_FLAGS_ONE_ARCHITECTURE in production in future, if
we start providing legacy-free containers that only support running
x86_64 games.

Signed-off-by: default avatarSimon McVittie <smcv@collabora.com>
de82a412
History
Name Last commit Last update
..
man
CONTRIBUTING.md
README.md
THIRD-PARTY.md
adverb-preload.c
adverb-preload.h
adverb-sdl.c
adverb-sdl.h
adverb.1.md
adverb.c
build-relocatable-install.py
bwrap.c
bwrap.h
config.h.in
exports.c
exports.h
flatpak-bwrap-private.h
flatpak-bwrap.c
flatpak-common-types-private.h
flatpak-context-private.h
flatpak-error.h
flatpak-exports-private.h
flatpak-exports.c
flatpak-glib-backports-private.h
flatpak-glib-backports.c
flatpak-metadata-private.h
flatpak-portal.h
flatpak-run-dbus-private.h
flatpak-run-dbus.c
flatpak-run-private.h
flatpak-run-pulseaudio-private.h
flatpak-run-pulseaudio.c
flatpak-run-sockets-private.h
flatpak-run-sockets.c
flatpak-run-wayland-private.h
flatpak-run-wayland.c
flatpak-run-x11-private.h
flatpak-run-x11.c
flatpak-run.c
flatpak-session-helper.h
flatpak-utils-base-private.h
flatpak-utils-base.c
flatpak-utils-private.h
flatpak-utils.c
graphics-provider.c
graphics-provider.h
locale-gen.1.md
locking.md
meson.build
mtree.c
mtree.h
passwd.c
passwd.h
per-arch-dirs.c
per-arch-dirs.h
pressure-vessel-locale-gen
pressure-vessel-unruntime
runtime.c
runtime.h
supported-architectures.c
supported-architectures.h
testing-multi-gpu.md
tree-copy.c
tree-copy.h
try-setlocale.1.md
try-setlocale.c
unruntime.1.md
upload-artifacts.py
utils.c
utils.h
verify.1.md
verify.c
wrap-context.c
wrap-context.h
wrap-discord.c
wrap-discord.h
wrap-flatpak.c
wrap-flatpak.h
wrap-home.c
wrap-home.h
wrap-interactive.c
wrap-interactive.h
wrap-pipewire.c
wrap-pipewire.h
wrap-setup.c
wrap-setup.h
wrap.1.md
wrap.c