Fix linking asterisk on CentOS 5, which is using gcc 4.1.1. Gcc 4.1.2 has the real...
authorTilghman Lesher <tilghman@meg.abyt.es>
Thu, 15 Jul 2010 18:44:20 +0000 (18:44 +0000)
committerTilghman Lesher <tilghman@meg.abyt.es>
Thu, 15 Jul 2010 18:44:20 +0000 (18:44 +0000)
Review: https://reviewboard.asterisk.org/r/790/

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@276731 65c4cc65-6c06-0410-ace0-fbb531ad65f3

autoconf/ast_gcc_attribute.m4
configure
configure.ac
main/Makefile
makeopts.in

index d3f05be..f291dbb 100644 (file)
@@ -1,11 +1,12 @@
 # Helper function to check for gcc attributes.
-# AST_GCC_ATTRIBUTE([attribute name], [attribute syntax], [attribute scope])
+# AST_GCC_ATTRIBUTE([attribute name], [attribute syntax], [attribute scope], [makeopts flag])
 
 AC_DEFUN([AST_GCC_ATTRIBUTE],
 [
 AC_MSG_CHECKING(for compiler 'attribute $1' support)
 saved_CFLAGS="$CFLAGS"
 CFLAGS="$CFLAGS -Wall -Wno-unused -Werror"
+m4_ifval([$4],$4=0)
 
 if test "x$2" = "x"
 then
@@ -13,6 +14,7 @@ AC_COMPILE_IFELSE(
        AC_LANG_PROGRAM([$3 void __attribute__(($1)) *test(void *muffin, ...) {return (void *) 0;}],
                        []),
        AC_MSG_RESULT(yes)
+       m4_ifval([$4],$4=1)
        AC_DEFINE_UNQUOTED([HAVE_ATTRIBUTE_$1], 1, [Define to 1 if your GCC C compiler supports the '$1' attribute.]),
        AC_MSG_RESULT(no)
 )
@@ -21,11 +23,13 @@ AC_COMPILE_IFELSE(
        AC_LANG_PROGRAM([$3 void __attribute__(($2)) *test(void *muffin, ...) {return (void *) 0;}],
                        []),
        AC_MSG_RESULT(yes)
+       m4_ifval([$4],$4=1)
        AC_DEFINE_UNQUOTED([HAVE_ATTRIBUTE_$1], 1, [Define to 1 if your GCC C compiler supports the '$1' attribute.]),
        AC_MSG_RESULT(no)
 )
 fi
 
+m4_ifval([$4],AC_SUBST($4))
 CFLAGS="$saved_CFLAGS"
 ]
 )
index cbedbe7..c63e120 100755 (executable)
--- a/configure
+++ b/configure
@@ -1,5 +1,5 @@
 #! /bin/sh
-# From configure.ac Revision: 271657 .
+# From configure.ac Revision: 273055 .
 # Guess values for system-dependent variables and create Makefiles.
 # Generated by GNU Autoconf 2.61 for asterisk trunk.
 #
@@ -1087,6 +1087,8 @@ POW_LIB
 HAS_POLL
 PBX_PTHREAD_RWLOCK_INITIALIZER
 PBX_PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP
+
+PBX_WEAKREF
 GC_CFLAGS
 GC_LDFLAGS
 AST_DECLARATION_AFTER_STATEMENT
@@ -19820,6 +19822,7 @@ echo $ECHO_N "checking for compiler 'attribute pure' support... $ECHO_C" >&6; }
 saved_CFLAGS="$CFLAGS"
 CFLAGS="$CFLAGS -Wall -Wno-unused -Werror"
 
+
 if test "x" = "x"
 then
 cat >conftest.$ac_ext <<_ACEOF
@@ -19857,6 +19860,7 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
   { echo "$as_me:$LINENO: result: yes" >&5
 echo "${ECHO_T}yes" >&6; }
 
+
 cat >>confdefs.h <<_ACEOF
 #define HAVE_ATTRIBUTE_pure 1
 _ACEOF
@@ -19907,6 +19911,7 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
   { echo "$as_me:$LINENO: result: yes" >&5
 echo "${ECHO_T}yes" >&6; }
 
+
 cat >>confdefs.h <<_ACEOF
 #define HAVE_ATTRIBUTE_pure 1
 _ACEOF
@@ -19923,6 +19928,7 @@ fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 fi
 
+
 CFLAGS="$saved_CFLAGS"
 
 
@@ -19932,6 +19938,7 @@ echo $ECHO_N "checking for compiler 'attribute malloc' support... $ECHO_C" >&6;
 saved_CFLAGS="$CFLAGS"
 CFLAGS="$CFLAGS -Wall -Wno-unused -Werror"
 
+
 if test "x" = "x"
 then
 cat >conftest.$ac_ext <<_ACEOF
@@ -19969,6 +19976,7 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
   { echo "$as_me:$LINENO: result: yes" >&5
 echo "${ECHO_T}yes" >&6; }
 
+
 cat >>confdefs.h <<_ACEOF
 #define HAVE_ATTRIBUTE_malloc 1
 _ACEOF
@@ -20019,6 +20027,7 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
   { echo "$as_me:$LINENO: result: yes" >&5
 echo "${ECHO_T}yes" >&6; }
 
+
 cat >>confdefs.h <<_ACEOF
 #define HAVE_ATTRIBUTE_malloc 1
 _ACEOF
@@ -20035,6 +20044,7 @@ fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 fi
 
+
 CFLAGS="$saved_CFLAGS"
 
 
@@ -20044,6 +20054,7 @@ echo $ECHO_N "checking for compiler 'attribute const' support... $ECHO_C" >&6; }
 saved_CFLAGS="$CFLAGS"
 CFLAGS="$CFLAGS -Wall -Wno-unused -Werror"
 
+
 if test "x" = "x"
 then
 cat >conftest.$ac_ext <<_ACEOF
@@ -20081,6 +20092,7 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
   { echo "$as_me:$LINENO: result: yes" >&5
 echo "${ECHO_T}yes" >&6; }
 
+
 cat >>confdefs.h <<_ACEOF
 #define HAVE_ATTRIBUTE_const 1
 _ACEOF
@@ -20131,6 +20143,7 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
   { echo "$as_me:$LINENO: result: yes" >&5
 echo "${ECHO_T}yes" >&6; }
 
+
 cat >>confdefs.h <<_ACEOF
 #define HAVE_ATTRIBUTE_const 1
 _ACEOF
@@ -20147,6 +20160,7 @@ fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 fi
 
+
 CFLAGS="$saved_CFLAGS"
 
 
@@ -20156,6 +20170,7 @@ echo $ECHO_N "checking for compiler 'attribute unused' support... $ECHO_C" >&6;
 saved_CFLAGS="$CFLAGS"
 CFLAGS="$CFLAGS -Wall -Wno-unused -Werror"
 
+
 if test "x" = "x"
 then
 cat >conftest.$ac_ext <<_ACEOF
@@ -20193,6 +20208,7 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
   { echo "$as_me:$LINENO: result: yes" >&5
 echo "${ECHO_T}yes" >&6; }
 
+
 cat >>confdefs.h <<_ACEOF
 #define HAVE_ATTRIBUTE_unused 1
 _ACEOF
@@ -20243,6 +20259,7 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
   { echo "$as_me:$LINENO: result: yes" >&5
 echo "${ECHO_T}yes" >&6; }
 
+
 cat >>confdefs.h <<_ACEOF
 #define HAVE_ATTRIBUTE_unused 1
 _ACEOF
@@ -20259,6 +20276,7 @@ fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 fi
 
+
 CFLAGS="$saved_CFLAGS"
 
 
@@ -20268,6 +20286,7 @@ echo $ECHO_N "checking for compiler 'attribute always_inline' support... $ECHO_C
 saved_CFLAGS="$CFLAGS"
 CFLAGS="$CFLAGS -Wall -Wno-unused -Werror"
 
+
 if test "x" = "x"
 then
 cat >conftest.$ac_ext <<_ACEOF
@@ -20305,6 +20324,7 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
   { echo "$as_me:$LINENO: result: yes" >&5
 echo "${ECHO_T}yes" >&6; }
 
+
 cat >>confdefs.h <<_ACEOF
 #define HAVE_ATTRIBUTE_always_inline 1
 _ACEOF
@@ -20355,6 +20375,7 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
   { echo "$as_me:$LINENO: result: yes" >&5
 echo "${ECHO_T}yes" >&6; }
 
+
 cat >>confdefs.h <<_ACEOF
 #define HAVE_ATTRIBUTE_always_inline 1
 _ACEOF
@@ -20371,6 +20392,7 @@ fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 fi
 
+
 CFLAGS="$saved_CFLAGS"
 
 
@@ -20380,6 +20402,7 @@ echo $ECHO_N "checking for compiler 'attribute deprecated' support... $ECHO_C" >
 saved_CFLAGS="$CFLAGS"
 CFLAGS="$CFLAGS -Wall -Wno-unused -Werror"
 
+
 if test "x" = "x"
 then
 cat >conftest.$ac_ext <<_ACEOF
@@ -20417,6 +20440,7 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
   { echo "$as_me:$LINENO: result: yes" >&5
 echo "${ECHO_T}yes" >&6; }
 
+
 cat >>confdefs.h <<_ACEOF
 #define HAVE_ATTRIBUTE_deprecated 1
 _ACEOF
@@ -20467,6 +20491,7 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
   { echo "$as_me:$LINENO: result: yes" >&5
 echo "${ECHO_T}yes" >&6; }
 
+
 cat >>confdefs.h <<_ACEOF
 #define HAVE_ATTRIBUTE_deprecated 1
 _ACEOF
@@ -20483,6 +20508,7 @@ fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 fi
 
+
 CFLAGS="$saved_CFLAGS"
 
 
@@ -20492,6 +20518,7 @@ echo $ECHO_N "checking for compiler 'attribute sentinel' support... $ECHO_C" >&6
 saved_CFLAGS="$CFLAGS"
 CFLAGS="$CFLAGS -Wall -Wno-unused -Werror"
 
+
 if test "x" = "x"
 then
 cat >conftest.$ac_ext <<_ACEOF
@@ -20529,6 +20556,7 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
   { echo "$as_me:$LINENO: result: yes" >&5
 echo "${ECHO_T}yes" >&6; }
 
+
 cat >>confdefs.h <<_ACEOF
 #define HAVE_ATTRIBUTE_sentinel 1
 _ACEOF
@@ -20579,6 +20607,7 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
   { echo "$as_me:$LINENO: result: yes" >&5
 echo "${ECHO_T}yes" >&6; }
 
+
 cat >>confdefs.h <<_ACEOF
 #define HAVE_ATTRIBUTE_sentinel 1
 _ACEOF
@@ -20595,6 +20624,7 @@ fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 fi
 
+
 CFLAGS="$saved_CFLAGS"
 
 
@@ -20604,6 +20634,7 @@ echo $ECHO_N "checking for compiler 'attribute warn_unused_result' support... $E
 saved_CFLAGS="$CFLAGS"
 CFLAGS="$CFLAGS -Wall -Wno-unused -Werror"
 
+
 if test "x" = "x"
 then
 cat >conftest.$ac_ext <<_ACEOF
@@ -20641,6 +20672,7 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
   { echo "$as_me:$LINENO: result: yes" >&5
 echo "${ECHO_T}yes" >&6; }
 
+
 cat >>confdefs.h <<_ACEOF
 #define HAVE_ATTRIBUTE_warn_unused_result 1
 _ACEOF
@@ -20691,6 +20723,7 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
   { echo "$as_me:$LINENO: result: yes" >&5
 echo "${ECHO_T}yes" >&6; }
 
+
 cat >>confdefs.h <<_ACEOF
 #define HAVE_ATTRIBUTE_warn_unused_result 1
 _ACEOF
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 fi
 
+
 CFLAGS="$saved_CFLAGS"
 
 
 
-{ echo "$as_me:$LINENO: checking for compiler 'attribute weakref' support" >&5
-echo $ECHO_N "checking for compiler 'attribute weakref' support... $ECHO_C" >&6; }
+{ echo "$as_me:$LINENO: checking for compiler 'attribute weak_import' support" >&5
+echo $ECHO_N "checking for compiler 'attribute weak_import' support... $ECHO_C" >&6; }
 saved_CFLAGS="$CFLAGS"
 CFLAGS="$CFLAGS -Wall -Wno-unused -Werror"
+PBX_WEAKREF=0
 
-if test "xweakref("foo")" = "x"
+if test "x" = "x"
 then
 cat >conftest.$ac_ext <<_ACEOF
 /* confdefs.h.  */
@@ -20724,7 +20759,7 @@ _ACEOF
 cat confdefs.h >>conftest.$ac_ext
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
-static void __attribute__((weakref)) *test(void *muffin, ...) {return (void *) 0;}
+ void __attribute__((weak_import)) *test(void *muffin, ...) {return (void *) 0;}
 int
 main ()
 {
@@ -20752,9 +20787,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
        } && test -s conftest.$ac_objext; then
   { echo "$as_me:$LINENO: result: yes" >&5
 echo "${ECHO_T}yes" >&6; }
+       PBX_WEAKREF=1
 
 cat >>confdefs.h <<_ACEOF
-#define HAVE_ATTRIBUTE_weakref 1
+#define HAVE_ATTRIBUTE_weak_import 1
 _ACEOF
 
 else
@@ -20774,7 +20810,7 @@ _ACEOF
 cat confdefs.h >>conftest.$ac_ext
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
-static void __attribute__((weakref("foo"))) *test(void *muffin, ...) {return (void *) 0;}
+ void __attribute__(()) *test(void *muffin, ...) {return (void *) 0;}
 int
 main ()
 {
@@ -20802,9 +20838,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
        } && test -s conftest.$ac_objext; then
   { echo "$as_me:$LINENO: result: yes" >&5
 echo "${ECHO_T}yes" >&6; }
+       PBX_WEAKREF=1
 
 cat >>confdefs.h <<_ACEOF
-#define HAVE_ATTRIBUTE_weakref 1
+#define HAVE_ATTRIBUTE_weak_import 1
 _ACEOF
 
 else
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 fi
 
+
 CFLAGS="$saved_CFLAGS"
 
 
 
-{ echo "$as_me:$LINENO: checking for compiler 'attribute weak_import' support" >&5
-echo $ECHO_N "checking for compiler 'attribute weak_import' support... $ECHO_C" >&6; }
+{ echo "$as_me:$LINENO: checking for compiler 'attribute weakref' support" >&5
+echo $ECHO_N "checking for compiler 'attribute weakref' support... $ECHO_C" >&6; }
 saved_CFLAGS="$CFLAGS"
 CFLAGS="$CFLAGS -Wall -Wno-unused -Werror"
+PBX_WEAKREF=0
 
-if test "x" = "x"
+if test "xweakref("foo")" = "x"
 then
 cat >conftest.$ac_ext <<_ACEOF
 /* confdefs.h.  */
@@ -20836,7 +20875,7 @@ _ACEOF
 cat confdefs.h >>conftest.$ac_ext
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
- void __attribute__((weak_import)) *test(void *muffin, ...) {return (void *) 0;}
+static void __attribute__((weakref)) *test(void *muffin, ...) {return (void *) 0;}
 int
 main ()
 {
@@ -20864,9 +20903,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
        } && test -s conftest.$ac_objext; then
   { echo "$as_me:$LINENO: result: yes" >&5
 echo "${ECHO_T}yes" >&6; }
+       PBX_WEAKREF=1
 
 cat >>confdefs.h <<_ACEOF
-#define HAVE_ATTRIBUTE_weak_import 1
+#define HAVE_ATTRIBUTE_weakref 1
 _ACEOF
 
 else
@@ -20886,7 +20926,7 @@ _ACEOF
 cat confdefs.h >>conftest.$ac_ext
 cat >>conftest.$ac_ext <<_ACEOF
 /* end confdefs.h.  */
- void __attribute__(()) *test(void *muffin, ...) {return (void *) 0;}
+static void __attribute__((weakref("foo"))) *test(void *muffin, ...) {return (void *) 0;}
 int
 main ()
 {
@@ -20914,9 +20954,10 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
        } && test -s conftest.$ac_objext; then
   { echo "$as_me:$LINENO: result: yes" >&5
 echo "${ECHO_T}yes" >&6; }
+       PBX_WEAKREF=1
 
 cat >>confdefs.h <<_ACEOF
-#define HAVE_ATTRIBUTE_weak_import 1
+#define HAVE_ATTRIBUTE_weakref 1
 _ACEOF
 
 else
@@ -20931,6 +20972,7 @@ fi
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 fi
 
+
 CFLAGS="$saved_CFLAGS"
 
 
@@ -52693,6 +52735,7 @@ POW_LIB!$POW_LIB$ac_delim
 HAS_POLL!$HAS_POLL$ac_delim
 PBX_PTHREAD_RWLOCK_INITIALIZER!$PBX_PTHREAD_RWLOCK_INITIALIZER$ac_delim
 PBX_PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP!$PBX_PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP$ac_delim
+PBX_WEAKREF!$PBX_WEAKREF$ac_delim
 GC_CFLAGS!$GC_CFLAGS$ac_delim
 GC_LDFLAGS!$GC_LDFLAGS$ac_delim
 AST_DECLARATION_AFTER_STATEMENT!$AST_DECLARATION_AFTER_STATEMENT$ac_delim
@@ -52712,7 +52755,6 @@ CONFIG_NEON!$CONFIG_NEON$ac_delim
 CONFIG_NEON29!$CONFIG_NEON29$ac_delim
 CONFIG_NETSNMP!$CONFIG_NETSNMP$ac_delim
 PG_CONFIG!$PG_CONFIG$ac_delim
-PTLIB_CONFIG!$PTLIB_CONFIG$ac_delim
 _ACEOF
 
   if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then
@@ -52754,6 +52796,7 @@ _ACEOF
 ac_delim='%!_!# '
 for ac_last_try in false false false false false :; do
   cat >conf$$subs.sed <<_ACEOF
+PTLIB_CONFIG!$PTLIB_CONFIG$ac_delim
 PWLIBDIR!$PWLIBDIR$ac_delim
 PWLIB_INCDIR!$PWLIB_INCDIR$ac_delim
 PWLIB_LIBDIR!$PWLIB_LIBDIR$ac_delim
@@ -52793,7 +52836,7 @@ PBX_SYSLOG!$PBX_SYSLOG$ac_delim
 LTLIBOBJS!$LTLIBOBJS$ac_delim
 _ACEOF
 
-  if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 37; then
+  if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 38; then
     break
   elif $ac_last_try; then
     { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
index be80977..98005f0 100644 (file)
@@ -703,8 +703,8 @@ AST_GCC_ATTRIBUTE(always_inline)
 AST_GCC_ATTRIBUTE(deprecated)
 AST_GCC_ATTRIBUTE(sentinel)
 AST_GCC_ATTRIBUTE(warn_unused_result)
-AST_GCC_ATTRIBUTE(weakref, [weakref("foo")], static)
-AST_GCC_ATTRIBUTE(weak_import)
+AST_GCC_ATTRIBUTE(weak_import, [], [], PBX_WEAKREF)
+AST_GCC_ATTRIBUTE(weakref, [weakref("foo")], static, PBX_WEAKREF)
 
 AC_MSG_CHECKING(for -ffunction-sections support)
 saved_CFLAGS="${CFLAGS}"
index 361b0dc..1ec018b 100644 (file)
@@ -26,6 +26,9 @@ OBJS=$(filter-out $(OBJSFILTER),$(SRC:.c=.o))
 # otherwise modules will not have them available if none of the static
 # objects use it.
 OBJS+=stdtime/localtime.o
+ifneq ($(WEAKREF),1:1)
+OBJS+=../res/res_adsi.o
+endif
 
 AST_LIBS += $(OPENSSL_LIB)
 AST_LIBS += $(BKTR_LIB)
index 99fc89e..71a7c35 100644 (file)
@@ -57,6 +57,7 @@ CONFIG_CFLAGS=@CONFIG_CFLAGS@
 CONFIG_LDFLAGS=@CONFIG_LDFLAGS@
 
 GNU_LD=@GNU_LD@
+WEAKREF=@PBX_WEAKREF@
 
 prefix = @prefix@
 exec_prefix = @exec_prefix@