Hi! Ludovic Courtès <l...@gnu.org> writes:
> Maxim Cournoyer <maxim.courno...@gmail.com> skribis: > >> The static output is equivalent to what other distributions commonly package >> as 'qemu-user-static'. >> >> * gnu/packages/virtualization.scm (qemu)[outputs]: Add a static output. >> [phases]{configure}: Configure the main build as an out-of-source build. >> Move >> all configure flags to ... >> [configure-flags]: ... here. The options explicitly enabling optional >> features are removed; the configure script does a good job at enabling all >> the >> features available based on the inputs present and this allows reusing the >> flags in variant packages such as qemu-minimal. >> {configure-user-static, build-user-static, install-user-static}: New phases. >> {patch-test-shebangs}: New phase, extracted from the configure phase. >> [native-inputs]: Add glib-static, pcre:static and zlib:static. >> (qemu-minimal)[arguments]: Reuse the configure-flags argument. Rewrite to >> use >> match instead of cond. > > Nice! > > Do you know how this affects build times? An option would be to make a > separate package rather than a separate output, if that helps. > > Thanks, > Ludo’. I've just ran two builds; the current qemu we have, and the one with the static output added: /gnu/store/aqkr351pph30za9v6bmd8gzpq5gbgz0c-qemu-5.1.0-doc /gnu/store/apxxj92gncx901z71kq0gwg48n2cils6-qemu-5.1.0 real 6m56.816s user 0m13.733s sys 0m0.677s /gnu/store/4bfj6zxl0yd2i3206v4rkwiv2nwyryxb-qemu-5.1.0-doc /gnu/store/7w04gv6m92n40dainn4s6xr3l20r90xw-qemu-5.1.0 /gnu/store/wqh2dyskzkl4vjn6harclyl317h4vfaf-qemu-5.1.0-static real 7m39.197s user 0m15.035s sys 0m0.841s That's about a 10% increase in build time, which is reasonable IMO. In the future we should definitely split our QEMU package into per-architecture variants as well as user vs system emulation, similar to what Debian does. A near 755.8 MiB package is cumbersome and I'm doubtful most of its users make use of the 35 architectures it boasts at a time :-). Thank you! Maxim