Update usage of gcc __attribute__ flags
Change the default visibility of libalpm functions to internal instead of hidden- this allows for slightly better optimization because it tells GCC that the function can never be called outside of the current module (see http://gcc.gnu.org/onlinedocs/gcc/Function-Attributes.html). Also added some attributes to the pacman print functions so that they check the format strings being passed to them. Signed-off-by: Dan McGee <dan@archlinux.org>
This commit is contained in:
parent
b1613c2651
commit
920b0d2049
|
@ -7,7 +7,7 @@ include_HEADERS = alpm_list.h alpm.h
|
|||
|
||||
DEFS = -DLOCALEDIR=\"@localedir@\" @DEFS@
|
||||
|
||||
AM_CFLAGS = -fvisibility=hidden -pedantic -D_GNU_SOURCE -fgnu89-inline
|
||||
AM_CFLAGS = -fvisibility=internal -pedantic -D_GNU_SOURCE -fgnu89-inline
|
||||
|
||||
libalpm_la_SOURCES = \
|
||||
add.h add.c \
|
||||
|
|
|
@ -65,7 +65,7 @@ char *strsep(char **, const char *);
|
|||
|
||||
/* check exported library symbols with: nm -C -D <lib> */
|
||||
#define SYMEXPORT __attribute__((visibility("default")))
|
||||
#define SYMHIDDEN __attribute__((visibility("hidden")))
|
||||
#define SYMHIDDEN __attribute__((visibility("internal")))
|
||||
|
||||
#endif /* _ALPM_UTIL_H */
|
||||
|
||||
|
|
|
@ -49,9 +49,9 @@ char *strreplace(const char *str, const char *needle, const char *replace);
|
|||
void list_display(const char *title, const alpm_list_t *list);
|
||||
void display_targets(const alpm_list_t *syncpkgs);
|
||||
int yesno(char *fmt, ...);
|
||||
int pm_printf(pmloglevel_t level, const char *format, ...);
|
||||
int pm_fprintf(FILE *stream, pmloglevel_t level, const char *format, ...);
|
||||
int pm_vfprintf(FILE *stream, pmloglevel_t level, const char *format, va_list args);
|
||||
int pm_printf(pmloglevel_t level, const char *format, ...) __attribute__((format(printf,2,3)));
|
||||
int pm_fprintf(FILE *stream, pmloglevel_t level, const char *format, ...) __attribute__((format(printf,3,4)));
|
||||
int pm_vfprintf(FILE *stream, pmloglevel_t level, const char *format, va_list args) __attribute__((format(printf,3,0)));
|
||||
|
||||
#endif /* _PM_UTIL_H */
|
||||
|
||||
|
|
Loading…
Reference in New Issue