-
Notifications
You must be signed in to change notification settings - Fork 154
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Minor build fixes in cmake #55
Minor build fixes in cmake #55
Conversation
It should build straight off of current master. Can you give me the console output of your CI so I can have a look? |
See here. For testing, you can use the Dockerfiles or singularity definition files in |
That's interesting. I run into this specific issue myself quite a bit with clang and nvcc. The workaround is to pass |
This reverts commit 034957d.
It indeed was the CXX standard... kind of curious that it seemed I bumped into needing it on my side. Good to come in contact with the docker stuff to check before pushing though. I've just pushed a revert commit but can, if you'd prefer to have a cleaner tree, do some evil rebasing trickery and get rid of the commit(s) altogether |
Without having looked at the CI output our tried building this myself, it might be due to CMake defaulting to GNU standards (i.e., |
Thanks for all the ideas. I think we should try getting C++14 enabled by default because of the feedback from issue #56, where a missing |
Sure thing. Will try and massage that into conformity |
Three minor cmake fixes in hipsycl itself:
1 - Explicitly set
CMAKE_CXX_STANDARD
to 14, in case it doesn't get automagically set2 - Set and forwarded
CMAKE_CUDA_HOST_COMPILER
andCMAKE_CUDA_STANDARD
to the CUDA target if building with NVCC, as those don't always get correctly inherited to match the C++ side of the build3 - Probed the system for the
ROCM_PATH
variable and used it, if present, to add ROCM's include path to the build. I myself had always been adding the full path manually, but ROCM sets this on a file in profile.d when it install itself, so probing this env variable is an optionNone of these changes should break pre-existing builds. The one that could would be no1 if the compiler doesn't support it but it seems to me SYCL doesn't even build with a standard lower than 14 due to lambda shenanigans