Every layer of abstraction that you introduce, every layer of mapping that you put in your code, has a cost. It has a cost in implementation, it has a cost in that it reduces readability and maintanability of code, and it has a cost in that every additional layer is a potential new source of bugs.
Obviously there are benefits to it as well, namely expanded number of users, and the ability to run on "other" Unixes.
Time and resources are finite, and that's certainly true for free software projects. Developer of upstream projects, whether they do it explicitly and methodically, or implicitly and without realising, do a cost/benefit analysis to see whether supporting those other systems is worth it. For a long time, the answer was yes, as the BSDs did offer genuine advantages over Linux, and they had a non-insignificant userbase.
With time, things have changed. Research and development is now increasingly happening on Linux and the percentage of non-Linux users has diminished. To incur all those costs just to make life easy for less than 2% of the userbase is a scenario that is increasingly hard to justify for most projects.