OPAL  Version 3.14.3
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  * $Revision: 32014 $
28  * $Author: rjongbloed $
29  * $Date: 2014-05-31 16:17:58 +1000 (Sat, 31 May 2014) $
30  */
31 
32 #ifndef OPAL_BUILDOPTS_H
33 #define OPAL_BUILDOPTS_H
34 
35 #include <ptlib_config.h>
36 
38 //
39 // OPAL Version
40 //
41 
42 #define OPAL_MAJOR 3
43 #define OPAL_MINOR 14
44 #define OPAL_BUILD 3
45 #define OPAL_VERSION "3.14.3"
46 
47 #define OPAL_CHECK_VERSION(major,minor,build) \
48  (PTLIB_VERSION_INT(OPAL_MAJOR,OPAL_MINOR,OPAL_BUILD) >= PTLIB_VERSION_INT(major,minor,build))
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 #ifndef _WIN32_WCE
59 /* #undef OPAL_PTLIB_DNS_RESOLVER */
60 #endif
61 #ifndef P_IPHONEOS
62 /* #undef OPAL_PTLIB_LDAP */
63 #endif
64 /* #undef OPAL_PTLIB_VXML */
65 /* #undef OPAL_PTLIB_CONFIG_FILE */
66 #define OPAL_AEC 1
67 
68 
69 // If a "configure" did not set these variables above then they get set from PTlib variables
70 
71 #if defined(P_NAT) && !defined(OPAL_PTLIB_NAT)
72  #define OPAL_PTLIB_NAT P_NAT
73 #endif
74 #if defined(P_SSL) && !defined(OPAL_PTLIB_SSL)
75  #define OPAL_PTLIB_SSL P_SSL
76 #endif
77 #if defined(P_ASN) && !defined(OPAL_PTLIB_ASN)
78  #define OPAL_PTLIB_ASN P_ASN
79 #endif
80 #if defined(P_EXPAT) && !defined(OPAL_PTLIB_EXPAT)
81  #define OPAL_PTLIB_EXPAT P_EXPAT
82 #endif
83 #if defined(P_AUDIO) && !defined(OPAL_PTLIB_AUDIO)
84  #define OPAL_PTLIB_AUDIO P_AUDIO
85 #endif
86 #if defined(P_VIDEO) && !defined(OPAL_PTLIB_VIDEO)
87  #define OPAL_PTLIB_VIDEO P_VIDEO
88 #endif
89 #if defined(P_WAVFILE) && !defined(OPAL_PTLIB_WAVFILE)
90  #define OPAL_PTLIB_WAVFILE P_WAVFILE
91 #endif
92 #if defined(P_DTMF) && !defined(OPAL_PTLIB_DTMF)
93  #define OPAL_PTLIB_DTMF P_DTMF
94 #endif
95 #if defined(P_HAS_IPV6) && !defined(OPAL_PTLIB_IPV6)
96  #define OPAL_PTLIB_IPV6 P_HAS_IPV6
97 #endif
98 #if defined(P_DNS_RESOLVER) && !defined(OPAL_PTLIB_DNS_RESOLVER)
99  #define OPAL_PTLIB_DNS_RESOLVER P_DNS_RESOLVER
100 #endif
101 #if defined(P_LDAP) && !defined(OPAL_PTLIB_LDAP)
102  #define OPAL_PTLIB_LDAP P_LDAP
103 #endif
104 #if defined(P_VXML) && !defined(OPAL_PTLIB_VXML)
105  #define OPAL_PTLIB_VXML P_VXML
106 #endif
107 #if defined(P_CONFIG_FILE) && !defined(OPAL_PTLIB_CONFIG_FILE)
108  #define OPAL_PTLIB_CONFIG_FILE P_CONFIG_FILE
109 #endif
110 #if defined(P_GSTREAMER) && !defined(OPAL_GSTREAMER)
111  #define OPAL_GSTREAMER P_GSTREAMER
112 #endif
113 #if defined(P_HTTP) && !defined(OPAL_PTLIB_HTTP)
114  #define OPAL_PTLIB_HTTP P_HTTP
115 #endif
116 
117 // Video
118 #if P_VIDEO
119  #define OPAL_VIDEO 1
120 #endif
121 
122 
124 //
125 // Protocol support
126 //
127 
128 #define OPAL_SIP 1
129 #if P_ASN
130  #define OPAL_H323 1
131 #endif
132 #define OPAL_IAX2 1
133 #define OPAL_SKINNY 1
134 #define OPAL_LID 1
135 #define OPAL_CAPI 1
136 #define OPAL_DAHDI 1
137 /* #undef OPAL_T120DATA */
138 
139 #if OPAL_PTLIB_VXML
140  #define OPAL_IVR 1
141 #endif
142 
143 #if OPAL_SIP
144  #define OPAL_SDP 1
145  #if P_STUNSRVR
146  #define OPAL_ICE 1
147  #endif
148 #endif
149 
150 #if OPAL_H323
151  #if OPAL_VIDEO
152  #define OPAL_H239 1
153  #endif
154  #define OPAL_H501 1
155 
156  #define OPAL_H450 1
157  #if OPAL_H450
158  #define H323_H450 OPAL_H450
159  #endif
160 
161  #define OPAL_H460 1
162  #if OPAL_H460 && OPAL_PTLIB_NAT
163  #define OPAL_H460_NAT 1
164  #if OPAL_H460_NAT && P_STUN
165  #define OPAL_H460_24 1
166  #if OPAL_PTLIB_SSL
167  #define OPAL_H460_24A 1
168  #endif
169  #endif
170  #endif
171 
172  #if OPAL_PTLIB_SSL
173  #define OPAL_H235_6 1
174  #endif
175 #endif // OPAL_H323
176 
177 
179 //
180 // Various options
181 //
182 
183 #define OPAL_STATISTICS 1
184 #define OPAL_RTCP_XR 1
185 /* #undef OPAL_RTP_FEC */
186 #define GCC_HAS_CLZ 1
187 
188 #define OPAL_HAS_MIXER 1
189 #if OPAL_PTLIB_AUDIO
190  #define OPAL_HAS_PCSS 1
191 #endif
192 
193 #define OPAL_SCRIPT 1
194 
195 
197 //
198 // Media support
199 //
200 
201 // G.711 Packet Loss Concealment
202 #define OPAL_G711PLC 1
203 
204 #if OPAL_VIDEO
205  // Uncompressed video over RTP
206  #define OPAL_RFC4175 1
207 
208  // JPEG over RTP
209 /* #undef OPAL_RFC2435 */
210 
211  #if OPAL_RFC2435
212  #if defined(_MSC_VER)
213  #define JPEGLIB_LIBRARY "@JPEGLIB_DIR@/../lib/jpeg.lib"
214  #pragma include_alias(<jpeglib.h>, <@JPEGLIB_DIR@/jpeglib.h>)
215  #endif
216  #endif
217 #endif
218 
219 
220 // T.38 Fax
221 #define OPAL_T38_CAPABILITY 1
222 
223 #if OPAL_T38_CAPABILITY && OPAL_PTLIB_ASN && OPAL_STATISTICS
224  #define OPAL_FAX 1
225 #endif
226 
227 #if !OPAL_FAX
228  #define H323_DISABLE_T38 1
229 #endif
230 
231 
232 // Presence
233 #if OPAL_PTLIB_EXPAT
234  #define OPAL_HAS_PRESENCE 1
235 
236  #if OPAL_HAS_PRESENCE && OPAL_SIP
237  #define OPAL_SIP_PRESENCE 1
238  #endif
239 #endif
240 
241 
242 // Instant Messaging
243 #define OPAL_HAS_MSRP 1
244 #if OPAL_SIP
245  #define OPAL_HAS_SIPIM 1
246 #endif
247 #define OPAL_HAS_RFC4103 1
248 
249 #define OPAL_HAS_IM (OPAL_HAS_SIPIM || OPAL_HAS_MSRP || OPAL_HAS_RFC4103)
250 
251 
252 // Far end camera control
253 #define OPAL_HAS_H224 1
254 #if OPAL_VIDEO && OPAL_HAS_H224
255  #define OPAL_HAS_H281 1
256 #endif
257 
258 
259 // Use system Speex audio codec
260 #define OPAL_SYSTEM_SPEEX 1
261 /* #undef OPAL_SPEEX_FLOAT_NOISE */
262 
263 
265 //
266 // VoiceTronic VPB Line Interface Devide support
267 //
268 
269 #if OPAL_LID
270 /* #undef HAS_VPB */
271 
272  #if HAS_VPB
273  #if defined(_MSC_VER)
274  #pragma include_alias(<vpbapi.h>, <@VPB_DIR@/src/vpbapi.h>)
275  #define VPB_LIBRARY "@VPB_DIR@/win32/libvpb/Debug/libvpb.lib"
276  #endif
277  #endif
278 #endif
279 
280 
282 //
283 // libSRTP support
284 //
285 
286 #if OPAL_PTLIB_SSL
287  #define OPAL_SRTP 1
288  #define HAS_SRTP_SRTP_H 1
289 #endif
290 
292 //
293 // libZRTP support
294 //
295 
296 /* Temporarily disabled as is currently broken, doesn't work,
297  probably doesn't even compile, need to sort out API to enable/disable as
298  well as getting the pass code back to user, and link into libzrtp
299 */
300 //#undef HAS_LIBZRTP
301 
302 #if defined(OPAL_SRTP) && defined(HAS_LIBZRTP) && !defined(_WIN32_WCE)
303 
304  #define OPAL_ZRTP 1
305 
306  #if defined(_MSC_VER)
307 
308  #ifdef _DEBUG
309  #define LIBZRTP_LIBRARY "@LIBZRTP_DIR@/Debug/libzrtp.lib"
310  #else
311  #define LIBZRTP_LIBRARY "@LIBZRTP_DIR@/Release/libzrtp.lib"
312  #endif
313 
314  #pragma comment(lib, LIBZRTP_LIBRARY)
315 
316  #pragma include_alias("WINCONFIG/config.h", "@LIBZRTP_DIR@/srtp_win32k/WINCONFIG/config.h")
317  #pragma include_alias("WINCONFIG\config.h", "@LIBZRTP_DIR@/srtp_win32k/WINCONFIG/config.h")
318 
319  #pragma include_alias(<zrtp.h>, <@LIBZRTP_DIR@/include/zrtp.h>)
320  #pragma include_alias(<zrtp_log.h>, <@LIBZRTP_DIR@/include/zrtp_log.h>)
321  #pragma include_alias(<zrtp_types.h>, <@LIBZRTP_DIR@/include/zrtp_types.h>)
322  #pragma include_alias(<zrtp_crypto.h>, <@LIBZRTP_DIR@/include/zrtp_crypto.h>)
323  #pragma include_alias(<zrtp_protocol.h>, <@LIBZRTP_DIR@/include/zrtp_protocol.h>)
324  #pragma include_alias(<zrtp_string.h>, <@LIBZRTP_DIR@/include/zrtp_string.h>)
325  #pragma include_alias(<zrtp_iface.h>, <@LIBZRTP_DIR@/include/zrtp_iface.h>)
326  #pragma include_alias(<zrtp_error.h>, <@LIBZRTP_DIR@/include/zrtp_error.h>)
327  #pragma include_alias(<zrtp_net.h>, <@LIBZRTP_DIR@/include/zrtp_net.h>)
328  #pragma include_alias(<zrtp_system.h>, <@LIBZRTP_DIR@/include/zrtp_system.h>)
329  #pragma include_alias("bn.h", "@LIBZRTP_DIR@/bnlib/bn.h")
330  #pragma include_alias(<bn.h>, <@LIBZRTP_DIR@/bnlib/bn.h>)
331  #pragma include_alias("bnsize00.h", "@LIBZRTP_DIR@/bnlib/bnsize00.h")
332  #pragma include_alias(<bnsize00.h>, <@LIBZRTP_DIR@/bnlib/bnsize00.h>)
333 
334  #pragma include_alias("aes.h", "@LIBZRTP_DIR@/bgaes/aes.h")
335  #pragma include_alias("sha2.h", "@LIBZRTP_DIR@/bgaes/sha2.h")
336 
337  #pragma include_alias("zrtp_win_config.h", "@LIBZRTP_DIR@/config/zrtp_win_config.h")
338 
339 
340  // ZRTP includes SRTP, so include SRTP headers
341 
342  #pragma include_alias("srtp.h", "@LIBZRTP_DIR@/srtp_win32k/include/srtp.h")
343  #pragma include_alias(<srtp.h>, <@LIBZRTP_DIR@/srtp_win32k/include/srtp.h>)
344  #pragma include_alias("srtp/srtp.h", "@LIBZRTP_DIR@/srtp_win32k/include/srtp.h")
345  #pragma include_alias(<srtp/include/srtp.h>, <@LIBZRTP_DIR@/srtp_win32k/include/srtp.h>)
346  #pragma include_alias("crypto_kernel.h", "@LIBZRTP_DIR@/srtp_win32k/crypto/include/crypto_kernel.h")
347  #pragma include_alias("rdbx.h", "@LIBZRTP_DIR@/srtp_win32k/crypto/include/rdbx.h")
348  #pragma include_alias("rdb.h", "@LIBZRTP_DIR@/srtp_win32k/crypto/include/rdb.h")
349  #pragma include_alias("integers.h", "@LIBZRTP_DIR@/srtp_win32k/crypto/include/integers.h")
350 
351  // end of SRTP headers
352 
353  #endif
354 #endif
355 
356 
358 //
359 // Java JNI support
360 //
361 
362 /* #undef OPAL_JAVA */
363 
364 #if OPAL_JAVA && defined(_MSC_VER)
365  #pragma include_alias(<jni.h>, <@JAVA_DIR@/include/jni.h>)
366  #pragma include_alias("jni_md.h", "@JAVA_DIR@/include/win32/jni_md.h")
367 #endif
368 
369 
371 //
372 // C# interface support
373 //
374 
375 #define OPAL_CSHARP 1
376 
377 
379 //
380 // Ruby support
381 //
382 
383 #if !defined(_WIN32_WCE)
384 /* #undef OPAL_RUBY */
385 #endif
386 
387 #if OPAL_RUBY
388 
389  #if defined(_MSC_VER)
390  #define RUBY_MSC_VER 1200
391 
392  #pragma include_alias(<ruby.h>, <@RUBY_DIR@/ruby.h>)
393  #pragma include_alias("ruby/config.h", "@RUBY_DIR@/i386-mswin32/ruby/config.h")
394  #pragma include_alias("ruby/io.h", "@RUBY_DIR@/ruby/io.h")
395  #pragma include_alias("ruby/encoding.h", "@RUBY_DIR@/ruby/encoding.h")
396  #pragma include_alias("ruby/oniguruma.h", "@RUBY_DIR@/ruby/oniguruma.h")
397 
398  #define RUBY_LIBRARY "@RUBY_DIR@/../../lib/msvcrt-ruby191.lib"
399  #endif
400 
401 #endif
402 
403 
405 //
406 // Get rid of the ASN that is not in use
407 //
408 
409 #if !OPAL_H323
410  #define H323_DISABLE_H225 1
411  #define H323_DISABLE_H235 1
412  #define H323_DISABLE_H245 1
413 #endif
414 
415 #if OPAL_SRTP && OPAL_H323
416  #define OPAL_H235_8 1
417 #endif
418 
419 #if !OPAL_H235_8
420  #define H323_DISABLE_H235_SRTP 1
421 #endif
422 
423 #if !OPAL_H450
424  #define H323_DISABLE_X880 1
425  #define H323_DISABLE_H4501 1
426  #define H323_DISABLE_H4502 1
427  #define H323_DISABLE_H4503 1
428  #define H323_DISABLE_H4504 1
429  #define H323_DISABLE_H4505 1
430  #define H323_DISABLE_H4506 1
431  #define H323_DISABLE_H4507 1
432  #define H323_DISABLE_H4508 1
433  #define H323_DISABLE_H4509 1
434  #define H323_DISABLE_H45010 1
435  #define H323_DISABLE_H45011 1
436 #endif
437 
438 #if !OPAL_H460_NAT
439  #define H323_DISABLE_H46018 1
440  #define H323_DISABLE_H46019 1
441  #define H323_DISABLE_H46024B 1
442 #endif
443 
444 
445 #if !OPAL_T120DATA
446  #define H323_DISABLE_GCC 1
447  #define H323_DISABLE_MCS 1
448 #endif // OPAL_T120DATA
449 
450 
451 #if !OPAL_H501
452  #define H323_DISABLE_H501 1
453 #endif
454 
455 
456 #endif // OPAL_BUILDOPTS_H
457 
458 
459 // End Of File ///////////////////////////////////////////////////////////////