buildstream/plugins/elements: Add *-global and *-local configuration variables

I was not convinced about this but after spending some time to figure out the exact yaml format I have to use for bst to pick up the configure options (see freedesktop-sdk/json2bst#28 (closed)), I think this is worth

Also, I think is a bit nicer to have elements defined like this:

kind: autotools
depends:
- base.bst
variables:
  conf-local: |
    --disable-static \
    --enable-xkb \
    --disable-xprint
sources:
- kind: tar
  url: http://xcb.freedesktop.org/dist/libxcb-1.12.tar.bz2
  ref: 4adfb1b7c67e99bc9c2ccb110b2f175686576d2f792c8a71b9c8b19014057b5b

instead

kind: autotools
depends:
- base.bst
sources:
- kind: tar
  url: http://xcb.freedesktop.org/dist/libxcb-1.12.tar.bz2
  ref: 4adfb1b7c67e99bc9c2ccb110b2f175686576d2f792c8a71b9c8b19014057b5b
config:
  configure-commands:
  - |
    %{autogen}
  - |
    %{configure} \
    --disable-static \
    --enable-xkb \
    --disable-xprint

This will allow to define:

  • global configuration parameters that will be used to all the elements using that build system
  • local configuration parameters that will override the global ones

Left *-extra for compatibility

Edited by Javier Jardón

Merge request reports

Loading