The linux builds are failing for a while after some re-arrangement of header order.
It happens that config.h cannot work after linux features.h, so the former should be included before the later. An #error directive checks and protect against this case.
One possible workaround could be to move #include "config.h" ahead in a few files...