Skip to content

allow customizing use of foreign packages and overriding of mappings

Daniel P. Berrangé requested to merge berrange/libvirt-ci:cross-override into master

The default behaviour is to resolve a package to a cross compiled impl, based on the mapping cross policy. There can be cases, however, where the build process needs both the native build and the cross build concurrently, or where it only wants the native bujild.

To support this we extend the project mappings to allow a syntax:

      packages:
        - glib2
        - name: glib2
          cross_expansion: both|native|foreign

This controls how we expand the package mapping when doing cross builds

We further support overriding the mappings, for example, if a project knows a particular package in the distro is not acceptable, it can blank it out

    packages:
     - name: perl-Pod-Simple
       mapping:
         default: perl
         pkg: p5-Pod-Simple
         rpm: perl-Pod-Simple
         Fedora34:

This also lets the project define entirely new mappings which don't exist at all in the common mappings.yml file

Edited by Daniel P. Berrangé

Merge request reports