On Montag, 24. April 2023 15:01:41 CEST Frederic Crozat wrote:
Hi all,
As part of the setup of ALP products into build service, we would like to change Factory review policy regarding multi-specfile package:
Currently, packages containing multiple specfiles require creating links to another package, with the name of secondary specfiles.
For instance: on Build service, package foo contains: -foo.spec -bar.spec
Only foo.spec will be built. For bar.spec to be built, a linkpac is needed from foo => bar.
Creation of this link is handled by OBS when accepting a sr.
With ALP, our goal is to migrate source management to git backend in the (hopefully) near future (there won't be any immediate change on how to do package submissions, don't worry ;).
To do that and after discussing with Build Service project managers, it would be easier (and cleaner) to add to packages with multiple specfiles a _multibuild file to handle additional specfile, without the need of linkpac.
In the example above, package foo would contains: - foo.spec - bar.spec - _multibuild
_multibuild content: <multibuild> <flavor>bar.spec</flavor> </multibuild>
(there is no need to mention foo.spec).
If there is an agreement, all multi-spec Factory packages will need to be migrated, factory-auto bot will need to be adapted to reject submission without multi-spec.
Hopefully, this will be a one-time only cleanup.
Questions ? Comments ?
What I have been wishing for for a long time is a combinatorial expansion for multibuild flavors. E.g. in the science project there are currently several packages which build for different GCC versions and several MPI implementations. Currently, each has to be spelled out explicitly. There is also the case of using different spec files and multibuild at the same time. E.g. building the documentation often uses a vastly different dependency set (texlive, doxygen, graphviz, ...) as the build of the binary package(s). Its of course possible to put all into the same spec file, but the spec file gets more convoluted. It also causes rebuilds of the binary packages when just adjusting the documentation build, and vice versa. How about: <multibuild> <source file="foo.spec"> <flavor>baz</flavor> <flavor>bar</flavor> </source> <source file="bar.spec"/> </multibuild> This syntax would be backwards compatible with the current one. In case no source, but multiple flavors are specified, just keep the current behavior. Multiple source elements replaces package links. Regards, Stefan -- Stefan Brüns / Bergstraße 21 / 52062 Aachen phone: +49 241 53809034 mobile: +49 151 50412019