compiler-research / CppInterOp

A Clang-based C++ Interoperability Library
Other
38 stars 20 forks source link

Add ability to compile CppInterOp and tests on Windows with different compiler #195

Closed mcbarton closed 5 months ago

mcbarton commented 5 months ago

@vgvassilev This PR allows for those trying to solve Windows build issues to use a different compiler to MSVC . With these changes I was able to compile CppInterOp and its tests using the Clang compiler. Currently I'm not passing the tests as the header files cannot be found, but I believe this has something to do with the environment variables I have set, and am investigating.

Fixes https://github.com/compiler-research/CppInterOp/issues/175 (provides proof that earlier PR fixed it)

codecov[bot] commented 5 months ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (e61e7ca) 78.83% compared to head (30c91dc) 78.83%.

Additional details and impacted files [![Impacted file tree graph](https://app.codecov.io/gh/compiler-research/CppInterOp/pull/195/graphs/tree.svg?width=650&height=150&src=pr&token=7UWTYSVVT5&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=compiler-research)](https://app.codecov.io/gh/compiler-research/CppInterOp/pull/195?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=compiler-research) ```diff @@ Coverage Diff @@ ## main #195 +/- ## ======================================= Coverage 78.83% 78.83% ======================================= Files 8 8 Lines 3048 3048 ======================================= Hits 2403 2403 Misses 645 645 ``` | [Files](https://app.codecov.io/gh/compiler-research/CppInterOp/pull/195?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=compiler-research) | Coverage Δ | | |---|---|---| | [lib/Interpreter/CppInterOp.cpp](https://app.codecov.io/gh/compiler-research/CppInterOp/pull/195?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=compiler-research#diff-bGliL0ludGVycHJldGVyL0NwcEludGVyT3AuY3Bw) | `86.31% <ø> (ø)` | | | [Files](https://app.codecov.io/gh/compiler-research/CppInterOp/pull/195?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=compiler-research) | Coverage Δ | | |---|---|---| | [lib/Interpreter/CppInterOp.cpp](https://app.codecov.io/gh/compiler-research/CppInterOp/pull/195?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=compiler-research#diff-bGliL0ludGVycHJldGVyL0NwcEludGVyT3AuY3Bw) | `86.31% <ø> (ø)` | |
github-actions[bot] commented 5 months ago

clang-tidy review says "All clean, LGTM! :+1:"

vgvassilev commented 5 months ago

Can we use continue-on-error in the yml file instead?

mcbarton commented 5 months ago

@vgvassilev So just to be certain before I make the change, you want me to reactivate the other Windows builds, but add continue-on-error: true to the 'Build and Test/Install CppInterOp on Windows systems' part of the jobs?

vgvassilev commented 5 months ago

Yes, assuming we still get some green/ or different than X build sign.

github-actions[bot] commented 5 months ago

clang-tidy review says "All clean, LGTM! :+1:"

mcbarton commented 5 months ago

@vgvassilev After that change the Windows builds now get a green tick. I have added a comment to this section that tests are expected to fail until https://github.com/compiler-research/CppInterOp/issues/188 is resolved.

mcbarton commented 5 months ago

@vgvassilev Can this PR be merged now that is gets a green tick for all the jobs?

github-actions[bot] commented 5 months ago

clang-tidy review says "All clean, LGTM! :+1:"

github-actions[bot] commented 5 months ago

clang-tidy review says "All clean, LGTM! :+1:"

github-actions[bot] commented 5 months ago

clang-tidy review says "All clean, LGTM! :+1:"

mcbarton commented 5 months ago

@alexander-penev can you review this PR for me? The purpose of the PR is to do 3 things 1) Enable the ability to build CppInterOp on Windows with a different compiler to MSVC 2) Add 'continue on error' for CppInterOp build on Windows until codebase can be changed for tests to pass 3) Add osx 14 + osx arm build to CI (cc: @vgvassilev new addition)