Package: debhelper
Severity: wishlist

Currently, you cannot provide a third-party build system and have it
"auto-load" like the built-in build systems.  As a consequence, we do
not have as smooth integration as we do with dh addons.  This makes it
temping to "abuse" a dh addon to force a particular build system (or
replace dh_auto_* with custom tools that are basically a build system).

Obviously, this is suboptimal.

Some things to consider from a solution:

 * The solution should be de-centralized and support people adding a new
   build system without having to register the build system inside
   debhelper (as we do now).

 * The solution would ideally support "dh_assistant
   which-build-system", which would help lintian-brush.

   - Or at least be declarative enough that lintian-brush/janitor can
     tell which packages to install such that dh_assistant will provide
     reliable results.

   - TODO: Clarify with Jelmer what would work best for the janitor/
     lintian-brush. Presumably it is not feasible for the lintian-brush
     to install packages (but it might be for the janitor).

 * The solution should be deterministic in its build system selection.
   Furthermore, it should preferably not pick different build systems in
   an unclean environment vs. a clean chroot (assuming well-behaved
   implementations).

 * If possible, the solution should ensure that build dependencies are
   available or advise which build-dependencies are needed so that
   lintian / lintian-brush can detect and fix missing build-
   dependencies.  The latter would also be useful for built-in build
   systems like "meson+ninja".

   - The advisement can be via dh_assistant or via declarative
     means.

Reply via email to