%include libc { GLIBC_2.0 { # functions with required interface outside normal name space __xpg_basename; # functions used in inline functions or macros __strtod_internal; __strtof_internal; __strtold_internal; __strtol_internal; __strtoll_internal; __strtoul_internal; __strtoull_internal; # functions formerly so used (compatibility symbols) __strtoq_internal; __strtouq_internal; # compatibility symbol __secure_getenv; # a* a64l; abort; abs; atexit; atof; atoi; atol; atoll; # b* bsearch; # c* canonicalize_file_name; clearenv; # d* div; drand48; drand48_r; # e* erand48; erand48_r; exit; # g* getenv; getsubopt; # i* initstate; initstate_r; # l* l64a; labs; lcong48; lcong48_r; ldiv; llabs; lldiv; lrand48; lrand48_r; # m* mblen; mbrlen; mbrtowc; mbsinit; mbsnrtowcs; mbsrtowcs; mbstowcs; mbtowc; mcount; mrand48; mrand48_r; # n* nrand48; nrand48_r; # o* on_exit; # p* putenv; # q* qsort; # r* rand; rand_r; random; random_r; realpath; rpmatch; # s* seed48; seed48_r; setcontext; setenv; setstate; setstate_r; srand; srand48; srand48_r; srandom; srandom_r; step; strfmon; strtod; strtof; strtol; strtold; strtoll; strtoq; strtoul; strtoull; strtouq; system; # u* unsetenv; # w* wcstombs; wctomb; } GLIBC_2.1 { # a* addseverity; # f* fmtmsg; # g* getcontext; # m* makecontext; # s* strtoimax; strtoumax; swapcontext; } GLIBC_2.1.1 { # _* _Exit; # i* imaxabs; imaxdiv; } GLIBC_2.1.3 { # used by new G++ ABI __cxa_atexit; __cxa_finalize; } GLIBC_2.3 { # Silent change in SUS. realpath; } GLIBC_2.8 { qsort_r; } GLIBC_2.10 { quick_exit; __cxa_at_quick_exit; } GLIBC_2.17 { secure_getenv; } GLIBC_2.18 { __cxa_thread_atexit_impl; } GLIBC_2.24 { quick_exit; } GLIBC_2.25 { # s* strfromd; strfromf; strfroml; getrandom; getentropy; } %ifdef FLOAT128_VERSION FLOAT128_VERSION { strfromf128; strtof128; strtof128_l; } %endif GLIBC_2.27 { # _Float64x functions, only present for some configurations. strfromf64x; strtof64x; strtof64x_l; # _Float32, _Float64 and _Float32x functions, for all configurations. strfromf32; strfromf64; strfromf32x; strtof32; strtof64; strtof32x; strtof32_l; strtof64_l; strtof32x_l; } GLIBC_2.36 { arc4random; arc4random_buf; arc4random_uniform; } GLIBC_2.37 { } GLIBC_2.38 { __isoc23_strtol; __isoc23_strtoll; __isoc23_strtoul; __isoc23_strtoull; __isoc23_strtoimax; __isoc23_strtoumax; } GLIBC_2.39 { stdc_leading_zeros_uc; stdc_leading_zeros_us; stdc_leading_zeros_ui; stdc_leading_zeros_ul; stdc_leading_zeros_ull; stdc_leading_ones_uc; stdc_leading_ones_us; stdc_leading_ones_ui; stdc_leading_ones_ul; stdc_leading_ones_ull; stdc_trailing_zeros_uc; stdc_trailing_zeros_us; stdc_trailing_zeros_ui; stdc_trailing_zeros_ul; stdc_trailing_zeros_ull; stdc_trailing_ones_uc; stdc_trailing_ones_us; stdc_trailing_ones_ui; stdc_trailing_ones_ul; stdc_trailing_ones_ull; stdc_first_leading_zero_uc; stdc_first_leading_zero_us; stdc_first_leading_zero_ui; stdc_first_leading_zero_ul; stdc_first_leading_zero_ull; stdc_first_leading_one_uc; stdc_first_leading_one_us; stdc_first_leading_one_ui; stdc_first_leading_one_ul; stdc_first_leading_one_ull; stdc_first_trailing_zero_uc; stdc_first_trailing_zero_us; stdc_first_trailing_zero_ui; stdc_first_trailing_zero_ul; stdc_first_trailing_zero_ull; stdc_first_trailing_one_uc; stdc_first_trailing_one_us; stdc_first_trailing_one_ui; stdc_first_trailing_one_ul; stdc_first_trailing_one_ull; stdc_count_zeros_uc; stdc_count_zeros_us; stdc_count_zeros_ui; stdc_count_zeros_ul; stdc_count_zeros_ull; stdc_count_ones_uc; stdc_count_ones_us; stdc_count_ones_ui; stdc_count_ones_ul; stdc_count_ones_ull; stdc_has_single_bit_uc; stdc_has_single_bit_us; stdc_has_single_bit_ui; stdc_has_single_bit_ul; stdc_has_single_bit_ull; stdc_bit_width_uc; stdc_bit_width_us; stdc_bit_width_ui; stdc_bit_width_ul; stdc_bit_width_ull; stdc_bit_floor_uc; stdc_bit_floor_us; stdc_bit_floor_ui; stdc_bit_floor_ul; stdc_bit_floor_ull; stdc_bit_ceil_uc; stdc_bit_ceil_us; stdc_bit_ceil_ui; stdc_bit_ceil_ul; stdc_bit_ceil_ull; } GLIBC_PRIVATE { # functions which have an additional interface since they are # are cancelable. __libc_system; # Variable which needs a dynamic symbol table entry. __abort_msg; # Used from other libraries __libc_secure_getenv; __call_tls_dtors; __strtof_nan; __strtod_nan; __strtold_nan; } }