-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
ginkgo: fix tests, add build dep on gtest #17403
Conversation
Took several hours of rebuilding it to find out a recipe that works for linking tests. |
for pretty much all the ports in MacPorts that use cmake, to make the tests work, you have to do this:
There are a number cmake ports that use a block like this. We have talked at length about why the cmake portgroup sets:
which breaks the testing. In the end, unless there is a sea change of sentiment that comes up, the conclusion has been that is going to stay in the cmake portfile, and it can be altered for testing as in the block above. |
@kencu Thank you! Yes, I tried initially with BTW, does it make a difference if |
is added to the build by the cmake PortGroup in the configure.pre_args:
so if you want to remove that item and replace it with:
you need to use |
Makes sense, thank you. Gonna update this in some hours. |
@kencu Updated the port to replace pre_args, ran test suite again. Same results though. Opened a ticket with upstream, maybe we get some advice on PPC implementation there: ginkgo-project/ginkgo#1260 But this should be good to merge as-is, I believe. |
let me take a look. You shouldn't need to add DYLD-* stuff once you've fixed the install paths right. |
I could drop that, if you are sure. |
This Portfile is pretty close. Using libomp on MacPorts at present is problematic, because a library like this can't tell software that uses this library that it needs to use a compiler that supports libomp, so we get lots of build failures. If we are going to use OMP, it might best be in an optional variant, therefore. That is open to some discussion, depending on how many users of this library there might be. Here's what I did with the Portfile. Please test it out on your systems, and we'll see if we can finish it right up.
|
I'm not 100% sure yet if this is only needed in the testing variant... it is needed there, to make the tests all pass, at least.
|
@kencu Thank you very much for helping with this, I will test it now. |
At bindings it hangs now: all cores at 100%, but apparently nothing is happening.
At the same time, notice, |
@kencu Let me see if I can get it more reasonably fixed. As of now, it is unclear whether new Rebuilding this port takes 2+ hours even on the Quad, so I cannot rerun it dozen times at once :) Some of the failures are okay, but some are not so much. Discussion here: ginkgo-project/ginkgo#1260 (comment) |
you can use ccache now, and for me that makes rebuilding way faster. I would say 90 seconds on my M1. Hope you can sort out the PPC failures. |
Upstream wrote that:
I hope that 2) upstream can deal with. MPICH is on me, he-he, though I have no idea at the moment what is the reason for its weird behavior. |
@kencu BTW, how do we pass correctly |
set it in the environment would be my first thought…. the test environment. |
8dc0369
to
17c35b5
Compare
@kencu So yes, passing That is, with OMP enabled and with passing |
@kencu I suggest we merge it like this. It improves upon current results for PPC and apparently works nicely on Intel. With those tests freezing, it becomes super-burdensome and time-consuming to try anything extra. I give up for now, cannot afford spending weeks on this. Makes better sense to find out why MPICH is semi-broken on PPC to begin with – if that is fixed, life becomes much easier. UPD. I will rebuild last time to see if |
@kencu Could we merge this? It should solve all issues for Intel and improve a situation on PPC. I will try fixing remaining tests on PPC, but not shortly, other stuff is higher in priority list. |
A bit different results, freezes still at the end:
|
@barracuda156 can you rebase this on top of latest master? |
Also does |
@herbygillot No new releases as of a few days back at least. I will rebase today. |
@herbygillot I will deal with this now. Let me try using a newer commit also. P. S. The build will take some time, it is huge with tests. UPD. I think we just need to remove couple of tests in multigrid for PPC, since they freeze the OS badly. Everything else is good, there are minor failures, as before, but mostly tests pass. I will make an adjustment and rebase soon. |
@herbygillot Once CI pass, I am good with merging this. |
Most recent failure due to not finding OpenMP_C >= 3.0:
|
@herbygillot Oh wow, how come it got broken. Let us make it non-default, what to do. UPD. Ah, it is perhaps upstream has broken it in 1.6.0. |
Let’s see if it builds at least without OpenMP. |
Signed-off-by: barracuda156 [email protected]
Description
Fixes for tests. 94% pass now on PPC compared to 71%.
This also should fix build on few old systems which do not have functional git of their own.
Type(s)
Tested on
macOS 10.6
Xcode 3.2
Verification
Have you
port lint --nitpick
?sudo port test
?sudo port -vst install
?