Then you end up with "abstraction layer" like autoconf, and the "cure" is MUCH worse than the disease.
A) autoconf is not similar at all to an API layer hiding hairiness in its domain
B) autoconf becoming terrible does not mean that portability abstractions are necessarily terrible