Closed sobolevnrm closed 4 years ago
I asked @lwwilson1 to see if he could make a "Release" of the mesh_routines repository that we could like to instead of the binaries. I think we can use CMake and FetchContent commands to get the versions we want.
I modified the CMakeLists.txt to use the file DOWNLOAD rather than use the git submodule for the mesh_routines. This seems to work and if @lwwilson1 changes the mesh_routines repo to a release with assets, we can point the file DOWNLOAD to those assets directly.
I made a release that moved the executables to release assets. I've messed around a bit and the following pattern should work for getting them. There might be a smarter/ more canonical way, but this seems to do the job:
include(FetchContent)
FetchContent_Declare( mesh_routines URL https://github.com/lwwilson1/mesh_routines/releases/download/v1.0/executables.tar.gz )
The unzipped executables are then located in
Rather than download all the executables every time a build is done, it is easier/faster to issue a single command for downloading the msms or NanoShaper binary for the current build like:
file(DOWNLOAD ${FULL_URL_PATH} "${EXECUTABLE_OUTPUT_PATH}/${MSMS_RAW_BINARY_NAME}"
Can you add each of the individual executables as assets?
I've made a new release v1.5 that has each of the executables added separately. I've kept the names the same on all the executables as before, except where a name conflict occurred (NanoShaper to NanoShaper_OSX and NanoShaper_Linux64).
Looking through the old CMake I also noticed only the win32 executables were ever copied for Windows, so I've only included those. I don't have access to a windows computer to test (last time was probably about 4 years ago at PNNL, actually) but I vaguely recall there being some reason why we only ended up ever grabbing the win32 executable.
Sometime in the future (not really a timetable for this at the moment), I'd like to directly integrate NanoShaper into TABi-PB so none of this would even be necessary, but if I recall correctly PB-SAM also makes use of the msms executable, and possibly the NanoShaper one.
This works great and made the CMakeLists.txt file so much easier to read and maintain. Thanks!
Excellent! Should we close the issue or are there other binaries to address?
Thanks!
On Mon, Jun 8, 2020 at 9:37 AM Darren Curtis notifications@github.com wrote:
This works great and made the CMakeLists.txt file so much easier to read and maintain. Thanks!
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/Electrostatics/apbs-pdb2pqr/issues/601#issuecomment-640739826, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAOX7WG4BCXK4YWLFNELJE3RVUHS3ANCNFSM4NPG2O4A .
There are no other binaries or warnings from Github anymore. This issue was already closed. We just made it better.
Nice -- thanks!
On Mon, Jun 8, 2020 at 9:56 PM Darren Curtis notifications@github.com wrote:
There are no other binaries or warnings from Github anymore. This issue was already closed. We just made it better.
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/Electrostatics/apbs-pdb2pqr/issues/601#issuecomment-641027839, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAOX7WBUHOM7J4QM2YQYDWDRVW6INANCNFSM4NPG2O4A .
GitHub does not like binaries in its repos. We should consider replacing the mesh-specific tools in https://github.com/Electrostatics/apbs-pdb2pqr/tree/master/apbs/externals with binary releases.