Skip to content
Snippets Groups Projects
  1. Dec 03, 2020
    • Simon McVittie's avatar
      runtime: Create more symlinks for ${PLATFORM}-dependent libdirs · 49a496ed
      Simon McVittie authored
      
      Since glibc 2.26, the ${PLATFORM} for x86_64 can expand to "haswell"
      or "xeon_phi" in addition to "x86_64".
      
      To make it clearer what's going on, stop pretending that library paths
      based on ${PLATFORM} have anything to do with multiarch tuples.
      Instead, create symlinks like
      /overrides/lib/platform-haswell -> x86_64-linux-gnu and
      /overrides/lib/platform-i686 -> i386-linux-gnu.
      
      Signed-off-by: default avatarSimon McVittie <smcv@collabora.com>
      49a496ed
    • Ludovico de Nittis's avatar
      runtime: Do not dlopen layers if it is not needed · 92534fff
      Ludovico de Nittis authored
      
      Currently the Vulkan layer loader does not support having multiple layer
      manifests with the same "name" field.
      This can be a problem when you want to support multiple ABIs.
      
      For this reason some layers, like vkBasalt, use a "library_path" with
      just the filename of the library. In this way, at execution time, the
      correct library will be chosen automatically.
      
      To expand the special tokens LIB, PLATFORM and ORIGIN we dlopened the
      layers. But instead of always doing it, now we dlopen layers only if
      they actually contain at least one of those tokens.
      In this way we can speed up the whole process a little bit and also keep
      basenames as is, so that their correct library can still be chosen
      automatically at execution time.
      
      Partial addresses #39
      
      Signed-off-by: default avatarLudovico de Nittis <ludovico.denittis@collabora.com>
      92534fff
  2. Nov 30, 2020
  3. Nov 24, 2020
  4. Nov 20, 2020
  5. Nov 18, 2020
  6. Nov 17, 2020
  7. Nov 16, 2020
  8. Nov 11, 2020
  9. Oct 29, 2020
  10. Oct 26, 2020
  11. Oct 22, 2020
    • Simon McVittie's avatar
      pressure-vessel: Disable GIO modules differently · 92b1c2b6
      Simon McVittie authored
      
      Now that GIO_MODULE_DIR has been backported into scout's GLib, we can
      disable GIO modules completely, instead of loading them but then not
      using them. This avoids some misleading warnings (#32).
      
      This will not be completely effective on non-Debian systems until we
      also patch scout's GLib to make GIO_MODULE_DIR take precedence over
      the hard-coded legacy search path /usr/lib/gio/modules.
      
      The unit test for this is still in tests/pressure-vessel/utils.c
      for now.
      
      Signed-off-by: default avatarSimon McVittie <smcv@collabora.com>
      92b1c2b6
  12. Oct 19, 2020
  13. Oct 08, 2020
  14. Oct 06, 2020
  15. Oct 05, 2020
  16. Oct 01, 2020
    • Simon McVittie's avatar
      launcher: Always set PWD to the command's actual working directory · e71023ff
      Simon McVittie authored
      
      pressure-vessel-wrap unsets PWD, but we don't want the command to inherit
      a value of PWD from the launcher. In particular, when running in session
      mode, the launcher's $PWD is the Steam installation, typically
      ~/.local/share/Steam, and the setup commands are also run with that
      working directory, but the actual game is run with the current working
      directory set to its own game directory (which we didn't necessarily
      even know at the time that the launcher was started).
      
      Consumers of $PWD should really check that it is equivalent to the
      actual current working directory and ignore it if it does not, like
      GNU get_current_dir_name(3) and our pv_get_current_dirs() do, but
      blindly believing $PWD is a common shell-scripting mistake, and I
      wouldn't be surprised if there are some games whose launcher scripts
      will believe $PWD even when it doesn't coincide with the real working
      directory.
      
      Signed-off-by: default avatarSimon McVittie <smcv@collabora.com>
      e71023ff
Loading