diff --git a/sycl/test-e2e/IntermediateLib/multi_lib_app.cpp b/sycl/test-e2e/IntermediateLib/multi_lib_app.cpp index 3d1d1cb41a1e8..69c4c50662e95 100644 --- a/sycl/test-e2e/IntermediateLib/multi_lib_app.cpp +++ b/sycl/test-e2e/IntermediateLib/multi_lib_app.cpp @@ -1,9 +1,6 @@ // UNSUPPORTED: cuda || hip // UNSUPPORTED-TRACKER: CMPLRLLVM-69415 -// UNSUPPORTED: windows -// UNSUPPORTED-TRACKER: https://github.com/intel/llvm/issues/20023 - // DEFINE: %{fPIC_flag} = %if windows %{%} %else %{-fPIC%} // DEFINE: %{shared_lib_ext} = %if windows %{dll%} %else %{so%} @@ -17,12 +14,17 @@ // So the hack here is to put heredoc in the definition // and use single quotes, which Python forgivingly accepts. // clang-format on + +// On Windows, the CI sometimes builds on one machine and runs on another. +// This means that %T might not be consistent between build and run. +// So we use %{run-aux} to perform ALL actions on the run machine +// like we do for the AoT tests. -// RUN: %{build} %{fPIC_flag} -DSO_PATH='R"(%T)"' -o %t.out +// RUN: %{run-aux} %clangxx -fsycl %{fPIC_flag} -DSO_PATH='R"(%T)"' -o %t.out %s -// RUN: %clangxx -fsycl %{fPIC_flag} -shared -DINC=1 -o %T/lib_a.%{shared_lib_ext} %S/Inputs/incrementing_lib.cpp -// RUN: %clangxx -fsycl %{fPIC_flag} -shared -DINC=2 -o %T/lib_b.%{shared_lib_ext} %S/Inputs/incrementing_lib.cpp -// RUN: %clangxx -fsycl %{fPIC_flag} -shared -DINC=4 -o %T/lib_c.%{shared_lib_ext} %S/Inputs/incrementing_lib.cpp +// RUN: %{run-aux} %clangxx -fsycl %{fPIC_flag} -shared -DINC=1 -o %T/lib_a.%{shared_lib_ext} %S/Inputs/incrementing_lib.cpp +// RUN: %{run-aux} %clangxx -fsycl %{fPIC_flag} -shared -DINC=2 -o %T/lib_b.%{shared_lib_ext} %S/Inputs/incrementing_lib.cpp +// RUN: %{run-aux} %clangxx -fsycl %{fPIC_flag} -shared -DINC=4 -o %T/lib_c.%{shared_lib_ext} %S/Inputs/incrementing_lib.cpp // RUN: env UR_L0_LEAKS_DEBUG=1 %{run} %t.out