[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

build profiles support of buildd infrastructure



Hi,

with dpkg 1.17.2 we now have support for build profiles in dpkg. Build profiles
allow to enable or disable dependencies and build or not build binary packages
when one or more build profiles are activated. For build dependencies this
looks like this:

    Build-Depends: foo, bar-doc <!profile.stage1>

and when the environment variable DEB_BUILD_PROFILES is set to "stage1" then
dpkg-checkbuilddeps will ignore the dependency on bar-doc. Everything is
written down here: https://wiki.debian.org/BuildProfileSpec

Before packages with above syntax can be uploaded, we have to make sure that
wanna-build, dak and sbuild support them. This of course does not mean that
they must be able to understand the DEB_BUILD_PROFILES variable or must be able
to build packages as if a profile was activated. It means that they must be
able to parse the Build-Depends line with the new <> syntax without throwing an
error. In the most simple case this means that they just ignore whatever it
says inside the <> brackets. If the full spec can be easily supported: even
better!

I wrote a patch for sbuild [1] which the maintainer still has to react upon but
it is a very simple patch because sbuild uses libdpkg for parsing the
Build-Depends line.

I have no clue about wanna-build or dak so I wouldnt even know whether uploaded
packages fail at all with the new Build-Depends syntax. If they rely on libdpkg
to parse the Build-Depends line then only minimal changes might be needed. If
they rely on apt, then things will probably work out fine as well once the
patch I submitted [2] is integrated. Same goes for dose3 which had support for
the above syntax since version 3.1.

But maybe more adaption is needed? If yes, could you point me to the relevant
pieces of code?

Thanks a lot!

cheers, josch

[1] http://bugs.debian.org/731798
[2] http://bugs.debian.org/661537#20


Reply to: