From 11059ae484c8dc3b9d5a9134a85b55056d8b354f Mon Sep 17 00:00:00 2001 From: seanbright Date: Mon, 28 Dec 2009 15:31:25 +0000 Subject: Merged revisions 236613 via svnmerge from https://origsvn.digium.com/svn/asterisk/trunk ................ r236613 | seanbright | 2009-12-28 10:22:54 -0500 (Mon, 28 Dec 2009) | 14 lines Merged revisions 236585 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r236585 | seanbright | 2009-12-28 10:12:08 -0500 (Mon, 28 Dec 2009) | 7 lines Try a test compile to see if PTHREAD_ONCE_INIT requires extra braces. There was conditional code (based on build platform) to optioinally wrap PTHREAD_ONCE_INIT in braces that was removed since it is fixed in newer versions of Solaris/OpenSolaris, but I am still running into it on Solaris 10 x86 so add a configure-time check for it. ........ ................ git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.2@236635 f38db490-d61c-443f-a65b-d21fe96a405b --- include/asterisk/autoconfig.h.in | 54 ++++++++++++++++++---------------------- include/asterisk/threadstorage.h | 10 ++++++-- 2 files changed, 32 insertions(+), 32 deletions(-) (limited to 'include/asterisk') diff --git a/include/asterisk/autoconfig.h.in b/include/asterisk/autoconfig.h.in index f3dc12ea2..c7bbc90a1 100644 --- a/include/asterisk/autoconfig.h.in +++ b/include/asterisk/autoconfig.h.in @@ -867,7 +867,7 @@ /* Define to 1 if you have the `strtoq' function. */ #undef HAVE_STRTOQ -/* Define to 1 if `st_blksize' is member of `struct stat'. */ +/* Define to 1 if `struct stat' is a member of `st_blksize'. */ #undef HAVE_STRUCT_STAT_ST_BLKSIZE /* Define to 1 if you have the mISDN Supplemental Services library. */ @@ -1132,16 +1132,19 @@ /* Define to the one symbol short name of this package. */ #undef PACKAGE_TARNAME +/* Define to the home page for this package. */ +#undef PACKAGE_URL + /* Define to the version of this package. */ #undef PACKAGE_VERSION -/* Define to 1 if the C compiler supports function prototypes. */ -#undef PROTOTYPES - /* Define to necessary symbol if this constant uses a non-standard name on your system. */ #undef PTHREAD_CREATE_JOINABLE +/* Define if your system needs braces around PTHREAD_ONCE_INIT */ +#undef PTHREAD_ONCE_INIT_NEEDS_BRACES + /* Define as the return type of signal handlers (`int' or `void'). */ #undef RETSIGTYPE @@ -1154,11 +1157,6 @@ /* Define to the type of arg 5 for `select'. */ #undef SELECT_TYPE_ARG5 -/* Define to 1 if the `setvbuf' function takes the buffering type as its - second argument and the buffer pointer as the third, as on System V before - release 3. */ -#undef SETVBUF_REVERSED - /* The size of `int', as computed by sizeof. */ #undef SIZEOF_INT @@ -1179,20 +1177,30 @@ /* Define to 1 if your declares `struct tm'. */ #undef TM_IN_SYS_TIME -/* Define to 1 if on AIX 3. - System headers sometimes define this. - We just want to avoid a redefinition error message. */ +/* Enable extensions on AIX 3, Interix. */ #ifndef _ALL_SOURCE # undef _ALL_SOURCE #endif - -/* Number of bits in a file offset, on hosts where this is settable. */ -#undef _FILE_OFFSET_BITS - /* Enable GNU extensions on systems that have them. */ #ifndef _GNU_SOURCE # undef _GNU_SOURCE #endif +/* Enable threading extensions on Solaris. */ +#ifndef _POSIX_PTHREAD_SEMANTICS +# undef _POSIX_PTHREAD_SEMANTICS +#endif +/* Enable extensions on HP NonStop. */ +#ifndef _TANDEM_SOURCE +# undef _TANDEM_SOURCE +#endif +/* Enable general extensions on Solaris. */ +#ifndef __EXTENSIONS__ +# undef __EXTENSIONS__ +#endif + + +/* Number of bits in a file offset, on hosts where this is settable. */ +#undef _FILE_OFFSET_BITS /* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */ #undef _LARGEFILE_SOURCE @@ -1210,20 +1218,6 @@ /* Define to 1 if you need to in order for `stat' and other things to work. */ #undef _POSIX_SOURCE -/* Enable extensions on Solaris. */ -#ifndef __EXTENSIONS__ -# undef __EXTENSIONS__ -#endif -#ifndef _POSIX_PTHREAD_SEMANTICS -# undef _POSIX_PTHREAD_SEMANTICS -#endif -#ifndef _TANDEM_SOURCE -# undef _TANDEM_SOURCE -#endif - -/* Define like PROTOTYPES; this can be used by system headers. */ -#undef __PROTOTYPES - /* Define to empty if `const' does not conform to ANSI C. */ #undef const diff --git a/include/asterisk/threadstorage.h b/include/asterisk/threadstorage.h index fd4f7847e..74f91cdd7 100644 --- a/include/asterisk/threadstorage.h +++ b/include/asterisk/threadstorage.h @@ -103,11 +103,17 @@ void __ast_threadstorage_object_replace(void *key_old, void *key_new, size_t len */ #define AST_THREADSTORAGE_CUSTOM(a,b,c) AST_THREADSTORAGE_CUSTOM_SCOPE(a,b,c,static) +#if defined(PTHREAD_ONCE_INIT_NEEDS_BRACES) +# define AST_PTHREAD_ONCE_INIT { PTHREAD_ONCE_INIT } +#else +# define AST_PTHREAD_ONCE_INIT PTHREAD_ONCE_INIT +#endif + #if !defined(DEBUG_THREADLOCALS) #define AST_THREADSTORAGE_CUSTOM_SCOPE(name, c_init, c_cleanup, scope) \ static void __init_##name(void); \ scope struct ast_threadstorage name = { \ - .once = PTHREAD_ONCE_INIT, \ + .once = AST_PTHREAD_ONCE_INIT, \ .key_init = __init_##name, \ .custom_init = c_init, \ }; \ @@ -119,7 +125,7 @@ static void __init_##name(void) \ #define AST_THREADSTORAGE_CUSTOM_SCOPE(name, c_init, c_cleanup, scope) \ static void __init_##name(void); \ scope struct ast_threadstorage name = { \ - .once = PTHREAD_ONCE_INIT, \ + .once = AST_PTHREAD_ONCE_INIT, \ .key_init = __init_##name, \ .custom_init = c_init, \ }; \ -- cgit v1.2.3