Add sycl headers to bazel toolchain config for DPCPP through icx #2905
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
There is a step in the bazel test pipeline for
//cpp/oneapi/dal:tests
in which it probes the compiler for include paths of headers to add to the toolchain config:oneDAL/dev/bazel/toolchains/cc_toolchain_lnx.bzl
Line 103 in b6b6a65
It does so by requesting the default paths from the compiler with this command:
In the case of DPCPP, this resolves to:
By default,
icx
doesn't include sycl linkage, thus the command above does not return the paths of SYCL headers. Under the defaulticx
factory settings, that leads to observing an error:This PR should address it by adding the necessary
-fsycl
flag when probing the compiler for its header paths.