Skip to content
Snippets Groups Projects
  • Ludovico de Nittis's avatar
    92534fff
    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
    History
    runtime: Do not dlopen layers if it is not needed
    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>