No documentation for the state of patches for dependencies of Julia

FWIW, for the Fedora package, I bundle LLVM and libuv, which are the two dependencies for which Julia-specific patches are really essential (Julia even has a fork for libuv). For other deps I just use the system libraries and things work fine. (Note that Fedora has an ILP64 OpenBLAS with symbol names suffixed with 64_, which other distributions generally lack, though.)

In general, except for the libuv fork, I think that patches are moved upstream. For example, if you look at the p7zip patches you mention, the files give URLs to the upstream bug tracker. If that’s not the case then it’s probably a mistake. LLVM generally moves too fast, so that by the time Julia devs have developed patches for the current release LLVM has moved to the next one and won’t backport them (which I would say is a problem with their development process). Patches for older LLVM versions are probably kept just so that it’s still possible to test these versions e.g. to check performance regressions; but you shouldn’t care about that for packaging.

If that’s useful, the RPM .spec file is here.

5 Likes