fix: misc build improvements, removal of opam prefix#196
Conversation
|
This CI failure exposes a latent instance of #149. Presently, the test runner relies on the build configure-time hardcoded paths to find tools for testing, instead of liballocs correctly making itself available through the system. I'd argue that the test runner should represent a 'post-install' state, where liballocs tools are reachable from the env path. 'cilly' should resolve, though I'll push a fix that uses the full path as with other tools for now. In an ideal scenario, the test runner would only have runtime dependencies available. This is blocked by make install not working correctly, and also because #178: lib-test relies on rebuilding liballocs, thus it needs some build-time dependencies: presently, this is solved by over-equipping the test runner. This defeats the point of having the two separate CI stages: why waste time persisting a workspace when we could run tests within the build job? (I have a fix for #149 somewhere on my fork, part of the Debian package build system. I'll bring that up-to-date one day: now we can actually run with commonly-bundled compiler versions: fairly modern gcc and clang with dwarf4. ) I suppose the right path here is to patch the makefile so Cilly's absolute path is used within the tests; that much is clear. But I don't see the point of maintaining two jobs (build -> test) if both need the same environment (persisted build artefacts and build-time dependencies). We could just merge them into one build&test, save some CI time and the complexity of having two dependency lists. @stephenrkell, what do you think? |
No description provided.