Fix "pmbootstrap repo_missing networkmanager-qt"
How to test
This works only with this MR applied:
$ pmbootstrap repo_missing --arch x86_64 --built networkmanager-qt
Patches included in this MR
pmb.helpers.package.check_arch_recurse(): fix msg
Fix the 'a: (indirectly) depends on b' message, a and b were swapped.
pmb.helpers.package.check_arch(): split
Split the part that actually checks the arch against the arches list into pmb.helpers.pmaports.check_arches(arches, arch), and call it from pmb.helpers.package.check_arch(args, pkgname, arch, binary).
This will be used in a follow up commit, where we have already resolved the package data and only need to check the architecture.
pmb.helpers.package.get: prefer right arch binary
When the pmaport arch does not match, but there's a matching binary package, return the binary package instead of the pmaport.
This is needed to fix "pmbootstrap repo_missing" for x86_64 networkmanager-qt, which indirectly depends on mesa (and mesa needs to be taken from the binary packages for x86_64, not from the pmaports, see #1741 (closed)).
Fixes #1768 (closed).