Add loader enable/disable env vars
authorMark Young <marky@lunarg.com>
Tue, 26 Jul 2022 19:35:25 +0000 (13:35 -0600)
committerCharles Giessen <46324611+charles-lunarg@users.noreply.github.com>
Fri, 4 Nov 2022 20:08:39 +0000 (14:08 -0600)
commit38ce56b21bddf8f2a90af1471e3382b3d296cceb
treeea0e69c9e21f5e48201a8adfdd0799f21a88d4a1
parent1bc3a2fa8ec194492de622448aae2f4ad3520bd8
Add loader enable/disable env vars

Add new environment variables that will allow the loader to filter
layers and drivers in specific ways.
This control should give developers ways to more quickly narrow down
issues with a layer or driver.
Also, it should give CI environments a mechanism to selectively enable
only drivers and layers that are needed for testing.

Add tests to support validating the new changes.

Add documentation that describes the new changes and also create new
loader debugging markdown document to help people debug issues with
drivers or layers using the new filter enums.

Rename the old get_environment.* source files to loader_environment.*.
Then put all the environment variable helpers from loader.c into the
new files.
26 files changed:
BUILD.gn
docs/LoaderApplicationInterface.md
docs/LoaderDebugging.md [new file with mode: 0644]
docs/LoaderDriverInterface.md
docs/LoaderInterfaceArchitecture.md
docs/LoaderLayerInterface.md
loader/CMakeLists.txt
loader/get_environment.c [deleted file]
loader/get_environment.h [deleted file]
loader/loader.c
loader/loader.h
loader/loader_common.h
loader/loader_environment.c [new file with mode: 0644]
loader/loader_environment.h [new file with mode: 0644]
loader/loader_linux.c
loader/loader_windows.c
loader/log.c
loader/trampoline.c
loader/vk_loader_platform.h
tests/framework/test_environment.cpp
tests/framework/test_environment.h
tests/loader_envvar_tests.cpp
tests/loader_layer_tests.cpp
tests/loader_regression_tests.cpp
tests/loader_testing_main.cpp
tests/loader_version_tests.cpp