Skip to content

Commit 457f94f

Browse files
[SYCL][E2E][NFC] Refactor library detection sources (#11992)
This commit refactors the way we define source programs used to detect the availability of libraries in SYCL e2e LIT testing. Suggestion by @ldrumm in #11929 (comment). --------- Signed-off-by: Larsen, Steffen <[email protected]> Co-authored-by: Dmitry Vodopyanov <[email protected]>
1 parent 1b31169 commit 457f94f

File tree

1 file changed

+22
-9
lines changed

1 file changed

+22
-9
lines changed

sycl/test-e2e/lit.cfg.py

Lines changed: 22 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import re
77
import subprocess
88
import tempfile
9+
import textwrap
910
from distutils.spawn import find_executable
1011

1112
import lit.formats
@@ -155,8 +156,12 @@
155156
# Check for Level Zero SDK
156157
check_l0_file='l0_include.cpp'
157158
with open(check_l0_file, 'w') as fp:
158-
fp.write('#include<level_zero/ze_api.h>\n')
159-
fp.write('int main() { uint32_t t; zeDriverGet(&t,nullptr); return t; }')
159+
print(textwrap.dedent(
160+
'''
161+
#include <level_zero/ze_api.h>
162+
int main() { uint32_t t; zeDriverGet(&t, nullptr); return t; }
163+
'''
164+
), file=fp)
160165

161166
config.level_zero_libs_dir=lit_config.params.get("level_zero_libs_dir", config.level_zero_libs_dir)
162167
config.level_zero_include=lit_config.params.get("level_zero_include", (config.level_zero_include if config.level_zero_include else config.sycl_include))
@@ -177,11 +182,15 @@
177182
# Check for sycl-preview library
178183
check_preview_breaking_changes_file='preview_breaking_changes_link.cpp'
179184
with open(check_preview_breaking_changes_file, 'w') as fp:
180-
fp.write('#include <sycl/sycl.hpp>\n')
181-
fp.write('namespace sycl { inline namespace _V1 { namespace detail {\n')
182-
fp.write('extern void PreviewMajorReleaseMarker();\n')
183-
fp.write('}}}\n')
184-
fp.write('int main() { sycl::detail::PreviewMajorReleaseMarker(); return 0; }\n')
185+
print(textwrap.dedent(
186+
'''
187+
#include <sycl/sycl.hpp>
188+
namespace sycl { inline namespace _V1 { namespace detail {
189+
extern void PreviewMajorReleaseMarker();
190+
}}}
191+
int main() { sycl::detail::PreviewMajorReleaseMarker(); return 0; }
192+
'''
193+
), file=fp)
185194

186195
sp = subprocess.getstatusoutput(config.dpcpp_compiler+' -fsycl -fpreview-breaking-changes ' + check_preview_breaking_changes_file)
187196
if sp[0] == 0:
@@ -190,8 +199,12 @@
190199
# Check for CUDA SDK
191200
check_cuda_file='cuda_include.cpp'
192201
with open(check_cuda_file, 'w') as fp:
193-
fp.write('#include <cuda.h>\n')
194-
fp.write('int main() { CUresult r = cuInit(0); return r; }')
202+
print(textwrap.dedent(
203+
'''
204+
#include <cuda.h>
205+
int main() { CUresult r = cuInit(0); return r; }
206+
'''
207+
), file=fp)
195208

196209
config.cuda_libs_dir=lit_config.params.get("cuda_libs_dir", config.cuda_libs_dir)
197210
config.cuda_include=lit_config.params.get("cuda_include", (config.cuda_include if config.cuda_include else config.sycl_include))

0 commit comments

Comments
 (0)