|
This will break things. It's a known issue. Patches to other
packages will come later, to adapt them to the new API.
To work around brokenness, there needs to be *two* different
headers:
1. one to be used before including system headers, that maximizes
visibility by enabling system-dependent feature test macros
(that will be tested by system headers)
2. one to be used after including system headers, that performs
preprocessor tests and defines.
skalibs/nonposix.h is the first one.
Previously, there was no second one, and the tests were scattered
all over. There was a strnlen declaration in skalibs/posixplz.h
(which serves a totally different function: declaring things that
should be in POSIX, but *are not*, i.e. working around problems in
the standard, instead of problems in systems failing to respect
the standard), a build-time sysdep for error.h, #defines for
MSG_NOSIGNAL, etc. etc.
skalibs/posixishard.h now is the second one, and centralizes
all the tests.
As a result, the eproto sysdep is unnecessary and has been removed.
skalibs/error.h is now a static header, it is not built anymore.
|