Unify many bits/mman.h headers.
commitd3a43e49f342c4663af0fff9d95000cfe26867c3
authorJoseph Myers <joseph@codesourcery.com>
Tue, 18 Sep 2018 16:12:56 +0000 (18 16:12 +0000)
committerJoseph Myers <joseph@codesourcery.com>
Tue, 18 Sep 2018 16:12:56 +0000 (18 16:12 +0000)
tree7f7fe133bb1348fc03dda4ca9d73d2d10a753e7c
parent50bc59ca4dba7f82b74f86abc7bc75848cea6d6e
Unify many bits/mman.h headers.

Many bits/mman.h headers for Linux architectures have exactly the same
contents, up to whitespace, comments and the number of leading 0s on
constants.  Specifically, this applies to architectures that, in the
Linux kernel, either have no uapi/asm/mman.h, or have one that
includes asm-generic/mman.h without any changes or additions relevant
to glibc (this last case is the one that applies to Arm).

It's not useful to have to duplicate the set of MAP_* constants in
glibc for all such architectures and any new architectures with that
property.  Thus, this patch creates a generic
sysdeps/unix/sysv/linux/bits/mman.h and removes all the
architecture-specific versions that become unnecessary.

Further unification remains possible after this patch.  For example,
the new bits/mman.h could become bits/mman-map-flags-generic.h so that
it could also be used by architecture-specific bits/mman.h headers on
architectures that use the generic flags but add architecture-specific
ones to them.  That would allow this common set of MAP_* definitions
to be used on ia64 and x86 as well (architectures that include
asm-generic/mman.h from their own uapi/asm/mman.h but define
additional MAP_* values of their own).

Tested with build-many-glibcs.py.

* sysdeps/unix/sysv/linux/bits/mman.h: New file.
* sysdeps/unix/sysv/linux/aarch64/bits/mman.h: Remove.
* sysdeps/unix/sysv/linux/arm/bits/mman.h: Likewise.
* sysdeps/unix/sysv/linux/m68k/bits/mman.h: Likewise.
* sysdeps/unix/sysv/linux/microblaze/bits/mman.h: Likewise.
* sysdeps/unix/sysv/linux/nios2/bits/mman.h: Likewise.
* sysdeps/unix/sysv/linux/riscv/bits/mman.h: Likewise.
* sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise.
* sysdeps/unix/sysv/linux/sh/bits/mman.h: Likewise.
ChangeLog
sysdeps/unix/sysv/linux/aarch64/bits/mman.h [deleted file]
sysdeps/unix/sysv/linux/arm/bits/mman.h [deleted file]
sysdeps/unix/sysv/linux/bits/mman.h [moved from sysdeps/unix/sysv/linux/riscv/bits/mman.h with 85% similarity]
sysdeps/unix/sysv/linux/m68k/bits/mman.h [deleted file]
sysdeps/unix/sysv/linux/microblaze/bits/mman.h [deleted file]
sysdeps/unix/sysv/linux/nios2/bits/mman.h [deleted file]
sysdeps/unix/sysv/linux/s390/bits/mman.h [deleted file]
sysdeps/unix/sysv/linux/sh/bits/mman.h [deleted file]