4 # Make file for Open Phone Abstraction library
6 # Copyright (c) 2001 Equivalence Pty. Ltd.
8 # The contents of this file are subject to the Mozilla Public License
9 # Version 1.0 (the "License"); you may not use this file except in
10 # compliance with the License. You may obtain a copy of the License at
11 # http://www.mozilla.org/MPL/
13 # Software distributed under the License is distributed on an "AS IS"
14 # basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
15 # the License for the specific language governing rights and limitations
18 # The Original Code is Open Phone Abstraction Library.
20 # The Initial Developer of the Original Code is Equivalence Pty. Ltd.
22 # Contributor(s): ______________________________________.
25 # Revision 1.33 2006/06/08 07:03:16 csoutheren
26 # Changed to force docs to build even when docs directory exists
28 # Revision 1.32 2006/05/30 12:04:08 hfriederich
29 # Enabling to build H.460
31 # Revision 1.31 2006/04/22 14:05:47 dsandras
32 # When building a shared library x that references symbols in libraries y,
33 # the y libraries need to be added to the linker command always. Thanks to
34 # Vitaly Lipatov. (Fixes Ekiga report #338310).
36 # Revision 1.30 2006/04/20 16:56:41 hfriederich
37 # Changes to allow compilation of H.224/H.281 code as well as to disable H.224 entirely
39 # Revision 1.29 2006/04/17 00:06:26 csoutheren
40 # Allow ILBC codec to be disabled and detect if not present
42 # Revision 1.28 2006/02/01 22:42:55 dominance
43 # ensure we have the full disctinct SONAME instead of just the major number version.
45 # Revision 1.27 2006/01/30 02:23:15 csoutheren
46 # First cut at fixing problem with speex libraries
48 # Revision 1.26 2006/01/20 00:00:59 csoutheren
49 # Added protected against some source directories not being present
50 # even wen configuration says they should be
52 # Revision 1.25 2006/01/19 22:40:33 dereksmithies
53 # Add iax2 to the list of instal directories. Thanks to Damien Sandras
54 # for reporting the bug in iax2 compilation.
56 # Revision 1.24 2006/01/18 11:26:29 dsandras
57 # Reverted previous change.
59 # Revision 1.22 2006/01/14 10:43:06 dsandras
60 # Applied patch from Brian Lu <Brian.Lu _AT_____ sun.com> to allow compilation
61 # with OpenSolaris compiler. Many thanks !!!
63 # Revision 1.21 2006/01/07 17:37:50 dsandras
64 # Updated to speex 1.1.11.2 to fix divergeance issues.
66 # Revision 1.20 2006/01/01 19:19:32 dsandras
67 # Added RFC2190 H.263 codec thanks to Salyens. Many thanks!
69 # Revision 1.19 2005/12/06 06:34:10 csoutheren
70 # Added configure support for Sangoma and empty LID source and header files
72 # Revision 1.18 2005/11/24 20:31:54 dsandras
73 # Added support for echo cancelation using Speex.
74 # Added possibility to add a filter to an OpalMediaPatch for all patches of a connection.
76 # Revision 1.17 2005/11/23 22:01:37 dsandras
77 # Reverted previous change. echocancel.cxx is not ready to go in yet.
79 # Revision 1.16 2005/11/23 21:58:33 dsandras
82 # Revision 1.15 2005/11/20 21:03:50 dsandras
83 # Upgraded to Speex 1.1.10.
85 # Revision 1.14 2005/09/13 20:48:22 dominance
86 # minor cleanups needed to support mingw compilation. Thanks goes to Julien Puydt.
88 # Revision 1.13 2005/08/10 11:07:14 csoutheren
90 # Fixed dynamic linking on MacOSX
91 # Thanks to Hannes Friederich
93 # Revision 1.12 2005/07/30 07:39:26 csoutheren
94 # Added support for compiling new IAX2 code
96 # Revision 1.11 2005/04/26 10:58:37 dsandras
97 # Committed workaround for "make install".
99 # Revision 1.10 2005/04/25 10:14:14 dsandras
100 # Move LIBDIR down due to conflicting names.
102 # Revision 1.9 2005/04/25 09:31:35 dsandras
105 # Revision 1.8 2005/04/25 09:07:58 dsandras
106 # Fixed install/uninstall.
108 # Revision 1.7 2005/04/21 01:05:55 csoutheren
109 # New fix from Peter Robinson
111 # Revision 1.6 2005/04/20 05:46:32 csoutheren
112 # Patch 1146010. Fix problem with install targets
113 # Thanks to Peter Robinson
115 # Revision 1.5 2005/04/11 10:41:05 dsandras
116 # Added patch from Georgi Georgiev to fix compilation issues on Athlon64.
118 # Revision 1.4 2005/02/27 22:03:39 dereksmithies
119 # Add target to generate docs with doxygen.
121 # Revision 1.3 2005/01/31 07:40:41 csoutheren
122 # Fix for MacOSX thanks to Hannes Friederich
124 # Revision 1.2 2004/12/05 18:14:20 dsandras
127 # Revision 1.1 2004/12/04 18:37:58 dsandras
128 # Ported the "make install" / "make uninstall" system from OpenH323 to OPAL.
130 # Revision 2.29 2004/06/04 05:29:28 csoutheren
131 # Updated for ASN file changes and added silencedetect.cxx
133 # Revision 2.28 2004/04/25 02:53:28 rjongbloed
134 # Fixed GNU 3.4 warnings
136 # Revision 2.27 2004/03/11 06:54:25 csoutheren
137 # Added ability to disable SIP or H.323 stacks
139 # Revision 2.26 2004/02/23 01:28:49 rjongbloed
140 # Fixed unix build for recent upgrade to OpenH323 latest code.
142 # Revision 2.25 2004/02/16 09:15:19 csoutheren
143 # Fixed problems with codecs on Unix systems
145 # Revision 2.24 2003/04/08 11:46:35 robertj
146 # Better portability for tr command when doing ASN parse.
148 # Revision 2.23 2003/04/08 06:09:19 robertj
149 # Fixed ASN compilation so do not need -I on compile line for asn includes.
151 # Revision 2.22 2003/04/02 06:52:04 robertj
152 # Added dependencies for H450 ASN files
154 # Revision 2.21 2003/03/26 02:49:00 robertj
155 # Added service/daemon sample application.
157 # Revision 2.20 2003/03/19 04:45:29 robertj
158 # Added opalvxml to build
160 # Revision 2.19 2003/03/18 23:09:37 robertj
161 # Fixed LD_LIBRARY_PATH issue with Solaris
163 # Revision 2.18 2003/03/17 23:08:41 robertj
166 # Revision 2.17 2003/03/17 22:36:38 robertj
167 # Added video support.
169 # Revision 2.16 2003/01/15 00:08:18 robertj
170 # Updated to OpenH323 v1.10.3
172 # Revision 2.15 2002/11/12 12:06:34 robertj
173 # Fixed Solaris compatibility
175 # Revision 2.14 2002/11/11 07:43:32 robertj
176 # Added speex codec files
178 # Revision 2.13 2002/09/11 05:56:16 robertj
179 # Fixed double inclusion of common.mak
180 # Added opalwavfile.cxx module
182 # Revision 2.12 2002/03/15 10:51:53 robertj
183 # Fixed problem with recursive inclusion on make files.
185 # Revision 2.11 2002/03/05 06:27:34 robertj
186 # Added ASN parser build and version check code.
188 # Revision 2.10 2002/02/22 04:16:25 robertj
189 # Added G.726 codec and fixed the lpc10 and GSM codecs.
191 # Revision 2.9 2002/02/11 09:38:28 robertj
192 # Moved version to root directory
194 # Revision 2.8 2002/02/06 11:52:53 rogerh
195 # Move -I$(ASN_INCDIR) so Opal's ldap.h is found instead of the OS's ldap.h
197 # Revision 2.7 2002/02/01 10:29:35 rogerh
198 # Use the right version.h file. (the other one had comments which confused
201 # Revision 2.6 2002/02/01 04:58:23 craigs
202 # Added sip directory to VPATH
204 # Revision 2.5 2002/02/01 04:53:01 robertj
205 # Added (very primitive!) SIP support.
207 # Revision 2.4 2002/02/01 00:19:20 robertj
208 # Updated to latest pwlilb.
209 # Added rfc2833 module
211 # Revision 2.3 2001/08/17 05:24:22 robertj
212 # Updates from OpenH323 v1.6.0 release.
214 # Revision 2.2 2001/08/01 06:22:55 robertj
215 # Major changes to H.323 capabilities, uses OpalMediaFormat for base name.
216 # Added G.711 transcoder.
218 # Revision 2.1 2001/07/30 03:41:20 robertj
219 # Added build of subdirectories for samples.
220 # Hid the asnparser.version file.
221 # Changed default OPALDIR variable to be current directory.
223 # Revision 2.0 2001/07/27 15:48:24 robertj
224 # Conversion of OpenH323 to Open Phone Abstraction Library (OPAL)
227 export OPALDIR
=@OPALDIR@
233 all :: bothdepend both
239 include $(OPALDIR
)/opal_inc.mak
241 PREFIX
=@INSTALLPREFIX@
/
242 exec_prefix = ${PREFIX}
248 ifeq ($(USE_GCC
),yes
)
252 OPAL_OBJDIR
= $(OPAL_LIBDIR
)/$(PT_OBJBASE
)
257 OBJDIR
= $(OPAL_OBJDIR
)
258 LIBDIR
= $(OPAL_LIBDIR
)
259 TARGET
= $(OPAL_LIBDIR
)/$(OPAL_FILE
)
261 STDCCFLAGS
+= @STDCCFLAGS@
264 STDCCFLAGS
+= -DPASN_NOPRINTON
266 STDCCFLAGS
+= -DPTRACING
269 VPATH_CXX
:= $(OPAL_SRCDIR
)/opal \
271 $(OPAL_SRCDIR
)/lids \
274 ifneq (,$(wildcard src
/iax2
))
276 VPATH_CXX
+= $(OPAL_SRCDIR
)/iax2
279 ifneq (,$(wildcard src
/sip
))
281 VPATH_CXX
+= $(OPAL_SRCDIR
)/sip
284 ifneq (,$(wildcard src
/h323
))
286 VPATH_CXX
+= $(OPAL_SRCDIR
)/h323 \
287 $(OPAL_SRCDIR
)/t120 \
292 ifneq (,$(wildcard src
/h224
))
294 VPATH_CXX
+= $(OPAL_SRCDIR
)/h224
298 VPATH_C
:= $(OPAL_SRCDIR
)/codec
300 ########################################
301 # Source files for library
303 SOURCES
:= $(OPAL_SRCDIR
)/opal
/manager.
cxx \
304 $(OPAL_SRCDIR
)/opal
/endpoint.
cxx \
305 $(OPAL_SRCDIR
)/opal
/connection.
cxx \
306 $(OPAL_SRCDIR
)/opal
/call.
cxx \
307 $(OPAL_SRCDIR
)/opal
/mediafmt.
cxx \
308 $(OPAL_SRCDIR
)/opal
/mediastrm.
cxx \
309 $(OPAL_SRCDIR
)/opal
/patch.
cxx \
310 $(OPAL_SRCDIR
)/opal
/transcoders.
cxx \
311 $(OPAL_SRCDIR
)/opal
/transports.
cxx \
312 $(OPAL_SRCDIR
)/opal
/guid.
cxx \
313 $(OPAL_SRCDIR
)/opal
/pcss.
cxx \
314 $(OPAL_SRCDIR
)/opal
/ivr.
cxx \
315 $(OPAL_SRCDIR
)/opal
/opalvxml.
cxx \
316 $(OPAL_SRCDIR
)/rtp
/rtp.
cxx \
317 $(OPAL_SRCDIR
)/rtp
/jitter.
cxx \
319 ########################################
323 ifeq ($(OPAL_H323
),1)
326 ASN_SRCDIR
:= $(OPAL_SRCDIR
)/asn
327 ASN_INCDIR
:= $(OPAL_INCDIR
)/asn
329 H450_ASN_FILES
:= h4501 h4502 h4503 h4504 h4505 h4506 h4507 h4508 h4509 h45010 h45011
330 SIMPLE_ASN_FILES
:= x880
$(H450_ASN_FILES
) mcs gcc t38
332 ASN_H_FILES
:= $(addprefix $(ASN_INCDIR
)/,$(addsuffix .h
, $(SIMPLE_ASN_FILES
)))
333 ASN_CXX_FILES
:= $(addprefix $(ASN_SRCDIR
)/,$(addsuffix .
cxx,$(SIMPLE_ASN_FILES
)))
335 ASN_H_FILES
+= $(ASN_INCDIR
)/h225.h
336 ASN_CXX_FILES
+= $(ASN_SRCDIR
)/h225_1.
cxx $(ASN_SRCDIR
)/h225_2.
cxx
338 ASN_H_FILES
+= $(ASN_INCDIR
)/h235.h
$(ASN_SRCDIR
)/h235_t.
cxx
339 ASN_CXX_FILES
+= $(ASN_SRCDIR
)/h235.
cxx
341 ASN_H_FILES
+= $(ASN_INCDIR
)/h245.h
342 ASN_CXX_FILES
+= $(ASN_SRCDIR
)/h245_1.
cxx $(ASN_SRCDIR
)/h245_2.
cxx $(ASN_SRCDIR
)/h245_3.
cxx
344 ASN_H_FILES
+= $(ASN_INCDIR
)/h248.h
345 ASN_CXX_FILES
+= $(ASN_SRCDIR
)/h248.
cxx
347 ASN_H_FILES
+= $(ASN_INCDIR
)/h501.h
348 ASN_CXX_FILES
+= $(ASN_SRCDIR
)/h501.
cxx
350 .PRECIOUS
: $(ASN_CXX_FILES
) $(ASN_H_FILES
)
353 SOURCES
+= $(ASN_CXX_FILES
) \
354 $(OPAL_SRCDIR
)/h323
/h323ep.
cxx \
355 $(OPAL_SRCDIR
)/h323
/h323.
cxx \
356 $(OPAL_SRCDIR
)/h323
/h323caps.
cxx \
357 $(OPAL_SRCDIR
)/h323
/h323neg.
cxx \
358 $(OPAL_SRCDIR
)/h323
/h323pdu.
cxx \
359 $(OPAL_SRCDIR
)/h323
/h323rtp.
cxx \
360 $(OPAL_SRCDIR
)/h323
/channels.
cxx \
361 $(OPAL_SRCDIR
)/h323
/svcctrl.
cxx \
362 $(OPAL_SRCDIR
)/h323
/h450pdu.
cxx \
363 $(OPAL_SRCDIR
)/h323
/q931.
cxx \
364 $(OPAL_SRCDIR
)/h323
/transaddr.
cxx \
365 $(OPAL_SRCDIR
)/h323
/gkclient.
cxx \
366 $(OPAL_SRCDIR
)/h323
/gkserver.
cxx \
367 $(OPAL_SRCDIR
)/h323
/h225ras.
cxx \
368 $(OPAL_SRCDIR
)/h323
/h323trans.
cxx \
369 $(OPAL_SRCDIR
)/h323
/h235auth.
cxx \
370 $(OPAL_SRCDIR
)/h323
/h501pdu.
cxx \
371 $(OPAL_SRCDIR
)/h323
/h323annexg.
cxx \
372 $(OPAL_SRCDIR
)/h323
/peclient.
cxx \
375 SOURCES
+= $(OPAL_SRCDIR
)/h323
/h4601.
cxx
379 SOURCES
+= $(OPAL_SRCDIR
)/h235auth1.
cxx
382 SOURCES
+= $(OPAL_SRCDIR
)/t120
/t120proto.
cxx \
383 $(OPAL_SRCDIR
)/t120
/h323t120.
cxx \
384 $(OPAL_SRCDIR
)/t120
/x224.
cxx \
385 $(OPAL_SRCDIR
)/t38
/t38proto.
cxx \
386 $(OPAL_SRCDIR
)/t38
/h323t38.
cxx
388 ifeq ($(OPAL_H224
), 1)
390 SOURCES
+= $(OPAL_SRCDIR
)/h224
/h323h224.
cxx
400 ifeq ($(OPAL_IAX2
),1)
404 $(OPAL_SRCDIR
)/iax2
/frame.
cxx \
405 $(OPAL_SRCDIR
)/iax2
/iax2con.
cxx \
406 $(OPAL_SRCDIR
)/iax2
/iax2ep.
cxx \
407 $(OPAL_SRCDIR
)/iax2
/iax2medstrm.
cxx \
408 $(OPAL_SRCDIR
)/iax2
/iedata.
cxx \
409 $(OPAL_SRCDIR
)/iax2
/ies.
cxx \
410 $(OPAL_SRCDIR
)/iax2
/processor.
cxx \
411 $(OPAL_SRCDIR
)/iax2
/receiver.
cxx \
412 $(OPAL_SRCDIR
)/iax2
/remote.
cxx \
413 $(OPAL_SRCDIR
)/iax2
/safestrings.
cxx \
414 $(OPAL_SRCDIR
)/iax2
/sound.
cxx \
415 $(OPAL_SRCDIR
)/iax2
/transmit.
cxx
419 ################################################################################
425 SOURCES
+= $(OPAL_SRCDIR
)/sip
/sipep.
cxx \
426 $(OPAL_SRCDIR
)/sip
/sipcon.
cxx \
427 $(OPAL_SRCDIR
)/sip
/sippdu.
cxx \
428 $(OPAL_SRCDIR
)/sip
/sdp.
cxx \
436 ifeq ($(OPAL_H224
), 1)
439 SOURCES
+= $(OPAL_SRCDIR
)/h224
/q922.
cxx \
440 $(OPAL_SRCDIR
)/h224
/h224.
cxx \
441 $(OPAL_SRCDIR
)/h224
/h281.
cxx
448 SOURCES
+= $(OPAL_SRCDIR
)/lids
/lid.
cxx \
449 $(OPAL_SRCDIR
)/lids
/lidep.
cxx \
452 SOURCES
+= $(OPAL_SRCDIR
)/lids
/ixjunix.
cxx
456 SOURCES
+= $(OPAL_SRCDIR
)/lids
/vpblid.
cxx
460 SOURCES
+= $(OPAL_SRCDIR
)/lids
/sangomalid.
cxx
467 SOURCES
+= $(OPAL_SRCDIR
)/codec
/g711codec.
cxx \
468 $(OPAL_SRCDIR
)/codec
/g711.c \
469 $(OPAL_SRCDIR
)/codec
/rfc2833.
cxx \
470 $(OPAL_SRCDIR
)/codec
/vidcodec.
cxx \
471 $(OPAL_SRCDIR
)/codec
/opalwavfile.
cxx \
472 $(OPAL_SRCDIR
)/codec
/silencedetect.
cxx \
473 $(OPAL_SRCDIR
)/codec
/echocancel.
cxx
480 SOURCES
+= $(OPAL_SRCDIR
)/codec
/g726codec.
cxx \
482 $(G726_DIR
)/g726_16.c \
483 $(G726_DIR
)/g726_24.c \
484 $(G726_DIR
)/g726_32.c \
485 $(G726_DIR
)/g726_40.c
490 GSM_DIR
= $(OPAL_SRCDIR
)/codec
/gsm
491 GSM_SRCDIR
= $(GSM_DIR
)/src
492 GSM_INCDIR
= $(GSM_DIR
)/inc
494 SOURCES
+= $(OPAL_SRCDIR
)/codec
/gsmcodec.
cxx \
495 $(GSM_SRCDIR
)/gsm_create.c \
496 $(GSM_SRCDIR
)/gsm_destroy.c \
497 $(GSM_SRCDIR
)/gsm_decode.c \
498 $(GSM_SRCDIR
)/gsm_encode.c \
499 $(GSM_SRCDIR
)/gsm_option.c \
500 $(GSM_SRCDIR
)/code.c \
501 $(GSM_SRCDIR
)/decode.c \
502 $(GSM_SRCDIR
)/add.c \
503 $(GSM_SRCDIR
)/gsm_lpc.c \
504 $(GSM_SRCDIR
)/rpe.c \
505 $(GSM_SRCDIR
)/preprocess.c \
506 $(GSM_SRCDIR
)/long_term.c \
507 $(GSM_SRCDIR
)/short_term.c \
508 $(GSM_SRCDIR
)/table.c
511 SOURCES
+= $(OPAL_SRCDIR
)/codec
/mscodecs.
cxx
516 LPC10_DIR
= $(OPAL_SRCDIR
)/codec
/lpc10
517 LPC10_INCDIR
= $(LPC10_DIR
)
518 LPC10_SRCDIR
= $(LPC10_DIR
)/src
520 SOURCES
+= $(OPAL_SRCDIR
)/codec
/lpc10codec.
cxx \
521 $(LPC10_SRCDIR
)/f2clib.c \
522 $(LPC10_SRCDIR
)/analys.c \
523 $(LPC10_SRCDIR
)/bsynz.c \
524 $(LPC10_SRCDIR
)/chanwr.c \
525 $(LPC10_SRCDIR
)/dcbias.c \
526 $(LPC10_SRCDIR
)/decode_.c \
527 $(LPC10_SRCDIR
)/deemp.c \
528 $(LPC10_SRCDIR
)/difmag.c \
529 $(LPC10_SRCDIR
)/dyptrk.c \
530 $(LPC10_SRCDIR
)/encode_.c \
531 $(LPC10_SRCDIR
)/energy.c \
532 $(LPC10_SRCDIR
)/ham84.c \
533 $(LPC10_SRCDIR
)/hp100.c \
534 $(LPC10_SRCDIR
)/invert.c \
535 $(LPC10_SRCDIR
)/irc2pc.c \
536 $(LPC10_SRCDIR
)/ivfilt.c \
537 $(LPC10_SRCDIR
)/lpcdec.c \
538 $(LPC10_SRCDIR
)/lpcenc.c \
539 $(LPC10_SRCDIR
)/lpcini.c \
540 $(LPC10_SRCDIR
)/lpfilt.c \
541 $(LPC10_SRCDIR
)/median.c \
542 $(LPC10_SRCDIR
)/mload.c \
543 $(LPC10_SRCDIR
)/onset.c \
544 $(LPC10_SRCDIR
)/pitsyn.c \
545 $(LPC10_SRCDIR
)/placea.c \
546 $(LPC10_SRCDIR
)/placev.c \
547 $(LPC10_SRCDIR
)/preemp.c \
548 $(LPC10_SRCDIR
)/prepro.c \
549 $(LPC10_SRCDIR
)/random.c \
550 $(LPC10_SRCDIR
)/rcchk.c \
551 $(LPC10_SRCDIR
)/synths.c \
552 $(LPC10_SRCDIR
)/tbdm.c \
553 $(LPC10_SRCDIR
)/voicin.c \
554 $(LPC10_SRCDIR
)/vparms.c \
558 SPEEX_DIR
= $(OPAL_SRCDIR
)/codec
/speex
560 HEADER_FILES
+= $(OPAL_INCDIR
)/speexcodec.h
562 SOURCES
+= $(OPAL_SRCDIR
)/codec
/speexcodec.
cxx
564 ifdef OPAL_SYSTEM_SPEEX
566 ENDLDLIBS
:= -lspeex
$(ENDLDLIBS
)
570 SPEEX_INCDIR
= $(SPEEX_DIR
)/libspeex
571 SPEEX_SRCDIR
= $(SPEEX_DIR
)/libspeex
573 VPATH_C
+= $(SPEEX_SRCDIR
)
574 VPATH_CXX
+= $(SPEEX_SRCDIR
)
576 HEADER_FILES
+= $(SPEEX_INCDIR
)/speex.h \
577 $(SPEEX_INCDIR
)/speex_bits.h \
578 $(SPEEX_INCDIR
)/speex_header.h \
579 $(SPEEX_INCDIR
)/speex_callbacks.h \
580 $(SPEEX_INCDIR
)/speex_config_types.h \
581 $(SPEEX_INCDIR
)/speex_preprocess.h \
582 $(SPEEX_INCDIR
)/speex_stereo.h \
583 $(SPEEX_INCDIR
)/speex_types.h \
584 $(SPEEX_INCDIR
)/speex_jitter.h \
585 $(SPEEX_INCDIR
)/speex_echo.h
587 SOURCES
+= $(SPEEX_SRCDIR
)/nb_celp.c \
588 $(SPEEX_SRCDIR
)/sb_celp.c \
589 $(SPEEX_SRCDIR
)/lpc.c \
590 $(SPEEX_SRCDIR
)/ltp.c \
591 $(SPEEX_SRCDIR
)/lsp.c \
592 $(SPEEX_SRCDIR
)/quant_lsp.c \
593 $(SPEEX_SRCDIR
)/lsp_tables_nb.c \
594 $(SPEEX_SRCDIR
)/gain_table.c \
595 $(SPEEX_SRCDIR
)/gain_table_lbr.c \
596 $(SPEEX_SRCDIR
)/cb_search.c \
597 $(SPEEX_SRCDIR
)/filters.c \
598 $(SPEEX_SRCDIR
)/bits.c \
599 $(SPEEX_SRCDIR
)/modes.c \
600 $(SPEEX_SRCDIR
)/vq.c \
601 $(SPEEX_SRCDIR
)/high_lsp_tables.c \
602 $(SPEEX_SRCDIR
)/vbr.c \
603 $(SPEEX_SRCDIR
)/hexc_table.c \
604 $(SPEEX_SRCDIR
)/exc_5_256_table.c \
605 $(SPEEX_SRCDIR
)/exc_5_64_table.c \
606 $(SPEEX_SRCDIR
)/exc_8_128_table.c \
607 $(SPEEX_SRCDIR
)/exc_10_32_table.c \
608 $(SPEEX_SRCDIR
)/exc_10_16_table.c \
609 $(SPEEX_SRCDIR
)/exc_20_32_table.c \
610 $(SPEEX_SRCDIR
)/math_approx.c \
611 $(SPEEX_SRCDIR
)/kiss_fft.c \
612 $(SPEEX_SRCDIR
)/kiss_fftr.c \
613 $(SPEEX_SRCDIR
)/fftwrap.c \
614 $(SPEEX_SRCDIR
)/hexc_10_32_table.c \
615 $(SPEEX_SRCDIR
)/mdf.c \
616 $(SPEEX_SRCDIR
)/misc.c \
617 $(SPEEX_SRCDIR
)/smallft.c \
618 $(SPEEX_SRCDIR
)/speex.c \
619 $(SPEEX_SRCDIR
)/speex_header.c \
620 $(SPEEX_SRCDIR
)/speex_callbacks.c \
621 $(SPEEX_SRCDIR
)/speex_preprocess.c
623 endif # OPAL_SYSTEM_SPEEX
629 ILBC_DIR
= $(OPAL_SRCDIR
)/codec
/iLBC
631 VPATH_C
+= $(ILBC_DIR
)
632 VPATH_CXX
+= $(ILBC_DIR
)
634 HEADER_FILES
+= $(OPAL_INCDIR
)/codec
/ilbccodec.h
635 SOURCES
+= $(OPAL_SRCDIR
)/codec
/ilbccodec.
cxx
637 HEADER_FILES
+= $(ILBC_DIR
)/iLBC_define.h
638 HEADER_FILES
+= $(ILBC_DIR
)/iLBC_decode.h
639 SOURCES
+= $(ILBC_DIR
)/iLBC_decode.c
640 HEADER_FILES
+= $(ILBC_DIR
)/iLBC_encode.h
641 SOURCES
+= $(ILBC_DIR
)/iLBC_encode.c
642 HEADER_FILES
+= $(ILBC_DIR
)/FrameClassify.h
643 SOURCES
+= $(ILBC_DIR
)/FrameClassify.c
644 HEADER_FILES
+= $(ILBC_DIR
)/LPCdecode.h
645 SOURCES
+= $(ILBC_DIR
)/LPCdecode.c
646 HEADER_FILES
+= $(ILBC_DIR
)/LPCencode.h
647 SOURCES
+= $(ILBC_DIR
)/LPCencode.c
648 HEADER_FILES
+= $(ILBC_DIR
)/StateConstructW.h
649 SOURCES
+= $(ILBC_DIR
)/StateConstructW.c
650 HEADER_FILES
+= $(ILBC_DIR
)/StateSearchW.h
651 SOURCES
+= $(ILBC_DIR
)/StateSearchW.c
652 HEADER_FILES
+= $(ILBC_DIR
)/anaFilter.h
653 SOURCES
+= $(ILBC_DIR
)/anaFilter.c
654 HEADER_FILES
+= $(ILBC_DIR
)/constants.h
655 SOURCES
+= $(ILBC_DIR
)/constants.c
656 HEADER_FILES
+= $(ILBC_DIR
)/createCB.h
657 SOURCES
+= $(ILBC_DIR
)/createCB.c
658 HEADER_FILES
+= $(ILBC_DIR
)/doCPLC.h
659 SOURCES
+= $(ILBC_DIR
)/doCPLC.c
660 HEADER_FILES
+= $(ILBC_DIR
)/enhancer.h
661 SOURCES
+= $(ILBC_DIR
)/enhancer.c
662 HEADER_FILES
+= $(ILBC_DIR
)/filter.h
663 SOURCES
+= $(ILBC_DIR
)/filter.c
664 HEADER_FILES
+= $(ILBC_DIR
)/gainquant.h
665 SOURCES
+= $(ILBC_DIR
)/gainquant.c
666 HEADER_FILES
+= $(ILBC_DIR
)/getCBvec.h
667 SOURCES
+= $(ILBC_DIR
)/getCBvec.c
668 HEADER_FILES
+= $(ILBC_DIR
)/helpfun.h
669 SOURCES
+= $(ILBC_DIR
)/helpfun.c
670 HEADER_FILES
+= $(ILBC_DIR
)/hpInput.h
671 SOURCES
+= $(ILBC_DIR
)/hpInput.c
672 HEADER_FILES
+= $(ILBC_DIR
)/hpOutput.h
673 SOURCES
+= $(ILBC_DIR
)/hpOutput.c
674 HEADER_FILES
+= $(ILBC_DIR
)/iCBConstruct.h
675 SOURCES
+= $(ILBC_DIR
)/iCBConstruct.c
676 HEADER_FILES
+= $(ILBC_DIR
)/iCBSearch.h
677 SOURCES
+= $(ILBC_DIR
)/iCBSearch.c
678 HEADER_FILES
+= $(ILBC_DIR
)/lsf.h
679 SOURCES
+= $(ILBC_DIR
)/lsf.c
680 HEADER_FILES
+= $(ILBC_DIR
)/packing.h
681 SOURCES
+= $(ILBC_DIR
)/packing.c
682 HEADER_FILES
+= $(ILBC_DIR
)/syntFilter.h
683 SOURCES
+= $(ILBC_DIR
)/syntFilter.c
688 VIC_DIR
= $(OPAL_SRCDIR
)/codec
/vic
690 SOURCES
+= $(OPAL_SRCDIR
)/codec
/h261codec.c \
693 $(VIC_DIR
)/huffcode.c \
695 $(VIC_DIR
)/encoder-h261.
cxx \
696 $(VIC_DIR
)/p64encoder.
cxx \
697 $(VIC_DIR
)/transmitter.
cxx \
698 $(VIC_DIR
)/vid_coder.
cxx \
699 $(OPAL_SRCDIR
)/codec
/h263codec.c
702 # Files to be cleaned during make clean
705 CLEAN_FILES
= $(OPAL_LIB
)
708 ####################################################
710 include @PWLIBDIR@
/make
/common.mak
712 ####################################################
715 ifneq ($(OSTYPE
),Darwin
)
716 LIBNAME_MAJ
= $(OPAL_FILE
).
$(MAJOR_VERSION
)
717 LIBNAME_MIN
= $(LIBNAME_MAJ
).
$(MINOR_VERSION
)
718 ifeq ($(BUILD_TYPE
),.
)
719 LIBNAME_PAT
= $(LIBNAME_MIN
).
$(BUILD_NUMBER
)
721 LIBNAME_PAT
= $(LIBNAME_MIN
)-$(BUILD_TYPE
)$(BUILD_NUMBER
)
724 LIBNAME_MAJ
= $(subst .
$(LIB_SUFFIX
),.
$(MAJOR_VERSION
).
$(LIB_SUFFIX
),$(OPAL_FILE
))
725 LIBNAME_MIN
= $(subst .
$(LIB_SUFFIX
),.
$(MAJOR_VERSION
).
$(MINOR_VERSION
).
$(LIB_SUFFIX
),$(OPAL_FILE
))
726 ifeq ($(BUILD_TYPE
),.
)
727 LIBNAME_PAT
= $(subst .
$(LIB_SUFFIX
),.
$(MAJOR_VERSION
).
$(MINOR_VERSION
).
$(BUILD_NUMBER
).
$(LIB_SUFFIX
),$(OPAL_FILE
))
729 LIBNAME_PAT
= $(subst .
$(LIB_SUFFIX
),.
$(MAJOR_VERSION
).
$(MINOR_VERSION
)-$(BUILD_TYPE
)$(BUILD_NUMBER
).
$(LIB_SUFFIX
),$(OPAL_FILE
))
733 LIB_SONAME
= $(LIBNAME_MIN
)
735 CLEAN_FILES
+= $(LIBDIR
)/$(LIBNAME_PAT
) $(LIBDIR
)/$(OPAL_FILE
) $(LIBDIR
)/$(LIBNAME_MAJ
) $(LIBDIR
)/$(LIBNAME_MIN
)
737 ifneq ($(P_SHAREDLIB
),1)
738 STATIC_LIB_FILE
= $(LIBDIR
)/$(OPAL_FILE
)
740 STATIC_LIB_FILE
= $(LIBDIR
)/$(subst .
$(LIB_SUFFIX
),_s.
$(STATICLIBEXT
),$(OPAL_FILE
))
743 $(LIBDIR
)/$(OPAL_FILE
) : $(TARGETLIB
)
745 ifeq ($(P_SHAREDLIB
),1)
747 SYSLIBS
+= -L
$(PW_LIBDIR
) -l
$(PTLIB_BASE
)$(LIB_TYPE
)
748 ifeq ($(OSTYPE
),beos
)
749 # BeOS requires different options when building shared libraries
750 LDSOOPTS
= -nostdlib
-nostart
751 EXTLIBS
= -lstdc
++.r4
753 ifeq ($(OSTYPE
),Darwin
)
754 LDSOOPTS
= -dynamiclib
760 ENDLDLIBS
:= $(SYSLIBS
) $(ENDLDLIBS
)
762 ifeq ($(OSTYPE
),rtems
)
766 ifneq ($(OSTYPE
), QNX
)
767 ifneq (,$(findstring $(OSTYPE
),FreeBSD OpenBSDs
))
778 # Solaris loader doesn't grok -soname (sees it as -s -oname)
779 # We could use -Wl,-h,$(LIB_BASENAME).1 but then we find that the arglist
780 # to gcc is 2900+ bytes long and it will barf. I fix this by invoking ld
781 # directly and passing it the equivalent arguments...jpd@louisiana.edu
782 ifeq ($(OSTYPE
),solaris
)
783 LDSOOPTS
= -Bdynamic
-G
-h
$(LIB_SONAME
)
786 ifeq ($(OSTYPE
),mingw
)
787 LDSOOPTS
+= -Wl
,--kill-at
789 ifneq ($(OSTYPE
),Darwin
)
790 LDSOOPTS
+= -Wl
,-soname
,$(LIB_SONAME
)
796 $(LIBDIR
)/$(OPAL_FILE
): $(LIBDIR
)/$(LIBNAME_PAT
)
797 cd
$(LIBDIR
) ; rm -f
$(OPAL_FILE
) ; ln
-sf
$(LIBNAME_PAT
) $(OPAL_FILE
)
798 cd
$(LIBDIR
) ; rm -f
$(LIBNAME_MAJ
) ; ln
-sf
$(LIBNAME_PAT
) $(LIBNAME_MAJ
)
799 cd
$(LIBDIR
) ; rm -f
$(LIBNAME_MIN
) ; ln
-sf
$(LIBNAME_PAT
) $(LIBNAME_MIN
)
801 $(LIBDIR
)/$(LIBNAME_PAT
): $(STATIC_LIB_FILE
)
802 @echo EXTLIBS
= $(EXTLIBS
)
803 @echo SYSLIBS
= $(SYSLIBS
)
804 @if
[ ! -d
$(LIBDIR
) ] ; then mkdir
$(LIBDIR
) ; fi
805 $(LD
) $(LDSOOPTS
) -o
$(LIBDIR
)/$(LIBNAME_PAT
) $(LDFLAGS
) $(EXTLIBS
) $(OBJS
) $(ENDLDLIBS
)
809 $(STATIC_LIB_FILE
): $(OBJS
)
810 @if
[ ! -d
$(LIBDIR
) ] ; then mkdir
$(LIBDIR
) ; fi
811 $(ARCHIVE
) $(STATIC_LIB_FILE
) $(OBJS
)
812 ifeq ($(P_USE_RANLIB
),1)
813 $(RANLIB
) $(STATIC_LIB_FILE
)
816 ####################################################
819 $(MAKE
) NOTRACE
=1 opt
821 # Build rules for VIC codecs
823 $(OPAL_OBJDIR
)/%.o
: $(VIC_DIR
)/%.
cxx
824 @if
[ ! -d
$(OPAL_OBJDIR
) ] ; then mkdir
-p
$(OPAL_OBJDIR
) ; fi
825 $(CPLUS
) -I
$(VIC_DIR
) $(STDCCFLAGS
) $(CFLAGS
) -c
$< -o
$@
827 $(OPAL_OBJDIR
)/%.o
: $(VIC_DIR
)/%.c
828 @if
[ ! -d
$(OPAL_OBJDIR
) ] ; then mkdir
-p
$(OPAL_OBJDIR
) ; fi
829 $(CC
) -I
$(VIC_DIR
) $(STDCCFLAGS
) $(CFLAGS
) -c
$< -o
$@
831 $(DEPDIR
)/%.dep
: $(VIC_DIR
)/%.c
832 @if
[ ! -d
$(DEPDIR
) ] ; then mkdir
-p
$(DEPDIR
) ; fi
833 @printf
%s
$(OPAL_OBJDIR
)/ > $@
834 $(CPLUS
) -I
$(VIC_DIR
) $(STDCCFLAGS
:-g
=) $(CFLAGS
) -M
$< >> $@
836 $(DEPDIR
)/%.dep
: $(VIC_DIR
)/%.
cxx
837 @if
[ ! -d
$(DEPDIR
) ] ; then mkdir
-p
$(DEPDIR
) ; fi
838 @printf
%s
$(OPAL_OBJDIR
)/ > $@
839 $(CPLUS
) -I
$(VIC_DIR
) $(STDCCFLAGS
:-g
=) $(CFLAGS
) -M
$< >> $@
842 # Build rules for the GSM codec
844 $(OPAL_OBJDIR
)/%.o
: $(GSM_SRCDIR
)/%.c
845 @if
[ ! -d
$(OPAL_OBJDIR
) ] ; then mkdir
-p
$(OPAL_OBJDIR
) ; fi
846 $(CC
) $(STDCCFLAGS
) $(ANSI_FLAG
) -I
$(GSM_INCDIR
) -DWAV49
-DNeedFunctionPrototypes
=1 $(OPTCCFLAGS
) $(CFLAGS
) -c
$< -o
$@
848 $(DEPDIR
)/%.dep
: $(GSM_SRCDIR
)/%.c
849 @if
[ ! -d
$(DEPDIR
) ] ; then mkdir
-p
$(DEPDIR
) ; fi
850 @printf
%s
$(OPAL_OBJDIR
)/ > $@
851 $(CC
) $(ANSI_FLAG
) -I
$(GSM_INCDIR
) -DWAV49
-DNeedFunctionPrototypes
=1 $(CFLAGS
) -M
$< >> $@
854 # Build rules for the G.726 codec
856 $(OPAL_OBJDIR
)/%.o
: $(G726_DIR
)/%.c
857 @if
[ ! -d
$(OPAL_OBJDIR
) ] ; then mkdir
-p
$(OPAL_OBJDIR
) ; fi
858 $(CC
) $(STDCCFLAGS
) $(CFLAGS
) -c
$< -o
$@
860 $(DEPDIR
)/%.dep
: $(G726_DIR
)/%.c
861 @if
[ ! -d
$(DEPDIR
) ] ; then mkdir
-p
$(DEPDIR
) ; fi
862 @printf
%s
$(OPAL_OBJDIR
)/ > $@
863 $(CC
) $(CFLAGS
) -M
$< >> $@
866 # Build rules for the LPC10 codec
868 $(OPAL_OBJDIR
)/%.o
: $(LPC10_SRCDIR
)/%.c
869 @if
[ ! -d
$(OPAL_OBJDIR
) ] ; then mkdir
-p
$(OPAL_OBJDIR
) ; fi
870 $(CC
) $(STDCCFLAGS
) -I
$(LPC10_INCDIR
) $(OPTCCFLAGS
) $(CFLAGS
) -c
$< -o
$@
872 $(DEPDIR
)/%.dep
: $(LPC10_SRCDIR
)/%.c
873 @if
[ ! -d
$(DEPDIR
) ] ; then mkdir
-p
$(DEPDIR
) ; fi
874 @printf
%s
$(OPAL_OBJDIR
)/ > $@
875 $(CC
) -I
$(LPC10_INCDIR
) $(CFLAGS
) -M
$< >> $@
878 # Build rules for the Speex codec
880 $(OPAL_OBJDIR
)/%.o
: $(SPEEX_SRCDIR
)/%.c
881 @if
[ ! -d
$(OPAL_OBJDIR
) ] ; then mkdir
-p
$(OPAL_OBJDIR
) ; fi
882 $(CC
) $(STDCCFLAGS
) -I
$(SPEEX_INCDIR
) $(OPTCCFLAGS
) $(CFLAGS
) -c
$< -o
$@
884 $(DEPDIR
)/%.dep
: $(SPEEX_SRCDIR
)/%.c
885 @if
[ ! -d
$(DEPDIR
) ] ; then mkdir
-p
$(DEPDIR
) ; fi
886 @printf
%s
$(OPAL_OBJDIR
)/ > $@
887 $(CC
) -I
$(SPEEX_INCDIR
) $(CFLAGS
) -M
$< >> $@
889 ###############################################################################
891 $(STANDARD_TARGETS
) ::
892 set
-e
; $(foreach dir,$(SUBDIRS
),$(MAKE
) -C
$(dir) $@
;)
896 @echo
$(ASN_CXX_FILES
)
900 mkdir
-p
$(DESTDIR
)@LIBDIR@
901 ( for
dir in
$(DESTDIR
)@LIBDIR@ \
902 $(DESTDIR
)$(PREFIX
)/include/opal
/asn \
903 $(DESTDIR
)$(PREFIX
)/include/opal
/codec \
904 $(DESTDIR
)$(PREFIX
)/include/opal
/h323 \
905 $(DESTDIR
)$(PREFIX
)/include/opal
/iax2 \
906 $(DESTDIR
)$(PREFIX
)/include/opal
/lids \
907 $(DESTDIR
)$(PREFIX
)/include/opal
/opal \
908 $(DESTDIR
)$(PREFIX
)/include/opal
/rtp \
909 $(DESTDIR
)$(PREFIX
)/include/opal
/sip \
910 $(DESTDIR
)$(PREFIX
)/include/opal
/t120 \
911 $(DESTDIR
)$(PREFIX
)/include/opal
/t38 \
912 $(DESTDIR
)$(PREFIX
)/share
/opal
;\
913 do mkdir
-p
$$dir ; chmod
755 $$dir ; \
915 $(INSTALL
) -m
755 lib
/$(LIBNAME_PAT
) $(DESTDIR
)@LIBDIR@
916 ln
-snf
$(LIBNAME_PAT
) \
917 $(DESTDIR
)@LIBDIR@
/$(OPAL_FILE
).
$(MAJOR_VERSION
).
$(MINOR_VERSION
)
918 ln
-snf
$(LIBNAME_PAT
) \
919 $(DESTDIR
)@LIBDIR@
/$(OPAL_FILE
).
$(MAJOR_VERSION
)
920 ln
-snf
$(LIBNAME_PAT
) \
921 $(DESTDIR
)@LIBDIR@
/$(OPAL_FILE
)
922 ln
-snf
$(LIBNAME_PAT
) \
923 $(DESTDIR
)@LIBDIR@
/libopal.so
924 ( for fn in
include/asn
/*.h
; do \
925 $(INSTALL
) -m
644 $$fn $(DESTDIR
)$(PREFIX
)/include/opal
/asn
; \
927 ( for fn in
include/codec
/*.h
; do \
928 $(INSTALL
) -m
644 $$fn $(DESTDIR
)$(PREFIX
)/include/opal
/codec
; \
930 ( for fn in
include/h323
/*.h
; do \
931 $(INSTALL
) -m
644 $$fn $(DESTDIR
)$(PREFIX
)/include/opal
/h323
; \
933 ( for fn in
include/iax2
/*.h
; do \
934 $(INSTALL
) -m
644 $$fn $(DESTDIR
)$(PREFIX
)/include/opal
/iax2
; \
936 ( for fn in
include/lids
/*.h
; do \
937 $(INSTALL
) -m
644 $$fn $(DESTDIR
)$(PREFIX
)/include/opal
/lids
; \
939 ( for fn in
include/opal
/*.h
; do \
940 $(INSTALL
) -m
644 $$fn $(DESTDIR
)$(PREFIX
)/include/opal
/opal
; \
942 ( for fn in
include/rtp
/*.h
; do \
943 $(INSTALL
) -m
644 $$fn $(DESTDIR
)$(PREFIX
)/include/opal
/rtp
; \
945 ( for fn in
include/sip
/*.h
; do \
946 $(INSTALL
) -m
644 $$fn $(DESTDIR
)$(PREFIX
)/include/opal
/sip
; \
948 ( for fn in
include/t120
/*.h
; do \
949 $(INSTALL
) -m
644 $$fn $(DESTDIR
)$(PREFIX
)/include/opal
/t120
; \
951 ( for fn in
include/t38
/*.h
; do \
952 $(INSTALL
) -m
644 $$fn $(DESTDIR
)$(PREFIX
)/include/opal
/t38
; \
954 $(INSTALL
) -m
644 opal_inc.mak
$(DESTDIR
)$(PREFIX
)/share
/opal
957 rm -rf
$(DESTDIR
)$(PREFIX
)/include/opal \
958 $(DESTDIR
)$(PREFIX
)/share
/opal
959 rm -f
$(DESTDIR
)@LIBDIR@
/$(OPAL_FILE
) \
960 $(DESTDIR
)@LIBDIR@
/libopal.so \
961 $(DESTDIR
)@LIBDIR@
/$(OPAL_FILE
).
$(MAJOR_VERSION
).
$(MINOR_VERSION
) \
962 $(DESTDIR
)@LIBDIR@
/$(OPAL_FILE
).
$(MAJOR_VERSION
) \
963 $(DESTDIR
)@LIBDIR@
/$(LIBNAME_PAT
)
971 # End of file #################################################################