46 lines
889 B
Plaintext
46 lines
889 B
Plaintext
/* Hide all symbols except a few required ones.
|
|
*
|
|
* Otherwise LLVM symbols conflict with Mesa llvm pipe, boost symbols conflict
|
|
* with Luxrender, etc. */
|
|
{
|
|
global:
|
|
/* Essential symbols for the program to start and exit. */
|
|
_fini;
|
|
_init;
|
|
/* Needed for Python modules to work. */
|
|
Py*;
|
|
_Py*;
|
|
/* Needed for sanitizers. Based on:
|
|
* llvm/compiler-rt/lib/sanitizer_common/scripts/gen_dynamic_list.py. */
|
|
__asan*;
|
|
__lsan*;
|
|
__tsan*;
|
|
__ubsan*;
|
|
__sanitizer*;
|
|
/* Memory allocation (new, delete, malloc). */
|
|
__Znw*;
|
|
__Zna*;
|
|
__Zdl*;
|
|
__Zda*;
|
|
aligned_alloc*;
|
|
calloc*;
|
|
free*;
|
|
mallinfo*;
|
|
malloc*;
|
|
mallopt*;
|
|
memalign*;
|
|
memcpy*;
|
|
posix_memalign*;
|
|
pthread_*;
|
|
pvalloc*;
|
|
realloc*;
|
|
realpath*;
|
|
sched_*;
|
|
valloc*;
|
|
/* Needed on FreeBSD. Uses wildcard to avoid linker error when symbols are not found. */
|
|
__progname*;
|
|
environ*;
|
|
local:
|
|
*;
|
|
};
|