[Build-common-hackers] Bug#719489: more efficient builds and support for staged builds for cdbs based packages
Matthias Klose
doko at debian.org
Mon Aug 12 12:22:21 UTC 2013
Package: cdbs
originally filed here at
https://bugs.launchpad.net/ubuntu/+source/gtk+3.0/+bug/1207029
Building gtk+3.0, I see a few things which do matter for a bootstrap of the
package on a new (slowish, because it's simulated) architecture.
Support for staged builds (DEB_STAGE=stage1 dpkg-buildpackage ...):
- The package b-d's on colord and cups, creating a cyclic dependency. The
staged build should configure without these b-d's and succeed.
cdbs task: provide infrastructure to disable building packages which
are not built for a staged build..
- The package builds udebs, doubling the build time. It would be nice
if the package could be built without udebs (not sure if special cdbs
support is needed, I only did remove the packages in the control file
and references in the rules file.
cdbs task: provide infrastructure not to build some binary packages
when a flavour is not built (association between a flavour and binary
packages is probably needed).
Besides that
- Please check if the package can be built in parallel, and support
DEB_BUILD_OPTIONS="parallel=<N>"
cdbs task: warn immediately when the cdbs files are sourced that
the build is not done in parallel, unless there is a macro which
does explain why the build it not done in parallel, e.g.
CDBS_BO_PARALLEL_BUILD_REASON = upstream build system doesn't work with
parallel build
- Please check if a binary-arch only build needs to build the documentation.
cdbs task: allow a package to specify BUILD_INDEP_CONFIGURE_OPTIONS
and BUILD_ARCH_CONFIGURE_OPTIONS e.g.
BUILD_INDEP_CONFIGURE_OPTIONS = --enable-text-docs --enable-html-docs
BUILD_ARCH_CONFIGURE_OPTIONS = --disable-text-docs --disable-html-docs
- Please check if the tests need to be built when building with
DEB_BUILD_OPTIONS="nocheck". I see that a considerable amout
of time is spent building the tests.
cdbs task: probably none
- Please document which b-d's are only needed to run the testsuite.
cdbs task: probably none
- Please check how to cross build the package.
cdbs task: probably none, however in general it would be good to
specify that a package can be cross built.
It would be nice to address all of these, and then try to propose that package
as an example how to build other packages in the gtk stack.
Thanks, Matthias
More information about the Build-common-hackers
mailing list