Use the GCC 4 visibility extension to mark everything in xcbint.h hidden.
This commit is contained in:
parent
5437032c7d
commit
522a6e0eac
|
@ -0,0 +1,29 @@
|
||||||
|
dnl Detection and configuration of the visibility feature of gcc
|
||||||
|
dnl Vincent Torri 2006-02-11
|
||||||
|
dnl
|
||||||
|
dnl GCC_CHECK_VISIBILITY([ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
|
||||||
|
dnl Check the visibility feature of gcc
|
||||||
|
dnl
|
||||||
|
AC_DEFUN([GCC_CHECK_VISIBILITY],
|
||||||
|
[AC_MSG_CHECKING([whether ${CC} supports visibility feature])
|
||||||
|
save_CFLAGS=${CFLAGS}
|
||||||
|
CFLAGS="$CFLAGS -fvisibility=hidden -fvisibility-inlines-hidden"
|
||||||
|
AC_COMPILE_IFELSE(
|
||||||
|
[AC_LANG_PROGRAM(
|
||||||
|
[[
|
||||||
|
#pragma GCC visibility push(hidden)
|
||||||
|
extern void f(int);
|
||||||
|
#pragma GCC visibility pop
|
||||||
|
]],
|
||||||
|
[[]]
|
||||||
|
)],
|
||||||
|
[AC_DEFINE(
|
||||||
|
GCC_HAS_VISIBILITY,
|
||||||
|
[],
|
||||||
|
[Defined if GCC supports the vilibility feature])
|
||||||
|
m4_if([$1], [], [:], [$1])
|
||||||
|
AC_MSG_RESULT(yes)],
|
||||||
|
[m4_if([$2], [], [:], [$2])
|
||||||
|
AC_MSG_RESULT(no)])
|
||||||
|
CFLAGS=${save_CFLAGS}
|
||||||
|
])
|
|
@ -99,6 +99,8 @@ CWARNFLAGS="-Wall -pedantic -Wpointer-arith \
|
||||||
-Wstrict-prototypes -Wmissing-declarations -Wnested-externs"
|
-Wstrict-prototypes -Wmissing-declarations -Wnested-externs"
|
||||||
AC_SUBST(CWARNFLAGS)
|
AC_SUBST(CWARNFLAGS)
|
||||||
|
|
||||||
|
GCC_CHECK_VISIBILITY()
|
||||||
|
|
||||||
AC_CONFIG_FILES([Makefile src/Makefile tests/Makefile])
|
AC_CONFIG_FILES([Makefile src/Makefile tests/Makefile])
|
||||||
AC_CONFIG_FILES([xcb.pc])
|
AC_CONFIG_FILES([xcb.pc])
|
||||||
|
|
||||||
|
|
|
@ -32,6 +32,10 @@
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef GCC_HAS_VISIBILITY
|
||||||
|
#pragma GCC visibility push(hidden)
|
||||||
|
#endif
|
||||||
|
|
||||||
enum workarounds {
|
enum workarounds {
|
||||||
WORKAROUND_NONE,
|
WORKAROUND_NONE,
|
||||||
WORKAROUND_GLX_GET_FB_CONFIGS_BUG
|
WORKAROUND_GLX_GET_FB_CONFIGS_BUG
|
||||||
|
@ -154,4 +158,9 @@ struct XCBConnection {
|
||||||
};
|
};
|
||||||
|
|
||||||
int _xcb_conn_wait(XCBConnection *c, const int should_write, pthread_cond_t *cond);
|
int _xcb_conn_wait(XCBConnection *c, const int should_write, pthread_cond_t *cond);
|
||||||
|
|
||||||
|
#ifdef GCC_HAS_VISIBILITY
|
||||||
|
#pragma GCC visibility pop
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue