Cross-compile build environs usually screw up my normal host environ more than I like, and compete with each other, so I'm putting it in a container.
I'm not sure why a container-based build isn't the default recommendation on the dd-wrt or OpenWrt forums. But here's mine:
@finity we're usually doing --mount for bind-mounts these days
It's my first container-based build environ. I'm not sure what other folks do, but I'm mounting the source dir in the container (with -v), changing to that dir (with -w), and running the compiler. When that's all automatic via make, it's seamless and easy. So I think I like it.