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
linbox: Add darwin support #45015
linbox: Add darwin support #45015
Conversation
homepage = http://linalg.org/; | ||
}; | ||
} | ||
} // (if stdenv.isDarwin then { |
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.
No need to make this conditional, add a comment instead.
5b08abd
to
7e3c476
Compare
@GrahamcOfBorg build linbox |
No attempt on x86_64-darwin (full log) The following builds were skipped because they don't evaluate on x86_64-darwin: linbox Partial log (click to expand)
|
Success on x86_64-linux (full log) Attempted: linbox Partial log (click to expand)
|
Success on aarch64-linux (full log) Attempted: linbox Partial log (click to expand)
|
This depends on #45001 |
|
||
# needed for darwin | ||
doInstallCheck = true; | ||
installCheckTarget = "check"; |
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.
Same as #45001, please make the reason clear in the comment and set doCheck = false
. Maybe you should report the issue upstream.
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.
You can then add a link to the upstream issue to the comment.
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.
See #44248, this is a pretty common problem for packages that test their own libraries before they are installed.
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.
That is unfortunate. So it is a nix problem, not a linbox problem? Shouldn't that be solveable through DYLD_LIBRARY_PATH
in a general manner?
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.
I personally think that this is a much better test, messing with LD_LIBRARY_PATH or rpaths like what happens on linux provides no guarantee that the libraries actually work properly once installed.
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.
But this doesn't either: It still checks the built binary, not the installed one.
If a package has proper install checks and we someday default doInstallCheck = true
, they wouldn't be executed in this case. Also it requires a bunch of manual changes.
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.
In general I agree that install checks are more useful than build checks for packaging.
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.
No this is the opposite: it's testing against the installed binary even though the tests want to test against the built binary. Even though the Makefile explicitly passes flags to point the tests at the built binary, Nix must be overriding them to point it at the installed binary because in general it wants everything to point there. So I think doInstallCheck
is fine.
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.
Did you test that by removing the build results before running the tests? I would be surprised if nix did anything behind the scenes to make it use the installed binary. I would think that the built binary just looks for the installed library.
Anyways, thanks for adding support! Although I don't entirely like the InstallCheck
result, I think with the comment it is a worthy tradeoff for darwin support.
7e3c476
to
b1eefe2
Compare
@GrahamcOfBorg eval |
No attempt on x86_64-darwin (full log) The following builds were skipped because they don't evaluate on x86_64-darwin: linbox Partial log (click to expand)
|
Depends on #45013 |
Success on x86_64-linux (full log) Attempted: linbox Partial log (click to expand)
|
Timed out, unknown build status on aarch64-linux (full log) Attempted: linbox Partial log (click to expand)
|
b1eefe2
to
30743bf
Compare
Depends on #45013. |
30743bf
to
afbe19d
Compare
afbe19d
to
08c0928
Compare
Please rebase and remove the wip tag if appropriate. Out of curiosity: Do you know how many more sage dependencies need fixing? |
Also best leave a comment when you're done, github is really bad at notifications with stuff other than comments. |
08c0928
to
fe23b1a
Compare
@timokau All done. |
@GrahamcOfBorg build linbox |
No attempt on x86_64-darwin (full log) The following builds were skipped because they don't evaluate on x86_64-darwin: linbox Partial log (click to expand)
|
Does this really suffer the same blas issue as fflas_ffpack or do you just avoid the dependency on two different versions of blas? |
Success on x86_64-linux (full log) Attempted: linbox Partial log (click to expand)
|
looks like you forgot to update platforms. |
This does suffer from the same issue, building without this commit but with the fflas-ffpack commit fails tests. I don't know how many more sage dependencies need fixing, I just keep rebuilding and fixing what fails. |
Success on aarch64-linux (full log) Attempted: linbox Partial log (click to expand)
|
Okay, interesting. Maybe its just because of the indirect mixing of the two blas versions, maybe because the blas issue is more widespread and not an fflas_ffpack issue after all. Okay, excited to see sage build on darwin :) When you fix the platform list this should be ready for merge. |
fe23b1a
to
b99b7c5
Compare
@timokau Updated the platform list. |
@GrahamcOfBorg build linbox |
Success on aarch64-linux (full log) Attempted: linbox Partial log (click to expand)
|
Success on x86_64-darwin (full log) Attempted: linbox Partial log (click to expand)
|
Success on x86_64-linux (full log) Attempted: linbox Partial log (click to expand)
|
Thanks! |
Motivation for this change
Things done
sandbox
innix.conf
on non-NixOS)nix-shell -p nox --run "nox-review wip"
./result/bin/
)nix path-info -S
before and after)