-
Notifications
You must be signed in to change notification settings - Fork 572
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
added recipe for blockSQP #10433
base: master
Are you sure you want to change the base?
added recipe for blockSQP #10433
Conversation
B/blockSQP/build_tarballs.jl
Outdated
" | ||
|
||
#platforms = vcat(libjulia_platforms.(julia_versions[julia_versions .>= v"1.7.0"])...) |> expand_cxxstring_abis | ||
platforms = vcat(libjulia_platforms.(julia_versions)...) |> expand_cxxstring_abis |
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.
Below you put compat for julia to v1.7, you likely want to filter only Julia v1.7+ versions in julia_versions
. Also, any specific reason for supporting v1.7 at this point? Would you consider v1.10 instead (current LTS). That'd further reduce the number of builds here.
B/blockSQP/build_tarballs.jl
Outdated
Dependency("libblastrampoline_jll"),#; compat="5.4.0"), | ||
Dependency("CompilerSupportLibraries_jll"), | ||
Dependency("libcxxwrap_julia_jll"), |
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 must specify compat bounds for lbt and libcxxwra
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 added compat bounds on libblastrampoline to 5.4, but something requires its version to be 3.0.4, which leads to the failed builds. Do you have an idea what causes this?
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 can't get it working with 5.4.0 on lbt. Now, I went back to 3.0.4, and locally it builds for me.
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 can't get it working with 5.4.0 on lbt
Care to elaborate?
B/blockSQP/build_tarballs.jl
Outdated
preamble = if os() === "macos" | ||
raw"cd /usr/share/cmake/Modules/Compiler/; find . -name '._*' -exec rm {} \;" | ||
else | ||
raw"" | ||
end |
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.
What is this doing? You really shouldn't need to go in and delete things from the system like this.
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.
This was a suggested fix to a problem in BinaryBuilder for people on MacOS, see this issue. I removed it now as we can do without it.
B/blockSQP/bundled/CMakeLists.txt
Outdated
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.
IMO, both this file and the cpp file would be better placed inside a separate git repository that you then include as another GitSource. Yggdrasil is not really meant to hold the entire source code of a project, only the build script and small patches needed to make it work.
I would suggest modifying the recipe to use the new way of linking against LBT:
|
Co-authored-by: Ian McInerney <[email protected]>
Co-authored-by: Ian McInerney <[email protected]>
Co-authored-by: Ian McInerney <[email protected]>
Co-authored-by: Ian McInerney <[email protected]>
Hmm, is this some interaction between the LBT dependency and the |
So, I had a look at all other build scripts in Yggdrasil, and this is the only one that uses libcxxwrap, libjulia and libblastrampoline together. There were others that used the first two and then OpenBLAS_jll. I tried to link against OpenBLAS_jll, but then again I was required to use a compat=0.3.13 for it, a version which is from August 2021. |
For testing purposes, I deployed the jll-package without the compat bound on libblastrampoline to this repository, and successfully tested the wrapper code under MacOS and Linux with Julia version 1.10. Do we really need the compat bound on libblastrampoline? |
I wrote a wrapper for blockSQP, an NLP solver using a SQP method which builds upon the open-source QP solver QPOASES, for which I've recently added qpOASES_jll.