Managing buildstream repositories, variants, platforms, ...



Hi,

I'd like to start a discussion on how to best manage hundreds if not thousands of projects, with a need for building on multiple platforms (think: OS, compiler toolchain, architecture, ...).  Note that subsets of the projects may only need to build on subsets of all platforms.

There may be variants of projects that expose different behaviour.  For example, a variant of APR with APR_POOL_DEBUG turned on.

There may also be variants of projects that are available in different versions, for instance, a current and a stable variant.

Now, multiple approaches spring to mind, with up- and downsides.
There's the option of creating a repository (or branch) per platform.  But this comes at the expense of having to keep them in sync.
There's the option of using variants, but this comes at the expense of additional specification, potentially in additional .bst files of type stack.  This comes with the possibility of a combinatorial explosion of variants built-in, which currently would lead to performance concerns.

I'm happy to expand more, but am curious what was initially envisioned when it comes to managing buildstream repositories?

Cheers,

Sander


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]