  Evolving software is challenging, even more when it exists in many different
variants. Such software evolves not only in time, but also in space--another
dimension of complexity. While evolution in space is supported by a variety of
product-line and variability management tools, many of which originating from
research, their level of evaluation varies significantly, which threatens their
relevance for practitioners and future research. Many tools have only been
evaluated on ad hoc datasets, minimal examples or available preprocessor-based
product lines, missing the early clone & own phases and the re-engineering into
configurable platforms--large parts of the actual evolution lifecycle of
variant-rich systems. Our long-term goal is to provide benchmarks to increase
the maturity of evaluating such tools. However, providing manually curated
benchmarks that cover the whole evolution lifecycle and that are detailed
enough to serve as ground truths, is challenging. We present the framework
vpbench to generates source-code histories of variant-rich systems. Vpbench
comprises several modular generators relying on evolution operators that
systematically and automatically evolve real codebases and document the
evolution in detail. We provide simple and more advanced generators--e.g.,
relying on code transplantation techniques to obtain whole features from
external, real-world projects. We define requirements and demonstrate how
vpbench addresses them for the generated version histories, focusing on support
for evolution in time and space, the generation of detailed meta-data about the
evolution, also considering compileability and extensibility.
