4 * version and compile flags macros
7 * Copyright (C) 2004 FhG Fokus
9 * This file is part of ser, a free SIP server.
11 * ser is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License as published by
13 * the Free Software Foundation; either version 2 of the License, or
14 * (at your option) any later version
16 * For a license to use the ser software under conditions
17 * other than those described here, or to purchase support for this
18 * software, please contact iptel.org by e-mail at the following addresses:
21 * ser is distributed in the hope that it will be useful,
22 * but WITHOUT ANY WARRANTY; without even the implied warranty of
23 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
24 * GNU General Public License for more details.
26 * You should have received a copy of the GNU General Public License
27 * along with this program; if not, write to the Free Software
28 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
34 #define SER_FULL_VERSION NAME " " VERSION " (" ARCH "/" OS_QUOTED ")"
37 #define STATS_STR "STATS: On"
39 #define STATS_STR "STATS: Off"
43 #define USE_IPV6_STR ", USE_IPV6"
45 #define USE_IPV6_STR ""
49 #define USE_TCP_STR ", USE_TCP"
51 #define USE_TCP_STR ""
55 #define USE_TLS_STR ", USE_TLS"
57 #define USE_TLS_STR ""
61 #define CORE_TLS_STR ", CORE_TLS"
63 #define CORE_TLS_STR ""
67 #define TLS_HOOKS_STR ", TLS_HOOKS"
69 #define TLS_HOOKS_STR ""
74 #define DISABLE_NAGLE_STR ", DISABLE_NAGLE"
76 #define DISABLE_NAGLE_STR ""
80 #define USE_MCAST_STR ", USE_MCAST"
82 #define USE_MCAST_STR ""
87 #define NO_DEBUG_STR ", NO_DEBUG"
89 #define NO_DEBUG_STR ""
93 #define NO_LOG_STR ", NO_LOG"
99 #define EXTRA_DEBUG_STR ", EXTRA_DEBUG"
101 #define EXTRA_DEBUG_STR ""
105 #define DNS_IP_HACK_STR ", DNS_IP_HACK"
107 #define DNS_IP_HACK_STR ""
111 #define SHM_MEM_STR ", SHM_MEM"
113 #define SHM_MEM_STR ""
117 #define SHM_MMAP_STR ", SHM_MMAP"
119 #define SHM_MMAP_STR ""
123 #define PKG_MALLOC_STR ", PKG_MALLOC"
125 #define PKG_MALLOC_STR ""
129 #define VQ_MALLOC_STR ", VQ_MALLOC"
131 #define VQ_MALLOC_STR ""
135 #define F_MALLOC_STR ", F_MALLOC"
137 #define F_MALLOC_STR ""
141 #define DL_MALLOC_STR ", DL_MALLOC"
143 #define DL_MALLOC_STR ""
147 #define SF_MALLOC_STR ", SF_MALLOC"
149 #define SF_MALLOC_STR ""
153 #define LL_MALLOC_STR ", LL_MALLOC"
155 #define LL_MALLOC_STR ""
159 #define USE_SHM_MEM_STR ", USE_SHM_MEM"
161 #define USE_SHM_MEM_STR ""
165 #define DBG_QM_MALLOC_STR ", DBG_QM_MALLOC"
167 #define DBG_QM_MALLOC_STR ""
171 #define DBG_F_MALLOC_STR ", DBG_F_MALLOC"
173 #define DBG_F_MALLOC_STR ""
177 #define DEBUG_DMALLOC_STR ", DEBUG_DMALLOC"
179 #define DEBUG_DMALLOC_STR ""
183 #define DBG_SF_MALLOC_STR ", DBG_SF_MALLOC"
185 #define DBG_SF_MALLOC_STR ""
189 #define DBG_LL_MALLOC_STR ", DBG_SF_MALLOC"
191 #define DBG_LL_MALLOC_STR ""
195 #define TIMER_DEBUG_STR ", TIMER_DEBUG"
197 #define TIMER_DEBUG_STR ""
201 #define USE_FUTEX_STR ", USE_FUTEX"
203 #define USE_FUTEX_STR ""
209 #define FAST_LOCK_STR ", FAST_LOCK-BUSY_WAIT"
210 #elif defined (ADAPTIVE_WAIT)
211 #define FAST_LOCK_STR ", FAST_LOCK-ADAPTIVE_WAIT"
213 #define FAST_LOCK_STR ", FAST_LOCK"
216 #define FAST_LOCK_STR ""
219 #ifdef USE_PTHREAD_MUTEX
220 #define USE_PTHREAD_MUTEX_STR ", USE_PTHREAD_MUTEX"
222 #define USE_PTHREAD_MUTEX_STR ""
226 #define USE_POSIX_SEM_STR ", USE_POSIX_SEM"
228 #define USE_POSIX_SEM_STR ""
232 #define USE_SYSV_SEM_STR ", USE_SYSV_SEM"
234 #define USE_SYSV_SEM_STR ""
238 #define NOSMP_STR "-NOSMP"
245 #define USE_COMP_STR ", USE_COMP"
247 #define USE_COMP_STR ""
252 #define USE_DNS_CACHE_STR ", USE_DNS_CACHE"
254 #define USE_DNS_CACHE_STR ""
257 #ifdef USE_DNS_FAILOVER
258 #define USE_DNS_FAILOVER_STR ", USE_DNS_FAILOVER"
260 #define USE_DNS_FAILOVER_STR ""
263 #ifdef DNS_WATCHDOG_SUPPORT
264 #define DNS_WATCHDOG_SUPPORT_STR ", DNS_WATCHDOG_SUPPORT"
266 #define DNS_WATCHDOG_SUPPORT_STR ""
270 #define USE_NAPTR_STR ", USE_NAPTR"
272 #define USE_NAPTR_STR ""
275 #ifdef USE_DST_BLACKLIST
276 #define USE_DST_BLACKLIST_STR ", USE_DST_BLACKLIST"
278 #define USE_DST_BLACKLIST_STR ""
282 #define NO_SIG_DEBUG_STR ", NO_SIG_DEBUG"
284 #define NO_SIG_DEBUG_STR ""
288 #define USE_STUN_STR ", USE_STUN"
290 #define USE_STUN_STR ""
293 #ifdef HAVE_RESOLV_RES
294 #define HAVE_RESOLV_RES_STR ", HAVE_RESOLV_RES"
296 #define HAVE_RESOLV_RES_STR ""
299 #ifdef HTTP_REPLY_HACK
300 #define HTTP_REPLY_HACK_STR ", HTTP_REPLY_HACK"
302 #define HTTP_REPLY_HACK_STR ""
306 #define QM_JOIN_FREE_STR ", QM_JOIN_FREE"
308 #define QM_JOIN_FREE_STR ""
311 #ifdef SYSLOG_CALLBACK_SUPPORT
312 #define SYSLOG_CALLBACK_SUPPORT_STR, ", SYSLOG_CALLBACK_SUPPORT"
314 #define SYSLOG_CALLBACK_SUPPORT_STR ""
317 #ifdef MYSQL_FAKE_NULL
318 #define MYSQL_FAKE_NULL_STR, ", MYSQL_FAKE_NULL"
320 #define MYSQL_FAKE_NULL_STR ""
323 #ifdef USE_DNS_CACHE_STATS
324 #define USE_DNS_CACHE_STATS_STR ", USE_DNS_CACHE_STATS"
326 #define USE_DNS_CACHE_STATS_STR ""
329 #ifdef USE_DST_BLACKLIST_STATS
330 #define USE_DST_BLACKLIST_STATS_STR ", USE_DST_BLACKLIST_STATS"
332 #define USE_DST_BLACKLIST_STATS_STR ""
335 #define SER_COMPILE_FLAGS \
336 STATS_STR EXTRA_DEBUG_STR USE_IPV6_STR USE_TCP_STR USE_TLS_STR \
337 CORE_TLS_STR TLS_HOOKS_STR \
338 USE_STUN_STR DISABLE_NAGLE_STR USE_MCAST_STR NO_DEBUG_STR NO_LOG_STR \
339 NO_SIG_DEBUG_STR DNS_IP_HACK_STR SHM_MEM_STR SHM_MMAP_STR PKG_MALLOC_STR \
340 VQ_MALLOC_STR F_MALLOC_STR DL_MALLOC_STR SF_MALLOC_STR LL_MALLOC_STR \
343 DBG_F_MALLOC_STR DEBUG_DMALLOC_STR DBG_SF_MALLOC_STR DBG_LL_MALLOC_STR \
346 FAST_LOCK_STR NOSMP_STR USE_PTHREAD_MUTEX_STR USE_POSIX_SEM_STR \
347 USE_SYSV_SEM_STR USE_COMP_STR USE_DNS_CACHE_STR USE_DNS_FAILOVER_STR \
348 DNS_WATCHDOG_SUPPORT_STR USE_NAPTR_STR USE_DST_BLACKLIST_STR \
349 HAVE_RESOLV_RES_STR HTTP_REPLY_HACK_STR SYSLOG_CALLBACK_SUPPORT_STR \
350 MYSQL_FAKE_NULL_STR USE_DST_BLACKLIST_STATS_STR USE_DNS_CACHE_STATS_STR