tech-pkg archive

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

Re: distbb: new helpful feature

Another megafeature is ready.
Now distbb can build multi-variant packages, i.e.
py{23,24,25}, apache{13,2,22} etc. modules.

No wonder. pbulk already does this.

But distbb implements things in a flexible way
(this is one of the main goal if it).

This new feature leads to one interesting side-effect.
Now you can pass distbb PKGPATHs to be built "enriched" with
building options. For example


Even more, "multi-option" packages are also supported.  If you want to
build several variants of mplayer, it is easy to do this now with
distbb. Example:


Test bulk build results

for the following "enriched" packages


and "multivariant" packages


This is just a test (last test bulk build before release)
but you can see how it works.

Full release description is below.

Suggestions, bug report etc. are welcomed as always
(constructive please).

Version 0.19.0, by Aleksey Cheusov, Sat, 13 Sep 2008 12:00:06 +0300

  Multivariant packages, that is packages/modules for different
  versions of Apache, Python and PHP can be built by "distbb". To
  enable this set PKG_UPDATE_SRC_SUMMARY variable to
    'pkg_src_summary -m ...'
  in your distbb.conf.  Because of this new feature per-package
  logging directories are changed from PKGPATH to PKGNAME. I don't
  like this (sometimes this makes untrivial the searching for logs of
  a particular packages) but I don't see any reasonable
  alternatives. AFAIK Joerg's pbulk does the same.

  "support for multivariant packages" feature has one interesting
  side-effect. PKGPATHs passed to distbb (by -f, -p options or
  LIST_ALL_PKGS_CMD variable in config file) can now be "enriched"
  with building options.
  Format for this "enriched" PKGPATH:
  For example:
  Spaces are also allowed inside "valueN", they should be encoded as
  symbol ~ (tilde).
  As a result you can build several variants of a given package
  with different options (see OPTIONS framework) by passing to distbb
  "enriched" PKGPATHs like the following

  Local copy of pkg_src_summary (i.e. META/pkg_src_summary.txt) is
  used for building packages and generating report. This means that
  after stage_init finished, you may change PKG_SRC_SUMMARY file (by
  another distbb bulk build, pkg_update_src_summary or whatever). no need for DISTBB_LOCK variable minor fixes (awk getline vs. end of file) if PKG_UPDATE_SRC_SUMMARY_CMD fails, its stderr is
  output to stderr too, not only to META/build_src_summary_log.txt
  (normally PKG_UPDATE_SRC_SUMMARY_CMD should always exit with exit
  status 0, failure means fatal error).

  Directories for logging (REPORT1_DIR/PKGNAME) are created as soon as
  they become necessary, not all at once at the beginning...
  Code for removing the empty logging directories is moved from
  stage_gen_report to stage_build

Best regards, Aleksey Cheusov.

Home | Main Index | Thread Index | Old Index