@@ -25,13 +25,25 @@ def resolve_compilers(
2525 c_compiler : str ,
2626 cxx_compiler : str ,
2727 compiler_root : str ,
28+ sycl_provider : str = "Intel" ,
2829):
2930 is_linux = "linux" in sys .platform
3031
32+ if sycl_provider == "AdaptiveCpp" :
33+ if oneapi :
34+ raise RuntimeError (
35+ "--oneapi is specific to DPC++ and can not be used with the "
36+ "AdaptiveCpp SYCL provider"
37+ )
38+ default_c_compiler , default_cxx_compiler = "clang" , "acpp"
39+ else :
40+ default_c_compiler = "icx"
41+ default_cxx_compiler = "icpx" if is_linux else "icx"
42+
3143 if oneapi or (
3244 c_compiler is None and cxx_compiler is None and compiler_root is None
3345 ):
34- return "icx" , ( "icpx" if is_linux else "icx" )
46+ return default_c_compiler , default_cxx_compiler
3547
3648 if (
3749 (c_compiler is None or not os .path .isabs (c_compiler ))
@@ -45,19 +57,22 @@ def resolve_compilers(
4557
4658 # default values
4759 if c_compiler is None :
48- c_compiler = "icx"
60+ c_compiler = default_c_compiler
4961 if cxx_compiler is None :
50- cxx_compiler = "icpx" if is_linux else "icx"
62+ cxx_compiler = default_cxx_compiler
5163
5264 for name , opt_name in (
5365 (c_compiler , "--c-compiler" ),
5466 (cxx_compiler , "--cxx-compiler" ),
5567 ):
5668 if os .path .isabs (name ):
5769 path = name
58- else :
70+ elif compiler_root :
5971 path = os .path .join (compiler_root , name )
60- if not os .path .exists (path ):
72+ else :
73+ # a default name with no compiler root is looked up in PATH
74+ path = shutil .which (name )
75+ if not path or not os .path .exists (path ):
6176 raise RuntimeError (f"{ opt_name } value { name } not found" )
6277 return c_compiler , cxx_compiler
6378
@@ -92,6 +107,7 @@ def make_cmake_args(
92107 level_zero : bool = True ,
93108 glog : bool = False ,
94109 verbose : bool = False ,
110+ sycl_provider : str = "Intel" ,
95111 other_opts : str = None ,
96112):
97113 args = [
@@ -100,6 +116,7 @@ def make_cmake_args(
100116 "-DDPCTL_ENABLE_L0_KERNEL_BUNDLE_CREATION="
101117 f"{ 'ON' if level_zero else 'OFF' } " ,
102118 f"-DDPCTL_ENABLE_GLOG:BOOL={ 'ON' if glog else 'OFF' } " ,
119+ f"-DDPCTL_SYCL_PROVIDER={ sycl_provider } " ,
103120 ]
104121
105122 if verbose :
0 commit comments