New comment by xelxebar on void-packages repository https://github.com/void-linux/void-packages/pull/14758#issuecomment-536168266 Comment: @Chocimier Thanks for replying. 1. Excellent. 2. Fair enough. If there is no need to distinguish versions, then I guess it makes sense to remove the `${version}` directory from the install paths. 3. Hrm. Not sure I follow. The issue is that upstream supports *both* AVX and non-AVX architectures; however, the crossbuilds are not fine-grained enough to distinguish between those targets. Unless I am mistaken, this means we are forced to detect AVX support at install time. Unfortunately, upstream seems to be using `fts.h` which musl explicitly chooses to not support. The [musl FAQ][0] gives a rationale and implies that the only way to support musl is by completely removing said libc calls. In general, upstream seems to be interested in supporting a variety of build targets. The build system, however, implicitly assumes that the build host and target are the same, and it is doing some dirty things as well, like parsing CC to set different compile flags for gcc. This all makes cross-compilation break horribly, of course. I spent a long time munging patches to try and get things working, but I honestly don't really know what I'm doing. 6. One more question. Upstream has a collection of scripts they call 'addons'. These aren't tarred up at all, and require a separate, somewhat non-obvious installation from git. However, the J documentation acts as if these addons are installed by default. Any ideas on how to handle this? [0]:https://wiki.musl-libc.org/faq.html