Multi-Arch and 29.x tree changes

These changes allow the build to work for both the 28.x and the 29.x branches and change the default back from ninja to gnu make (required for the 29.x tree).