Rename <xlocale.h> back to <sys/_locale.h>

libX11 provides <X11/Xlocale.h>.  The build of libX11 itself adds
include/X11 to the compiler's include path.  This results in a name
collision with /usr/include/xlocale.h on case-insensitive filesystems.

Commit 90e35b1eb3 renamed sys/_locale.h to xlocale.h in March 2017 under
the assumption that we should provide the locale_t type in the same file
as on Linux, FreeBSD, and Darwin.

A few weeks later (June 2017), glibc removed the xlocale.h file in favor
of bits/types/locale_t.h, which shouldn't be included directly anyway.

For reference and the reasoning, see
https://sourceware.org/git/?p=glibc.git;a=commit;h=f0be25b6336d

Given the above, revert 90e35b1eb3 and
fix additional usage of xlocale.h.
This commit is contained in:
Corinna Vinschen
2019-06-12 22:31:14 +02:00
parent 000f2409b1
commit ad101bcb0f
14 changed files with 23 additions and 14 deletions

View File

@ -32,7 +32,7 @@
#include <sys/cdefs.h>
#include <sys/types.h>
#if __POSIX_VISIBLE >= 200809
#include <xlocale.h>
#include <sys/_locale.h>
#endif
__BEGIN_DECLS

View File

@ -16,6 +16,9 @@ What changed:
- If a SA_SIGINFO signal handler changes the ucontext_t pointed to by
the third parameter, follow it after returning from the handler.
- Eliminate a header file name collision with <X11/XLocale.h> on case
insensitive filesystems by reverting <xlocale.h> back to <sys/_locale.h>.
Bug Fixes
---------

View File

@ -8,6 +8,12 @@
<itemizedlist mark="bullet">
<listitem><para>
Eliminate a header file name collision with &lt;X11/XLocale.h&gt; on
case insensitive filesystems by reverting &lt;xlocale.h&gt; back to
&lt;sys/_locale.h&gt;.
</para></listitem>
<listitem><para>
FIFOs can now be opened multiple times for writing.
</para></listitem>