OPAL  Version 3.18.8
opal_config.h
Go to the documentation of this file.
1 /* include/opal_config.h. Generated from opal_config.h.in by configure. */
2 /*
3  * opal_config.h
4  *
5  * Build options generated by the configure script.
6  *
7  * Portable Windows Library
8  *
9  * Copyright (c) 2003 Equivalence Pty. Ltd.
10  *
11  * The contents of this file are subject to the Mozilla Public License
12  * Version 1.0 (the "License"); you may not use this file except in
13  * compliance with the License. You may obtain a copy of the License at
14  * http://www.mozilla.org/MPL/
15  *
16  * Software distributed under the License is distributed on an "AS IS"
17  * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
18  * the License for the specific language governing rights and limitations
19  * under the License.
20  *
21  * The Original Code is Portable Windows Library.
22  *
23  * The Initial Developer of the Original Code is Equivalence Pty. Ltd.
24  *
25  * Contributor(s): ______________________________________.
26  *
27  */
28 
29 #ifndef _OPAL_CONFIG_H
30 #define _OPAL_CONFIG_H
31 
32 #include <ptlib_config.h>
33 
35 //
36 // OPAL Version
37 //
38 
39 #define OPAL_MAJOR 3
40 #define OPAL_MINOR 18
41 #define OPAL_PATCH 8
42 #define OPAL_OEM 0
43 #define OPAL_VERSION "3.18.8"
44 
45 #define OPAL_CHECK_VERSION_OEM(major,minor,patch,oem) \
46  (PTLIB_VERSION_INT_OEM(OPAL_MAJOR,OPAL_MINOR,OPAL_PATCH,OPAL_OEM) >= PTLIB_VERSION_INT_OEM(major,minor,patch,oem))
47 #define OPAL_CHECK_VERSION(major,minor,patch) \
48  (PTLIB_VERSION_INT(OPAL_MAJOR,OPAL_MINOR,OPAL_PATCH) >= PTLIB_VERSION_INT(major,minor,patch))
49 
50 /* #undef OPAL_PTLIB_SSL */
51 /* #undef OPAL_PTLIB_ASN */
52 /* #undef OPAL_PTLIB_EXPAT */
53 /* #undef OPAL_PTLIB_AUDIO */
54 /* #undef OPAL_PTLIB_VIDEO */
55 /* #undef OPAL_PTLIB_WAVFILE */
56 /* #undef OPAL_PTLIB_DTMF */
57 /* #undef OPAL_PTLIB_IPV6 */
58 /* #undef OPAL_PTLIB_DNS_RESOLVER */
59 #ifndef P_IPHONEOS
60 /* #undef OPAL_PTLIB_LDAP */
61 #endif
62 /* #undef OPAL_PTLIB_VXML */
63 /* #undef OPAL_PTLIB_CONFIG_FILE */
64 #define OPAL_AEC 1
65 
66 
67 // If a "configure" did not set these variables above then they get set from PTlib variables
68 
69 #if defined(P_NAT) && !defined(OPAL_PTLIB_NAT)
70  #define OPAL_PTLIB_NAT P_NAT
71 #endif
72 #if defined(P_SSL) && !defined(OPAL_PTLIB_SSL)
73  #define OPAL_PTLIB_SSL P_SSL
74 #endif
75 #if defined(P_ASN) && !defined(OPAL_PTLIB_ASN)
76  #define OPAL_PTLIB_ASN P_ASN
77 #endif
78 #if defined(P_EXPAT) && !defined(OPAL_PTLIB_EXPAT)
79  #define OPAL_PTLIB_EXPAT P_EXPAT
80 #endif
81 #if defined(P_AUDIO) && !defined(OPAL_PTLIB_AUDIO)
82  #define OPAL_PTLIB_AUDIO P_AUDIO
83 #endif
84 #if defined(P_VIDEO) && !defined(OPAL_PTLIB_VIDEO)
85  #define OPAL_PTLIB_VIDEO P_VIDEO
86 #endif
87 #if defined(P_WAVFILE) && !defined(OPAL_PTLIB_WAVFILE)
88  #define OPAL_PTLIB_WAVFILE P_WAVFILE
89 #endif
90 #if defined(P_DTMF) && !defined(OPAL_PTLIB_DTMF)
91  #define OPAL_PTLIB_DTMF P_DTMF
92 #endif
93 #if defined(P_HAS_IPV6) && !defined(OPAL_PTLIB_IPV6)
94  #define OPAL_PTLIB_IPV6 P_HAS_IPV6
95 #endif
96 #if defined(P_DNS_RESOLVER) && !defined(OPAL_PTLIB_DNS_RESOLVER)
97  #define OPAL_PTLIB_DNS_RESOLVER P_DNS_RESOLVER
98 #endif
99 #if defined(P_LDAP) && !defined(OPAL_PTLIB_LDAP)
100  #define OPAL_PTLIB_LDAP P_LDAP
101 #endif
102 #if defined(P_VXML) && !defined(OPAL_PTLIB_VXML)
103  #define OPAL_PTLIB_VXML P_VXML
104 #endif
105 #if defined(P_CONFIG_FILE) && !defined(OPAL_PTLIB_CONFIG_FILE)
106  #define OPAL_PTLIB_CONFIG_FILE P_CONFIG_FILE
107 #endif
108 #if defined(P_GSTREAMER) && !defined(OPAL_GSTREAMER)
109  #define OPAL_GSTREAMER P_GSTREAMER
110 #endif
111 #if defined(P_HTTP) && !defined(OPAL_PTLIB_HTTP)
112  #define OPAL_PTLIB_HTTP P_HTTP
113 #endif
114 
115 // Video
116 #if P_VIDEO
117  #define OPAL_VIDEO 1
118 #endif
119 
120 
122 //
123 // Protocol support
124 //
125 
126 #if P_ASN
127  #define OPAL_H323 1
128 #endif
129 #define OPAL_SDP 1
130 #if OPAL_SDP
131  #define OPAL_SIP 1
132 #endif
133 #define OPAL_IAX2 1
134 #define OPAL_SKINNY 1
135 #define OPAL_LID 1
136 /* #undef OPAL_CAPI */
137 /* #undef OPAL_DAHDI */
138 /* #undef OPAL_T120DATA */
139 
140 #if OPAL_PTLIB_VXML
141  #define OPAL_IVR 1
142 #endif
143 
144 #if OPAL_SDP && OPAL_PTLIB_HTTP
145  #define OPAL_SDP_HTTP 1
146 #endif
147 
148 #if OPAL_SDP && P_STUNSRVR && P_SSL
149  #define OPAL_ICE 1
150 #endif
151 
152 #if OPAL_H323
153  #if OPAL_VIDEO
154  #define OPAL_H239 1
155  #endif
156  #define OPAL_H501 1
157 
158  #define OPAL_H450 1
159  #if OPAL_H450
160  #define H323_H450 OPAL_H450
161  #endif
162 
163  #define OPAL_H460 1
164  #if OPAL_H460 && OPAL_PTLIB_NAT
165  #define OPAL_H460_NAT 1
166  #if OPAL_H460_NAT && P_STUN
167  #define OPAL_H460_24 1
168  #if OPAL_PTLIB_SSL
169  #define OPAL_H460_24A 1
170  #endif
171  #endif
172  #endif
173 
174  #if OPAL_PTLIB_SSL
175  #define OPAL_H235_6 1
176  #endif
177 #endif // OPAL_H323
178 
179 
181 //
182 // Various options
183 //
184 
185 #define OPAL_STATISTICS 1
186 #define OPAL_RTCP_XR 1
187 /* #undef OPAL_RTP_FEC */
188 #define GCC_HAS_CLZ 1
189 
190 #define OPAL_HAS_MIXER 1
191 #if OPAL_PTLIB_AUDIO
192  #define OPAL_HAS_PCSS 1
193 #endif
194 
195 #define OPAL_SCRIPT 1
196 
197 
199 //
200 // Media support
201 //
202 
203 // G.711 Packet Loss Concealment
204 #define OPAL_G711PLC 1
205 
206 #if PTRACING
207 /* #undef OPAL_JITTER_BUFFER_LATENCY_CHECK */
208 #endif
209 
210 #if OPAL_VIDEO
211  // Uncompressed video over RTP
212  #define OPAL_RFC4175 1
213 
214  // JPEG over RTP
215 /* #undef OPAL_RFC2435 */
216 
217  #if OPAL_RFC2435
218  #if defined(_MSC_VER)
219  #define JPEGLIB_LIBRARY "@JPEGLIB_DIR@/../lib/jpeg.lib"
220  #pragma include_alias(<jpeglib.h>, <@JPEGLIB_DIR@/jpeglib.h>)
221  #endif
222  #endif
223 #endif
224 
225 
226 // T.38 Fax
227 #define OPAL_T38_CAPABILITY 1
228 
229 #if OPAL_T38_CAPABILITY && OPAL_PTLIB_ASN && OPAL_STATISTICS
230  #define OPAL_FAX 1
231 #endif
232 
233 #if !OPAL_FAX
234  #define H323_DISABLE_T38 1
235 #endif
236 
237 
238 // Presence
239 #if OPAL_PTLIB_EXPAT
240  #define OPAL_HAS_PRESENCE 1
241 
242  #if OPAL_HAS_PRESENCE && OPAL_SIP
243  #define OPAL_SIP_PRESENCE 1
244  #endif
245 #endif
246 
247 
248 // Instant Messaging
249 #define OPAL_HAS_MSRP 1
250 #if OPAL_SIP
251  #define OPAL_HAS_SIPIM 1
252 #endif
253 #define OPAL_HAS_RFC4103 1
254 
255 #define OPAL_HAS_IM (OPAL_HAS_SIPIM || OPAL_HAS_MSRP || OPAL_HAS_RFC4103)
256 
257 
258 // Far end camera control
259 #define OPAL_HAS_H224 1
260 #if OPAL_VIDEO && OPAL_HAS_H224
261  #define OPAL_HAS_H281 1
262 #endif
263 
264 
265 // Use system Speex audio codec
266 #define OPAL_SYSTEM_SPEEX 1
267 /* #undef OPAL_SPEEX_FLOAT_NOISE */
268 
269 
271 //
272 // VoiceTronic VPB Line Interface Devide support
273 //
274 
275 #if OPAL_LID
276 /* #undef HAS_VPB */
277 
278  #if HAS_VPB
279  #if defined(_MSC_VER)
280  #pragma include_alias(<vpbapi.h>, <@VPB_DIR@/src/vpbapi.h>)
281  #define VPB_LIBRARY "@VPB_DIR@/win32/libvpb/Debug/libvpb.lib"
282  #endif
283  #endif
284 #endif
285 
286 
288 //
289 // libSRTP support
290 //
291 
292 #if OPAL_PTLIB_SSL
293  #define OPAL_SRTP 1
294 /* #undef OPAL_SRTP_ERROR_CONST */
295  #if P_SSL
296  #define OPAL_AEAD_CRYPTO_SUITES 1
297  #endif
298  #define HAS_SRTP_SRTP_H 0
299 #endif
300 
302 //
303 // libZRTP support
304 //
305 
306 /* Temporarily disabled as is currently broken, doesn't work,
307  probably doesn't even compile, need to sort out API to enable/disable as
308  well as getting the pass code back to user, and link into libzrtp
309 */
310 //#undef HAS_LIBZRTP
311 
312 #if defined(OPAL_SRTP) && defined(HAS_LIBZRTP)
313 
314  #define OPAL_ZRTP 1
315 
316  #if defined(_MSC_VER)
317 
318  #ifdef _DEBUG
319  #define LIBZRTP_LIBRARY "@LIBZRTP_DIR@/Debug/libzrtp.lib"
320  #else
321  #define LIBZRTP_LIBRARY "@LIBZRTP_DIR@/Release/libzrtp.lib"
322  #endif
323 
324  #pragma comment(lib, LIBZRTP_LIBRARY)
325 
326  #pragma include_alias("WINCONFIG/config.h", "@LIBZRTP_DIR@/srtp_win32k/WINCONFIG/config.h")
327  #pragma include_alias("WINCONFIG\config.h", "@LIBZRTP_DIR@/srtp_win32k/WINCONFIG/config.h")
328 
329  #pragma include_alias(<zrtp.h>, <@LIBZRTP_DIR@/include/zrtp.h>)
330  #pragma include_alias(<zrtp_log.h>, <@LIBZRTP_DIR@/include/zrtp_log.h>)
331  #pragma include_alias(<zrtp_types.h>, <@LIBZRTP_DIR@/include/zrtp_types.h>)
332  #pragma include_alias(<zrtp_crypto.h>, <@LIBZRTP_DIR@/include/zrtp_crypto.h>)
333  #pragma include_alias(<zrtp_protocol.h>, <@LIBZRTP_DIR@/include/zrtp_protocol.h>)
334  #pragma include_alias(<zrtp_string.h>, <@LIBZRTP_DIR@/include/zrtp_string.h>)
335  #pragma include_alias(<zrtp_iface.h>, <@LIBZRTP_DIR@/include/zrtp_iface.h>)
336  #pragma include_alias(<zrtp_error.h>, <@LIBZRTP_DIR@/include/zrtp_error.h>)
337  #pragma include_alias(<zrtp_net.h>, <@LIBZRTP_DIR@/include/zrtp_net.h>)
338  #pragma include_alias(<zrtp_system.h>, <@LIBZRTP_DIR@/include/zrtp_system.h>)
339  #pragma include_alias("bn.h", "@LIBZRTP_DIR@/bnlib/bn.h")
340  #pragma include_alias(<bn.h>, <@LIBZRTP_DIR@/bnlib/bn.h>)
341  #pragma include_alias("bnsize00.h", "@LIBZRTP_DIR@/bnlib/bnsize00.h")
342  #pragma include_alias(<bnsize00.h>, <@LIBZRTP_DIR@/bnlib/bnsize00.h>)
343 
344  #pragma include_alias("aes.h", "@LIBZRTP_DIR@/bgaes/aes.h")
345  #pragma include_alias("sha2.h", "@LIBZRTP_DIR@/bgaes/sha2.h")
346 
347  #pragma include_alias("zrtp_win_config.h", "@LIBZRTP_DIR@/config/zrtp_win_config.h")
348 
349 
350  // ZRTP includes SRTP, so include SRTP headers
351 
352  #pragma include_alias("srtp.h", "@LIBZRTP_DIR@/srtp_win32k/include/srtp.h")
353  #pragma include_alias(<srtp.h>, <@LIBZRTP_DIR@/srtp_win32k/include/srtp.h>)
354  #pragma include_alias("srtp/srtp.h", "@LIBZRTP_DIR@/srtp_win32k/include/srtp.h")
355  #pragma include_alias(<srtp/include/srtp.h>, <@LIBZRTP_DIR@/srtp_win32k/include/srtp.h>)
356  #pragma include_alias("crypto_kernel.h", "@LIBZRTP_DIR@/srtp_win32k/crypto/include/crypto_kernel.h")
357  #pragma include_alias("rdbx.h", "@LIBZRTP_DIR@/srtp_win32k/crypto/include/rdbx.h")
358  #pragma include_alias("rdb.h", "@LIBZRTP_DIR@/srtp_win32k/crypto/include/rdb.h")
359  #pragma include_alias("integers.h", "@LIBZRTP_DIR@/srtp_win32k/crypto/include/integers.h")
360 
361  // end of SRTP headers
362 
363  #endif
364 #endif
365 
366 
368 //
369 // Java JNI support
370 //
371 
372 /* #undef OPAL_JAVA */
373 
374 #if OPAL_JAVA && defined(_MSC_VER)
375  #pragma include_alias(<jni.h>, <@JAVA_DIR@/include/jni.h>)
376  #pragma include_alias("jni_md.h", "@JAVA_DIR@/include/win32/jni_md.h")
377 #endif
378 
379 
381 //
382 // Lync (UCMA) support
383 //
384 
385 /* #undef OPAL_LYNC */
386 #if OPAL_LYNC && defined(_MSC_VER)
387  #define OPAL_LYNC_LIBRARY "@OPAL_LYNC_DIR@/SDK/Core/Bin/Microsoft.Rtc.Collaboration.dll"
388 #endif
389 
390 
392 //
393 // C# interface support
394 //
395 
396 #define OPAL_CSHARP 1
397 
398 
400 //
401 // Ruby support
402 //
403 
404 /* #undef OPAL_RUBY */
405 
406 #if OPAL_RUBY
407 
408  #if defined(_MSC_VER)
409  #define RUBY_MSC_VER 1200
410 
411  #pragma include_alias(<ruby.h>, <@RUBY_DIR@/ruby.h>)
412  #pragma include_alias("ruby/config.h", "@RUBY_DIR@/i386-mswin32/ruby/config.h")
413  #pragma include_alias("ruby/io.h", "@RUBY_DIR@/ruby/io.h")
414  #pragma include_alias("ruby/encoding.h", "@RUBY_DIR@/ruby/encoding.h")
415  #pragma include_alias("ruby/oniguruma.h", "@RUBY_DIR@/ruby/oniguruma.h")
416 
417  #define RUBY_LIBRARY "@RUBY_DIR@/../../lib/msvcrt-ruby191.lib"
418  #endif
419 
420 #endif
421 
422 
424 //
425 // Get rid of the ASN that is not in use
426 //
427 
428 #if !OPAL_H323
429  #define H323_DISABLE_H225 1
430  #define H323_DISABLE_H235 1
431  #define H323_DISABLE_H245 1
432 #endif
433 
434 #if OPAL_SRTP && OPAL_H323
435  #define OPAL_H235_8 1
436 #endif
437 
438 #if !OPAL_H235_8
439  #define H323_DISABLE_H235_SRTP 1
440 #endif
441 
442 #if !OPAL_H450
443  #define H323_DISABLE_X880 1
444  #define H323_DISABLE_H4501 1
445  #define H323_DISABLE_H4502 1
446  #define H323_DISABLE_H4503 1
447  #define H323_DISABLE_H4504 1
448  #define H323_DISABLE_H4505 1
449  #define H323_DISABLE_H4506 1
450  #define H323_DISABLE_H4507 1
451  #define H323_DISABLE_H4508 1
452  #define H323_DISABLE_H4509 1
453  #define H323_DISABLE_H45010 1
454  #define H323_DISABLE_H45011 1
455 #endif
456 
457 #if !OPAL_H460_NAT
458  #define H323_DISABLE_H46018 1
459  #define H323_DISABLE_H46019 1
460  #define H323_DISABLE_H46024B 1
461 #endif
462 
463 
464 #if !OPAL_T120DATA
465  #define H323_DISABLE_GCC 1
466  #define H323_DISABLE_MCS 1
467 #endif // OPAL_T120DATA
468 
469 
470 #if !OPAL_H501
471  #define H323_DISABLE_H501 1
472 #endif
473 
474 
475 #endif // _OPAL_CONFIG_H
476 
477 
478 // End Of File ///////////////////////////////////////////////////////////////