diff --git a/autoconf/ast_gcc_attribute.m4 b/autoconf/ast_gcc_attribute.m4 index d3f05be5b8d1d759056813e3ed9e423d324a8822..f291dbbd671e2df4c41ebe25b01498e722caf1e7 100644 --- a/autoconf/ast_gcc_attribute.m4 +++ b/autoconf/ast_gcc_attribute.m4 @@ -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" ] ) diff --git a/configure b/configure index cbedbe74731b4dc1af63b5d66854fd65f0de14a6..c63e12076ee84174242efbe3253fd88b23759fe3 100755 --- 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 @@ -20707,16 +20740,18 @@ fi 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 @@ -20819,16 +20856,18 @@ fi 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 diff --git a/configure.ac b/configure.ac index be80977a56ef00f951d2544e25ca18f732ce276c..98005f015fff32e07aab5dfd5f9fbce77091e102 100644 --- a/configure.ac +++ b/configure.ac @@ -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}" diff --git a/main/Makefile b/main/Makefile index 361b0dc40979aec19a98e8f130411b4705fe91e0..1ec018bb35017407dff10e9770ebfbd559184105 100644 --- a/main/Makefile +++ b/main/Makefile @@ -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) diff --git a/makeopts.in b/makeopts.in index 99fc89e4f5da64fabedc44eac778d5c8fe884d83..71a7c353b33877239f9596bd2a6106f79f2d1749 100644 --- a/makeopts.in +++ b/makeopts.in @@ -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@