start to adapt build to multiple backends