1178825Sdfrdnl $Id: have-pragma-weak.m4 15435 2005-06-16 19:45:52Z lha $
255682Smarkmdnl
3127808SnectarAC_DEFUN([AC_HAVE_PRAGMA_WEAK], [
455682Smarkmif test "${enable_shared}" = "yes"; then
555682SmarkmAC_MSG_CHECKING(for pragma weak)
655682SmarkmAC_CACHE_VAL(ac_have_pragma_weak, [
755682Smarkmac_have_pragma_weak=no
855682Smarkmcat > conftest_foo.$ac_ext <<'EOF'
955682Smarkm[#]line __oline__ "configure"
1055682Smarkm#include "confdefs.h"
1155682Smarkm#pragma weak foo = _foo
1255682Smarkmint _foo = 17;
1355682SmarkmEOF
1455682Smarkmcat > conftest_bar.$ac_ext <<'EOF'
1555682Smarkm[#]line __oline__ "configure"
1655682Smarkm#include "confdefs.h"
1755682Smarkmextern int foo;
1855682Smarkm
19178825Sdfrint t(void) {
2055682Smarkm  return foo;
2155682Smarkm}
2255682Smarkm
23178825Sdfrint main(int argc, char **argv) {
2455682Smarkm  return t();
2555682Smarkm}
2655682SmarkmEOF
2755682Smarkmif AC_TRY_EVAL('CC -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest_foo.$ac_ext conftest_bar.$ac_ext 1>&AC_FD_CC'); then
2855682Smarkmac_have_pragma_weak=yes
2955682Smarkmfi
3055682Smarkmrm -rf conftest*
3155682Smarkm])
3255682Smarkmif test "$ac_have_pragma_weak" = "yes"; then
3355682Smarkm	AC_DEFINE(HAVE_PRAGMA_WEAK, 1, [Define this if your compiler supports \`#pragma weak.'])dnl
3455682Smarkmfi
3555682SmarkmAC_MSG_RESULT($ac_have_pragma_weak)
3655682Smarkmfi
3755682Smarkm])
38