Parcourir la source

fix inconsistent visibility for __hwcap and __sysinfo symbols

these are used as hidden by asm files (and such use is the whole
reason they exist), but their actual definitions were not hidden.
Rich Felker il y a 10 ans
Parent
commit
f203b3511f
2 fichiers modifiés avec 3 ajouts et 5 suppressions
  1. 0 3
      src/env/__libc_start_main.c
  2. 3 2
      src/internal/libc.h

+ 0 - 3
src/env/__libc_start_main.c

@@ -20,9 +20,6 @@ weak_alias(dummy1, __init_ssp);
 
 #define AUX_CNT 38
 
-extern size_t __hwcap, __sysinfo;
-extern char *__progname, *__progname_full;
-
 #ifndef SHARED
 static
 #endif

+ 3 - 2
src/internal/libc.h

@@ -28,8 +28,6 @@ struct __libc {
 	struct __locale_struct global_locale;
 };
 
-extern size_t __hwcap;
-
 #ifndef PAGE_SIZE
 #define PAGE_SIZE libc.page_size
 #endif
@@ -43,6 +41,9 @@ extern size_t __hwcap;
 extern struct __libc __libc ATTR_LIBC_VISIBILITY;
 #define libc __libc
 
+extern size_t __hwcap ATTR_LIBC_VISIBILITY;
+extern size_t __sysinfo ATTR_LIBC_VISIBILITY;
+extern char *__progname, *__progname_full;
 
 /* Designed to avoid any overhead in non-threaded processes */
 void __lock(volatile int *) ATTR_LIBC_VISIBILITY;