00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef version_h
00026 #define version_h
00027
00028 #ifdef USE_TLS
00029 #include "tls/tls_config.h"
00030 #endif
00031
00032 #define KAMAILIO_FULL_VERSION NAME " " VERSION " (" ARCH "/" OS ")"
00033
00034
00035 #ifdef STATISTICS
00036 #define STATISTICS_STR "STATISTICS"
00037 #else
00038 #define STATISTICS_STR ""
00039 #endif
00040
00041 #ifdef USE_IPV6
00042 #define USE_IPV6_STR ", USE_IPV6"
00043 #else
00044 #define USE_IPV6_STR ""
00045 #endif
00046
00047 #ifdef USE_TCP
00048 #define USE_TCP_STR ", USE_TCP"
00049 #else
00050 #define USE_TCP_STR ""
00051 #endif
00052
00053 #ifdef USE_TLS
00054 #ifdef OPENSSL_NO_TLSEXT
00055 #define USE_TLS_STR ", USE_TLS (without SNI extension)"
00056 #else
00057 #define USE_TLS_STR ", USE_TLS (with SNI extension)"
00058 #endif
00059 #else
00060 #define USE_TLS_STR ""
00061 #endif
00062
00063 #ifdef USE_SCTP
00064 #define USE_SCTP_STR ", USE_SCTP"
00065 #else
00066 #define USE_SCTP_STR ""
00067 #endif
00068
00069 #ifdef DISABLE_NAGLE
00070 #define DISABLE_NAGLE_STR ", DISABLE_NAGLE"
00071 #else
00072 #define DISABLE_NAGLE_STR ""
00073 #endif
00074
00075 #ifdef USE_MCAST
00076 #define USE_MCAST_STR ", USE_MCAST"
00077 #else
00078 #define USE_MCAST_STR ""
00079 #endif
00080
00081
00082 #ifdef NO_DEBUG
00083 #define NO_DEBUG_STR ", NO_DEBUG"
00084 #else
00085 #define NO_DEBUG_STR ""
00086 #endif
00087
00088 #ifdef NO_LOG
00089 #define NO_LOG_STR ", NO_LOG"
00090 #else
00091 #define NO_LOG_STR ""
00092 #endif
00093
00094 #ifdef EXTRA_DEBUG
00095 #define EXTRA_DEBUG_STR ", EXTRA_DEBUG"
00096 #else
00097 #define EXTRA_DEBUG_STR ""
00098 #endif
00099
00100 #define SHM_MEM_STR ", SHM_MEM"
00101
00102 #ifdef SHM_MMAP
00103 #define SHM_MMAP_STR ", SHM_MMAP"
00104 #else
00105 #define SHM_MMAP_STR ""
00106 #endif
00107
00108 #ifdef PKG_MALLOC
00109 #define PKG_MALLOC_STR ", PKG_MALLOC"
00110 #else
00111 #define PKG_MALLOC_STR ""
00112 #endif
00113
00114 #ifdef F_MALLOC
00115 #define F_MALLOC_STR ", F_MALLOC"
00116 #else
00117 #define F_MALLOC_STR ""
00118 #endif
00119
00120 #ifdef USE_SHM_MEM
00121 #define USE_SHM_MEM_STR ", USE_SHM_MEM"
00122 #else
00123 #define USE_SHM_MEM_STR ""
00124 #endif
00125
00126 #ifdef DBG_QM_MALLOC
00127 #define DBG_QM_MALLOC_STR ", DBG_QM_MALLOC"
00128 #else
00129 #define DBG_QM_MALLOC_STR ""
00130 #endif
00131
00132 #ifdef DBG_F_MALLOC
00133 #define DBG_F_MALLOC_STR ", DBG_F_MALLOC"
00134 #else
00135 #define DBG_F_MALLOC_STR ""
00136 #endif
00137
00138 #ifdef DEBUG_DMALLOC
00139 #define DEBUG_DMALLOC_STR ", DEBUG_DMALLOC"
00140 #else
00141 #define DEBUG_DMALLOC_STR ""
00142 #endif
00143
00144 #ifdef QM_JOIN_FREE
00145 #define QM_JOIN_FREE_STR ", QM_JOIN_FREE"
00146 #else
00147 #define QM_JOIN_FREE_STR ""
00148 #endif
00149
00150 #ifdef FAST_LOCK
00151 #ifdef BUSY_WAIT
00152 #define FAST_LOCK_STR ", FAST_LOCK-BUSY_WAIT"
00153 #elif defined (ADAPTIVE_WAIT)
00154 #define FAST_LOCK_STR ", FAST_LOCK-ADAPTIVE_WAIT"
00155 #else
00156 #define FAST_LOCK_STR ", FAST_LOCK"
00157 #endif
00158 #else
00159 #define FAST_LOCK_STR ""
00160 #endif
00161
00162 #ifdef USE_PTHREAD_MUTEX
00163 #define USE_PTHREAD_MUTEX_STR ", USE_PTHREAD_MUTEX"
00164 #else
00165 #define USE_PTHREAD_MUTEX_STR ""
00166 #endif
00167
00168 #ifdef USE_POSIX_SEM
00169 #define USE_POSIX_SEM_STR ", USE_POSIX_SEM"
00170 #else
00171 #define USE_POSIX_SEM_STR ""
00172 #endif
00173
00174 #ifdef USE_SYSV_SEM
00175 #define USE_SYSV_SEM_STR ", USE_SYSV_SEM"
00176 #else
00177 #define USE_SYSV_SEM_STR ""
00178 #endif
00179
00180
00181 #ifdef NOSMP
00182 #define NOSMP_STR "-NOSMP"
00183 #else
00184 #define NOSMP_STR ""
00185 #endif
00186
00187
00188 #define KAMAILIO_COMPILE_FLAGS \
00189 STATISTICS_STR EXTRA_DEBUG_STR USE_IPV6_STR USE_TCP_STR USE_TLS_STR \
00190 USE_SCTP_STR DISABLE_NAGLE_STR USE_MCAST_STR NO_DEBUG_STR NO_LOG_STR \
00191 SHM_MMAP_STR PKG_MALLOC_STR F_MALLOC_STR \
00192 USE_SHM_MEM_STR DBG_QM_MALLOC_STR DBG_F_MALLOC_STR DEBUG_DMALLOC_STR \
00193 QM_JOIN_FREE_STR FAST_LOCK_STR NOSMP_STR USE_PTHREAD_MUTEX_STR \
00194 USE_POSIX_SEM_STR USE_SYSV_SEM_STR
00195
00196
00197 #endif