]> git.ipfire.org Git - thirdparty/glibc.git/commit
Auto-generate libc-modules.h
authorSiddhesh Poyarekar <siddhesh@redhat.com>
Thu, 21 Aug 2014 06:14:54 +0000 (11:44 +0530)
committerSiddhesh Poyarekar <siddhesh@redhat.com>
Wed, 5 Nov 2014 10:39:39 +0000 (16:09 +0530)
commit8d89863a4d792a4441ae79bf81afcfcfacc68f3f
tree0902cb872550d7beda5e34eaabac7df837ebb28d
parent3048eb130dcf42893803a5fffa5299b22a31117b
Auto-generate libc-modules.h

Remove libc-modules.h from the tree and auto-generate it from
soversions.i and a new file build.list.  Macros generated from
soversions.i have lower values starting from 1, while those from
build.list start from a special value MODULE_OTHER_BEGIN, which has a
high enough value (1000).  This allows us to conveniently
differentiate between the versioned libraries and other built modules,
which is needed in errno.h and netdb.h to decide whether to use an
internal symbol or an external one.

Verified that generated code remains unchanged on x86_64.

* Makeconfig (module-cppflags): Include libc-modules.h for
everything except shlib-versions.v.i.
(CPPFLAGS): Use it.
(before-compile): Add libc-modules.h.
($(common-objpfx)libc-modules.h,
$(common-objpfx)libc-modules.stmp): New targets.
(common-generated): Add libc-modules.h and libc-modules.stmp.
($(common-objpfx)Versions.v.i): Depend on libc-modules.h.
* build.list: New file.
* include/libc-symbols.h: Don't include libc-modules.h.
* include/libc-modules.h: Remove file.
* scripts/gen-libc-modules.awk: New script to generate
libc-modules.h.
* sysdeps/unix/Makefile ($(common-objpfx)sysd-syscalls):
Depend on libc-modules.stmp.
Makeconfig
build.list [new file with mode: 0644]
include/libc-modules.h [deleted file]
include/libc-symbols.h
scripts/gen-libc-modules.awk [new file with mode: 0644]
sysdeps/unix/Makefile