This project is archived. Its data is read-only.

Dpkg-build should be able to use quilt from host-tools

Hi, I've added this issue under buildstream's tracker despite it being for code in the bst-external project because the bst-external issue tracker is easily overlooked.

Currently, for a dpkg-build element to apply patches, it must use a version of quilt that's part of the build. This is extremely inconvenient if quilt is part of a circular dependency.

Equally, it should be possible to use a version of quilt that's built by buildstream, in case either:

  • The host cannot have quilt (if buildstream ever runs on Windows, this won't be available)
  • Quilt appreciably changes in behaviour between versions, so we have a version of quilt built by buildstream that we need to use.

My suggestion is:

  • Add a config field to the dpkg-build element (e.g. "use-host-quilt").
    • If left blank, it will use the host's quilt if found.
    • If True, it will raise an error if the host does not have quilt.
    • If False, it will use quilt installed on the system.
  • If we're using the host's quilt to apply patches, we will need to replace the "patch" variable with a no-op before running configure-commands.

I am very open to reasons why we don't need to support running quilt both ways, since it adds a fair bit of complexity for a hypothetical we haven't yet encountered.

Assignee Loading
Time tracking Loading