mirror of
				https://sourceware.org/git/glibc.git
				synced 2025-10-30 10:45:40 +03:00 
			
		
		
		
	As noted in <https://sourceware.org/ml/libc-alpha/2012-12/msg00240.html>, stdlib/Versions and wcsmbs/Versions list some functions as __strto*_internal and __wcsto*_internal rather than explicitly listing the symbols to be exported (so any new internal function matching one of those patterns would be wrongly added to version GLIBC_2.0), which seems like a bad idea. This patch changes those files to list the exported symbols explicitly. There are still entries in sysdeps/nacl/Versions for __nacl_irt_*, but as GLIBC_PRIVATE symbols that seems less significant. Tested with build-many-glibcs.py that installed stripped shared libraries are unchanged by the patch. * stdlib/Versions (__strtod_internal): List explicitly, not as wildcard. (__strtof_internal): Likewise. (__strtold_internal): Likewise. (__strtol_internal): Likewise. (__strtoll_internal): Likewise. (__strtoul_internal): Likewise. (__strtoull_internal): Likewise. (__strtoq_internal): Likewise. (__strtouq_internal): Likewise. * wcsmbs/Versions (__wcstod_internal): Likewise. (__wcstof_internal): Likewise. (__wcstold_internal): Likewise. (__wcstol_internal): Likewise. (__wcstoll_internal): Likewise. (__wcstoul_internal): Likewise. (__wcstoull_internal): Likewise.
		
			
				
	
	
		
			136 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			136 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| 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; mcheck; 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.13 {
 | |
|     __fentry__;
 | |
|   }
 | |
|   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;
 | |
|   }
 | |
|   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;
 | |
|   }
 | |
| }
 |