mirror of
https://github.com/HeyPuter/gex.git
synced 2026-11-13 20:12:43 -10:00
- `.symver impl, name@@V`: the default version's name becomes an alias of impl (C), as programs link to it (fuse's fuse_parse_cmdline, lksctp's sctp_connectx); older versions' names are still left out. - A shared library may leave symbols to the program or another library, bound at load (libfl's main calls yylex), as ld -shared does; -z defs or --no-undefined still asks for every one defined. - features.h over musl's: _GNU_SOURCE gives the LFS64 names (pread64, off64_t), as glibc's does (libpciaccess). - Warnings, not errors, where GCC warns and clang errs: a size_t * for a uint32_t * (size_t is unsigned long only on wasm32; kmod), `register` in C++17 (libGLU), an unused static inline under -Werror (keyutils). - -v on a link is verbose, not a query: CMake's compiler ABI check linked nothing and every CMAKE_SIZEOF_VOID_P was empty (libjpeg-turbo). driver.sh checks each. Co-Authored-By: Claude Opus 5.5 <[email protected]> Claude-Session: https://claude.ai/code/session_40f26e8988a74ea098d8bc80ff68287c
10 lines
422 B
C
10 lines
422 B
C
/* gexcc: features.h over musl's. glibc's _GNU_SOURCE turns on the LFS64
|
|
* names (pread64, off64_t, stat64), and programs written on glibc call them
|
|
* after defining _GNU_SOURCE alone; musl gives them only for an explicit
|
|
* _LARGEFILE64_SOURCE, as plain aliases (its off_t is 64-bit already). */
|
|
#include_next <features.h>
|
|
|
|
#if defined(_GNU_SOURCE) && !defined(_LARGEFILE64_SOURCE)
|
|
#define _LARGEFILE64_SOURCE 1
|
|
#endif
|