As per #2361 , the build now takes an additional parameter(fallback_device). This is an RFC to discuss the interface of the build.
In particular, there is a dangerous trend in adding compilation related options to the interface itself, we can imagine that additional parameters will get added when we want more options, making build and optimize harder to maintain, this happened in the past in XGBoost project, whose train interface have an explosive growth of options that we lose track of.
I want to propose a discussion on the build interface, in particular, if we can keep additional pass options in build config, and keep a clean, consistent build interface with target, target_host and params.
cc @zhiics @jroesch @yzhliu