diff --git a/level_zero/core/test/unit_tests/CMakeLists.txt b/level_zero/core/test/unit_tests/CMakeLists.txt index 3e88a90be5..6cb68db02a 100644 --- a/level_zero/core/test/unit_tests/CMakeLists.txt +++ b/level_zero/core/test/unit_tests/CMakeLists.txt @@ -168,7 +168,7 @@ if(MSVC) ) set(RUN_ULT_CMD $) else() - set(RUN_ULT_CMD LD_LIBRARY_PATH=$ $) + set(RUN_ULT_CMD $) endif() add_dependencies(unit_tests ${TARGET_NAME}) diff --git a/level_zero/experimental/test/unit_tests/CMakeLists.txt b/level_zero/experimental/test/unit_tests/CMakeLists.txt index 1eb7125320..3274751082 100644 --- a/level_zero/experimental/test/unit_tests/CMakeLists.txt +++ b/level_zero/experimental/test/unit_tests/CMakeLists.txt @@ -145,9 +145,7 @@ if(MSVC) )") set(RUN_ULT_CMD $) else() - set(RUN_ULT_CMD LD_LIBRARY_PATH=$ - $ - ) + set(RUN_ULT_CMD $) endif() add_dependencies(unit_tests ${TARGET_NAME}) diff --git a/level_zero/tools/test/unit_tests/CMakeLists.txt b/level_zero/tools/test/unit_tests/CMakeLists.txt index 9ba0c85acb..4e604c0390 100644 --- a/level_zero/tools/test/unit_tests/CMakeLists.txt +++ b/level_zero/tools/test/unit_tests/CMakeLists.txt @@ -134,7 +134,7 @@ if(MSVC) ) set(RUN_ULT_CMD $) else() - set(RUN_ULT_CMD LD_LIBRARY_PATH=$ $) + set(RUN_ULT_CMD $) endif() add_dependencies(unit_tests ${TARGET_NAME}) diff --git a/opencl/test/unit_test/main.cpp b/opencl/test/unit_test/main.cpp index ae5fef7a14..ee829970fa 100644 --- a/opencl/test/unit_test/main.cpp +++ b/opencl/test/unit_test/main.cpp @@ -201,12 +201,19 @@ int main(int argc, char **argv) { bool enable_segv = true; if (getenv("IGDRCL_TEST_SELF_EXEC") == nullptr) { std::string wd = getRunPath(argv[0]); - setenv("LD_LIBRARY_PATH", wd.c_str(), 1); + char *ldLibraryPath = getenv("LD_LIBRARY_PATH"); + + if (ldLibraryPath == nullptr) { + setenv("LD_LIBRARY_PATH", wd.c_str(), 1); + } else { + std::string ldLibraryPathConcat = wd + ":" + std::string(ldLibraryPath); + setenv("LD_LIBRARY_PATH", ldLibraryPathConcat.c_str(), 1); + } + setenv("IGDRCL_TEST_SELF_EXEC", wd.c_str(), 1); execv(argv[0], argv); printf("FATAL ERROR: cannot self-exec test: %s!, errno: %d\n", argv[0], errno); return -1; - } else { } #endif diff --git a/shared/test/unit_test/main.cpp b/shared/test/unit_test/main.cpp index 9aac2369d1..5e5b754bfc 100644 --- a/shared/test/unit_test/main.cpp +++ b/shared/test/unit_test/main.cpp @@ -193,12 +193,19 @@ int main(int argc, char **argv) { bool enable_abrt = true; if (getenv("IGDRCL_TEST_SELF_EXEC") == nullptr) { std::string wd = getRunPath(argv[0]); - setenv("LD_LIBRARY_PATH", wd.c_str(), 1); + char *ldLibraryPath = getenv("LD_LIBRARY_PATH"); + + if (ldLibraryPath == nullptr) { + setenv("LD_LIBRARY_PATH", wd.c_str(), 1); + } else { + std::string ldLibraryPathConcat = wd + ":" + std::string(ldLibraryPath); + setenv("LD_LIBRARY_PATH", ldLibraryPathConcat.c_str(), 1); + } + setenv("IGDRCL_TEST_SELF_EXEC", wd.c_str(), 1); execv(argv[0], argv); printf("FATAL ERROR: cannot self-exec test: %s!, errno: %d\n", argv[0], errno); return -1; - } else { } #endif