... just like there are libsingular_julia_jll and libpolymake_julia_jll, see
Of course this is not strictly necessary, but on the long run it improves the user experience dramatically: users don't need a C++ compiler, there are no ABI problems, etc.
However, I'd do it a bit differently than what we did for the two aforementioned JLLs: they moved the C++ sources into separate repositories. With what I know now, I think this was a mistake. The source should stay in this repository.
Also, there should be a way to easily test updates to the C++ sources w/o having to do complicated things with the JLL. This can be done, and I've done it with GAP.jl. Roughly the idea is to record in libnormaliz_julia_jll a checksum of the source code used to make it; if the source code diverges, then fall back to using the local C++ code (so one has to compile it etc. -- but this is only relevant for developers of this package, who can be expected to have a compiler around etc.). I can provide additional details on how to do this if wanted.
... just like there are libsingular_julia_jll and libpolymake_julia_jll, see
Of course this is not strictly necessary, but on the long run it improves the user experience dramatically: users don't need a C++ compiler, there are no ABI problems, etc.
However, I'd do it a bit differently than what we did for the two aforementioned JLLs: they moved the C++ sources into separate repositories. With what I know now, I think this was a mistake. The source should stay in this repository.
Also, there should be a way to easily test updates to the C++ sources w/o having to do complicated things with the JLL. This can be done, and I've done it with GAP.jl. Roughly the idea is to record in
libnormaliz_julia_jlla checksum of the source code used to make it; if the source code diverges, then fall back to using the local C++ code (so one has to compile it etc. -- but this is only relevant for developers of this package, who can be expected to have a compiler around etc.). I can provide additional details on how to do this if wanted.