-
Notifications
You must be signed in to change notification settings - Fork 109
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
Fix windows CI builds #1476
Fix windows CI builds #1476
Conversation
@fpoli It seems like using
unlike other sections it seems that But I was able to clean up the workflow changes to minimize the extra stuff for windows. |
Could it be that for some weird reason some GitHub actions try to use by default the |
It appears to be
In this Configuration Format document it appears that |
Thanks for checking! |
.github/workflows/test.yml
Outdated
@@ -217,6 +217,7 @@ jobs: | |||
runs-on: ${{ matrix.os }} | |||
env: | |||
PRUSTI_CACHE_PATH: ${{ github.workspace }}/prusti_cache.bin | |||
COMPILATION_TARGET_PRUSTI: ${{ matrix.os == 'windows-latest' && 'x86_64-pc-windows-msvc' || '' }} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
COMPILATION_TARGET_PRUSTI: ${{ matrix.os == 'windows-latest' && 'x86_64-pc-windows-msvc' || '' }} | |
# Avoid file conflicts when compiling on Windows | |
# See: https://github.com/viperproject/prusti-dev/pull/1476 | |
COMPILATION_TARGET_PRUSTI: ${{ matrix.os == 'windows-latest' && 'x86_64-pc-windows-msvc' || '' }} |
That's interesting. When compiling Prusti the build script of If this explanation is correct, an alternative solution would be to use a different target folder, |
I'll give it a try, as it seems like a better sol'n. Currently, I assume people on Windows can't build without specifying the target explicitly, which is not ideal. |
where It looks like, unfortunately this still doesnt work :( |
Okay it seems to work if --jobs=1 is added to It seems like windows doesn't like that the cargo-prusti executable being copied when there is build parallelism. |
Currently, the CI is reporting warnings of this form when building on windows.
These warnings are probably related to the CI failures.
For some reason, explicitly specifying the target (i.e.
x86_64-pc-windows-msvc
) when building for windows in CI eliminates these errors and the build succeeds.This PR implements those changes. Explicitly specifying the target causes the executables to be generated in different directories; this PR changes some of the test files accordingly.