Without --host-architecture, the second build-dep pass re-resolves the whole Build-Depends field for the native architecture: apt swaps host-arch -dev packages for native ones (e.g. libcurl4-gnutls-dev, whose arch-differing curl-config makes dpkg refuse the co-install) and breaks the cross build environment. Per dpkg-checkbuilddeps, both Build-Depends and Build-Depends-Indep resolve for the host architecture in cross mode, so pass --host-architecture to the second pass as well. Skip the pass entirely when the source declares no Build-Depends-Indep. Add an end-to-end regression test building a package that declares libdb-dev in both fields and links a host-arch binary against it: the test only passes if the arch-indep pass did not swap the arm64 -dev packages for native ones.