Removed CanOpenSourceMediaStream/CanOpenSinkMediaStream functions and
[opal/cbnco.git] / Makefile.in
bloba2c70b2d782dcc2ccab4c609b1f85b8bfb6fc4f1
2 # Makefile
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
16 # under the License.
18 # The Original Code is Open Phone Abstraction Library.
20 # The Initial Developer of the Original Code is Equivalence Pty. Ltd.
22 # Contributor(s): ______________________________________.
24 # $Log$
25 # Revision 1.14 2005/09/13 20:48:22 dominance
26 # minor cleanups needed to support mingw compilation. Thanks goes to Julien Puydt.
28 # Revision 1.13 2005/08/10 11:07:14 csoutheren
29 # Fixed bug #1255554
30 # Fixed dynamic linking on MacOSX
31 # Thanks to Hannes Friederich
33 # Revision 1.12 2005/07/30 07:39:26 csoutheren
34 # Added support for compiling new IAX2 code
36 # Revision 1.11 2005/04/26 10:58:37 dsandras
37 # Committed workaround for "make install".
39 # Revision 1.10 2005/04/25 10:14:14 dsandras
40 # Move LIBDIR down due to conflicting names.
42 # Revision 1.9 2005/04/25 09:31:35 dsandras
43 # Fixed make.
45 # Revision 1.8 2005/04/25 09:07:58 dsandras
46 # Fixed install/uninstall.
48 # Revision 1.7 2005/04/21 01:05:55 csoutheren
49 # New fix from Peter Robinson
51 # Revision 1.6 2005/04/20 05:46:32 csoutheren
52 # Patch 1146010. Fix problem with install targets
53 # Thanks to Peter Robinson
55 # Revision 1.5 2005/04/11 10:41:05 dsandras
56 # Added patch from Georgi Georgiev to fix compilation issues on Athlon64.
58 # Revision 1.4 2005/02/27 22:03:39 dereksmithies
59 # Add target to generate docs with doxygen.
61 # Revision 1.3 2005/01/31 07:40:41 csoutheren
62 # Fix for MacOSX thanks to Hannes Friederich
64 # Revision 1.2 2004/12/05 18:14:20 dsandras
65 # Cleanups.
67 # Revision 1.1 2004/12/04 18:37:58 dsandras
68 # Ported the "make install" / "make uninstall" system from OpenH323 to OPAL.
70 # Revision 2.29 2004/06/04 05:29:28 csoutheren
71 # Updated for ASN file changes and added silencedetect.cxx
73 # Revision 2.28 2004/04/25 02:53:28 rjongbloed
74 # Fixed GNU 3.4 warnings
76 # Revision 2.27 2004/03/11 06:54:25 csoutheren
77 # Added ability to disable SIP or H.323 stacks
79 # Revision 2.26 2004/02/23 01:28:49 rjongbloed
80 # Fixed unix build for recent upgrade to OpenH323 latest code.
82 # Revision 2.25 2004/02/16 09:15:19 csoutheren
83 # Fixed problems with codecs on Unix systems
85 # Revision 2.24 2003/04/08 11:46:35 robertj
86 # Better portability for tr command when doing ASN parse.
88 # Revision 2.23 2003/04/08 06:09:19 robertj
89 # Fixed ASN compilation so do not need -I on compile line for asn includes.
91 # Revision 2.22 2003/04/02 06:52:04 robertj
92 # Added dependencies for H450 ASN files
94 # Revision 2.21 2003/03/26 02:49:00 robertj
95 # Added service/daemon sample application.
97 # Revision 2.20 2003/03/19 04:45:29 robertj
98 # Added opalvxml to build
100 # Revision 2.19 2003/03/18 23:09:37 robertj
101 # Fixed LD_LIBRARY_PATH issue with Solaris
103 # Revision 2.18 2003/03/17 23:08:41 robertj
104 # Added IVR endpoint
106 # Revision 2.17 2003/03/17 22:36:38 robertj
107 # Added video support.
109 # Revision 2.16 2003/01/15 00:08:18 robertj
110 # Updated to OpenH323 v1.10.3
112 # Revision 2.15 2002/11/12 12:06:34 robertj
113 # Fixed Solaris compatibility
115 # Revision 2.14 2002/11/11 07:43:32 robertj
116 # Added speex codec files
118 # Revision 2.13 2002/09/11 05:56:16 robertj
119 # Fixed double inclusion of common.mak
120 # Added opalwavfile.cxx module
122 # Revision 2.12 2002/03/15 10:51:53 robertj
123 # Fixed problem with recursive inclusion on make files.
125 # Revision 2.11 2002/03/05 06:27:34 robertj
126 # Added ASN parser build and version check code.
128 # Revision 2.10 2002/02/22 04:16:25 robertj
129 # Added G.726 codec and fixed the lpc10 and GSM codecs.
131 # Revision 2.9 2002/02/11 09:38:28 robertj
132 # Moved version to root directory
134 # Revision 2.8 2002/02/06 11:52:53 rogerh
135 # Move -I$(ASN_INCDIR) so Opal's ldap.h is found instead of the OS's ldap.h
137 # Revision 2.7 2002/02/01 10:29:35 rogerh
138 # Use the right version.h file. (the other one had comments which confused
139 # pwlib's lib.mak)
141 # Revision 2.6 2002/02/01 04:58:23 craigs
142 # Added sip directory to VPATH
144 # Revision 2.5 2002/02/01 04:53:01 robertj
145 # Added (very primitive!) SIP support.
147 # Revision 2.4 2002/02/01 00:19:20 robertj
148 # Updated to latest pwlilb.
149 # Added rfc2833 module
151 # Revision 2.3 2001/08/17 05:24:22 robertj
152 # Updates from OpenH323 v1.6.0 release.
154 # Revision 2.2 2001/08/01 06:22:55 robertj
155 # Major changes to H.323 capabilities, uses OpalMediaFormat for base name.
156 # Added G.711 transcoder.
158 # Revision 2.1 2001/07/30 03:41:20 robertj
159 # Added build of subdirectories for samples.
160 # Hid the asnparser.version file.
161 # Changed default OPALDIR variable to be current directory.
163 # Revision 2.0 2001/07/27 15:48:24 robertj
164 # Conversion of OpenH323 to Open Phone Abstraction Library (OPAL)
167 export OPALDIR=@OPALDIR@
169 INSTALL=@INSTALL@
171 default :: optshared
173 all :: bothdepend both
175 SUBDIRS :=
177 LIBRARY_MAKEFILE:=1
179 include $(OPALDIR)/opal_inc.mak
181 PREFIX=@INSTALLPREFIX@/
182 exec_prefix = ${PREFIX}
184 ifndef PREFIX
185 PREFIX=/usr/local
186 endif
188 OPAL_OBJDIR = $(OPAL_LIBDIR)/$(PT_OBJBASE)
189 ifdef NOTRACE
190 OPAL_OBJDIR += n
191 endif
193 OBJDIR = $(OPAL_OBJDIR)
194 LIBDIR = $(OPAL_LIBDIR)
195 TARGET = $(OPAL_LIBDIR)/$(OPAL_FILE)
197 ifdef NOTRACE
198 STDCCFLAGS += -DPASN_NOPRINTON
199 else
200 STDCCFLAGS += -DPTRACING
201 endif
203 VPATH_CXX := $(OPAL_SRCDIR)/opal \
204 $(OPAL_SRCDIR)/rtp \
205 $(OPAL_SRCDIR)/h323 \
206 $(OPAL_SRCDIR)/iax2 \
207 $(OPAL_SRCDIR)/lids \
208 $(OPAL_SRCDIR)/codec \
209 $(OPAL_SRCDIR)/t120 \
210 $(OPAL_SRCDIR)/t38 \
211 $(OPAL_SRCDIR)/sip \
212 $(OPAL_SRCDIR)/asn
216 VPATH_C := $(OPAL_SRCDIR)/codec
218 ########################################
219 # Source files for library
221 SOURCES := $(OPAL_SRCDIR)/opal/manager.cxx \
222 $(OPAL_SRCDIR)/opal/endpoint.cxx \
223 $(OPAL_SRCDIR)/opal/connection.cxx \
224 $(OPAL_SRCDIR)/opal/call.cxx \
225 $(OPAL_SRCDIR)/opal/mediafmt.cxx \
226 $(OPAL_SRCDIR)/opal/mediastrm.cxx \
227 $(OPAL_SRCDIR)/opal/patch.cxx \
228 $(OPAL_SRCDIR)/opal/transcoders.cxx \
229 $(OPAL_SRCDIR)/opal/transports.cxx \
230 $(OPAL_SRCDIR)/opal/guid.cxx \
231 $(OPAL_SRCDIR)/opal/pcss.cxx \
232 $(OPAL_SRCDIR)/opal/ivr.cxx \
233 $(OPAL_SRCDIR)/opal/opalvxml.cxx \
234 $(OPAL_SRCDIR)/rtp/rtp.cxx \
235 $(OPAL_SRCDIR)/rtp/jitter.cxx \
237 ########################################
239 # H.323 files
241 ifeq ($(OPAL_H323),1)
243 ASN_SRCDIR := $(OPAL_SRCDIR)/asn
244 ASN_INCDIR := $(OPAL_INCDIR)/asn
246 H450_ASN_FILES := h4501 h4502 h4503 h4504 h4505 h4506 h4507 h4508 h4509 h45010 h45011
247 SIMPLE_ASN_FILES := x880 $(H450_ASN_FILES) mcs gcc t38
249 ASN_H_FILES := $(addprefix $(ASN_INCDIR)/,$(addsuffix .h, $(SIMPLE_ASN_FILES)))
250 ASN_CXX_FILES := $(addprefix $(ASN_SRCDIR)/,$(addsuffix .cxx,$(SIMPLE_ASN_FILES)))
252 ASN_H_FILES += $(ASN_INCDIR)/h225.h
253 ASN_CXX_FILES += $(ASN_SRCDIR)/h225_1.cxx $(ASN_SRCDIR)/h225_2.cxx
255 ASN_H_FILES += $(ASN_INCDIR)/h235.h $(ASN_SRCDIR)/h235_t.cxx
256 ASN_CXX_FILES += $(ASN_SRCDIR)/h235.cxx
258 ASN_H_FILES += $(ASN_INCDIR)/h245.h
259 ASN_CXX_FILES += $(ASN_SRCDIR)/h245_1.cxx $(ASN_SRCDIR)/h245_2.cxx $(ASN_SRCDIR)/h245_3.cxx
261 ASN_H_FILES += $(ASN_INCDIR)/h248.h
262 ASN_CXX_FILES += $(ASN_SRCDIR)/h248.cxx
264 ASN_H_FILES += $(ASN_INCDIR)/h501.h
265 ASN_CXX_FILES += $(ASN_SRCDIR)/h501.cxx
267 .PRECIOUS: $(ASN_CXX_FILES) $(ASN_H_FILES)
270 SOURCES += $(ASN_CXX_FILES) \
271 $(OPAL_SRCDIR)/h323/h323ep.cxx \
272 $(OPAL_SRCDIR)/h323/h323.cxx \
273 $(OPAL_SRCDIR)/h323/h323caps.cxx \
274 $(OPAL_SRCDIR)/h323/h323neg.cxx \
275 $(OPAL_SRCDIR)/h323/h323pdu.cxx \
276 $(OPAL_SRCDIR)/h323/h323rtp.cxx \
277 $(OPAL_SRCDIR)/h323/channels.cxx \
278 $(OPAL_SRCDIR)/h323/svcctrl.cxx \
279 $(OPAL_SRCDIR)/h323/h450pdu.cxx \
280 $(OPAL_SRCDIR)/h323/q931.cxx \
281 $(OPAL_SRCDIR)/h323/transaddr.cxx \
282 $(OPAL_SRCDIR)/h323/gkclient.cxx \
283 $(OPAL_SRCDIR)/h323/gkserver.cxx \
284 $(OPAL_SRCDIR)/h323/h225ras.cxx \
285 $(OPAL_SRCDIR)/h323/h323trans.cxx \
286 $(OPAL_SRCDIR)/h323/h235auth.cxx \
287 $(OPAL_SRCDIR)/h323/h501pdu.cxx \
288 $(OPAL_SRCDIR)/h323/h323annexg.cxx \
289 $(OPAL_SRCDIR)/h323/peclient.cxx \
291 ifdef HAS_OPENSSL
292 SOURCES += $(OPAL_SRCDIR)/h235auth1.cxx
293 endif
295 SOURCES += $(OPAL_SRCDIR)/t120/t120proto.cxx \
296 $(OPAL_SRCDIR)/t120/h323t120.cxx \
297 $(OPAL_SRCDIR)/t120/x224.cxx \
298 $(OPAL_SRCDIR)/t38/t38proto.cxx \
299 $(OPAL_SRCDIR)/t38/h323t38.cxx \
302 endif
304 ##################
305 # IAX2 files
307 ifeq ($(OPAL_IAX2),1)
309 SOURCES += \
310 $(OPAL_SRCDIR)/iax2/frame.cxx \
311 $(OPAL_SRCDIR)/iax2/iax2con.cxx \
312 $(OPAL_SRCDIR)/iax2/iax2ep.cxx \
313 $(OPAL_SRCDIR)/iax2/iax2medstrm.cxx \
314 $(OPAL_SRCDIR)/iax2/iedata.cxx \
315 $(OPAL_SRCDIR)/iax2/ies.cxx \
316 $(OPAL_SRCDIR)/iax2/processor.cxx \
317 $(OPAL_SRCDIR)/iax2/receiver.cxx \
318 $(OPAL_SRCDIR)/iax2/remote.cxx \
319 $(OPAL_SRCDIR)/iax2/safestrings.cxx \
320 $(OPAL_SRCDIR)/iax2/sound.cxx \
321 $(OPAL_SRCDIR)/iax2/transmit.cxx
322 endif
324 ################################################################################
325 # SIP files
327 ifeq ($(OPAL_SIP),1)
329 SOURCES += $(OPAL_SRCDIR)/sip/sipep.cxx \
330 $(OPAL_SRCDIR)/sip/sipcon.cxx \
331 $(OPAL_SRCDIR)/sip/sippdu.cxx \
332 $(OPAL_SRCDIR)/sip/sdp.cxx \
334 endif
336 ##################
337 # LIDS
339 SOURCES += $(OPAL_SRCDIR)/lids/lid.cxx \
340 $(OPAL_SRCDIR)/lids/lidep.cxx \
342 ifdef HAS_IXJ
343 SOURCES += $(OPAL_SRCDIR)/lids/ixjunix.cxx
344 endif
346 ifdef HAS_VPB
347 SOURCES += $(OPAL_SRCDIR)/lids/vpblid.cxx
348 endif
351 ##################
352 # Software codecs
354 SOURCES += $(OPAL_SRCDIR)/codec/g711codec.cxx \
355 $(OPAL_SRCDIR)/codec/g711.c \
356 $(OPAL_SRCDIR)/codec/rfc2833.cxx \
357 $(OPAL_SRCDIR)/codec/vidcodec.cxx \
358 $(OPAL_SRCDIR)/codec/opalwavfile.cxx \
359 $(OPAL_SRCDIR)/codec/silencedetect.cxx
362 # G.726
364 G726_DIR = g726
366 SOURCES += $(OPAL_SRCDIR)/codec/g726codec.cxx \
367 $(G726_DIR)/g72x.c \
368 $(G726_DIR)/g726_16.c \
369 $(G726_DIR)/g726_24.c \
370 $(G726_DIR)/g726_32.c \
371 $(G726_DIR)/g726_40.c
374 # GSM06.10
376 GSM_DIR = $(OPAL_SRCDIR)/codec/gsm
377 GSM_SRCDIR = $(GSM_DIR)/src
378 GSM_INCDIR = $(GSM_DIR)/inc
380 SOURCES += $(OPAL_SRCDIR)/codec/gsmcodec.cxx \
381 $(GSM_SRCDIR)/gsm_create.c \
382 $(GSM_SRCDIR)/gsm_destroy.c \
383 $(GSM_SRCDIR)/gsm_decode.c \
384 $(GSM_SRCDIR)/gsm_encode.c \
385 $(GSM_SRCDIR)/gsm_option.c \
386 $(GSM_SRCDIR)/code.c \
387 $(GSM_SRCDIR)/decode.c \
388 $(GSM_SRCDIR)/add.c \
389 $(GSM_SRCDIR)/gsm_lpc.c \
390 $(GSM_SRCDIR)/rpe.c \
391 $(GSM_SRCDIR)/preprocess.c \
392 $(GSM_SRCDIR)/long_term.c \
393 $(GSM_SRCDIR)/short_term.c \
394 $(GSM_SRCDIR)/table.c
397 SOURCES += $(OPAL_SRCDIR)/codec/mscodecs.cxx
400 # LPC-10
402 LPC10_DIR = $(OPAL_SRCDIR)/codec/lpc10
403 LPC10_INCDIR = $(LPC10_DIR)
404 LPC10_SRCDIR = $(LPC10_DIR)/src
406 SOURCES += $(OPAL_SRCDIR)/codec/lpc10codec.cxx \
407 $(LPC10_SRCDIR)/f2clib.c \
408 $(LPC10_SRCDIR)/analys.c \
409 $(LPC10_SRCDIR)/bsynz.c \
410 $(LPC10_SRCDIR)/chanwr.c \
411 $(LPC10_SRCDIR)/dcbias.c \
412 $(LPC10_SRCDIR)/decode_.c \
413 $(LPC10_SRCDIR)/deemp.c \
414 $(LPC10_SRCDIR)/difmag.c \
415 $(LPC10_SRCDIR)/dyptrk.c \
416 $(LPC10_SRCDIR)/encode_.c \
417 $(LPC10_SRCDIR)/energy.c \
418 $(LPC10_SRCDIR)/ham84.c \
419 $(LPC10_SRCDIR)/hp100.c \
420 $(LPC10_SRCDIR)/invert.c \
421 $(LPC10_SRCDIR)/irc2pc.c \
422 $(LPC10_SRCDIR)/ivfilt.c \
423 $(LPC10_SRCDIR)/lpcdec.c \
424 $(LPC10_SRCDIR)/lpcenc.c \
425 $(LPC10_SRCDIR)/lpcini.c \
426 $(LPC10_SRCDIR)/lpfilt.c \
427 $(LPC10_SRCDIR)/median.c \
428 $(LPC10_SRCDIR)/mload.c \
429 $(LPC10_SRCDIR)/onset.c \
430 $(LPC10_SRCDIR)/pitsyn.c \
431 $(LPC10_SRCDIR)/placea.c \
432 $(LPC10_SRCDIR)/placev.c \
433 $(LPC10_SRCDIR)/preemp.c \
434 $(LPC10_SRCDIR)/prepro.c \
435 $(LPC10_SRCDIR)/random.c \
436 $(LPC10_SRCDIR)/rcchk.c \
437 $(LPC10_SRCDIR)/synths.c \
438 $(LPC10_SRCDIR)/tbdm.c \
439 $(LPC10_SRCDIR)/voicin.c \
440 $(LPC10_SRCDIR)/vparms.c \
443 # Speex
445 SPEEX_DIR = $(OPAL_SRCDIR)/codec/speex
446 SPEEX_INCDIR = $(SPEEX_DIR)/libspeex
447 SPEEX_SRCDIR = $(SPEEX_DIR)/libspeex
449 VPATH_C += $(SPEEX_SRCDIR)
450 VPATH_CXX += $(SPEEX_SRCDIR)
452 HEADER_FILES += $(OPAL_INCDIR)/speexcodec.h \
453 $(SPEEX_INCDIR)/speex.h \
454 $(SPEEX_INCDIR)/speex_bits.h \
455 $(SPEEX_INCDIR)/speex_header.h \
456 $(SPEEX_INCDIR)/speex_callbacks.h
458 SOURCES += $(OPAL_SRCDIR)/codec/speexcodec.cxx \
459 $(SPEEX_SRCDIR)/nb_celp.c \
460 $(SPEEX_SRCDIR)/sb_celp.c \
461 $(SPEEX_SRCDIR)/lpc.c \
462 $(SPEEX_SRCDIR)/ltp.c \
463 $(SPEEX_SRCDIR)/lsp.c \
464 $(SPEEX_SRCDIR)/quant_lsp.c \
465 $(SPEEX_SRCDIR)/lsp_tables_nb.c \
466 $(SPEEX_SRCDIR)/gain_table.c \
467 $(SPEEX_SRCDIR)/gain_table_lbr.c \
468 $(SPEEX_SRCDIR)/cb_search.c \
469 $(SPEEX_SRCDIR)/filters.c \
470 $(SPEEX_SRCDIR)/bits.c \
471 $(SPEEX_SRCDIR)/modes.c \
472 $(SPEEX_SRCDIR)/vq.c \
473 $(SPEEX_SRCDIR)/high_lsp_tables.c \
474 $(SPEEX_SRCDIR)/vbr.c \
475 $(SPEEX_SRCDIR)/hexc_table.c \
476 $(SPEEX_SRCDIR)/exc_5_256_table.c \
477 $(SPEEX_SRCDIR)/exc_5_64_table.c \
478 $(SPEEX_SRCDIR)/exc_8_128_table.c \
479 $(SPEEX_SRCDIR)/exc_10_32_table.c \
480 $(SPEEX_SRCDIR)/exc_10_16_table.c \
481 $(SPEEX_SRCDIR)/exc_20_32_table.c \
482 $(SPEEX_SRCDIR)/hexc_10_32_table.c \
483 $(SPEEX_SRCDIR)/misc.c \
484 $(SPEEX_SRCDIR)/speex_header.c \
485 $(SPEEX_SRCDIR)/speex_callbacks.c
488 # iLBC
490 ILBC_DIR = $(OPAL_SRCDIR)/codec/iLBC
492 VPATH_C += $(ILBC_DIR)
493 VPATH_CXX += $(ILBC_DIR)
495 HEADER_FILES += $(OPAL_INCDIR)/codec/ilbccodec.h
496 SOURCES += $(OPAL_SRCDIR)/codec/ilbccodec.cxx
498 HEADER_FILES += $(ILBC_DIR)/iLBC_define.h
499 HEADER_FILES += $(ILBC_DIR)/iLBC_decode.h
500 SOURCES += $(ILBC_DIR)/iLBC_decode.c
501 HEADER_FILES += $(ILBC_DIR)/iLBC_encode.h
502 SOURCES += $(ILBC_DIR)/iLBC_encode.c
503 HEADER_FILES += $(ILBC_DIR)/FrameClassify.h
504 SOURCES += $(ILBC_DIR)/FrameClassify.c
505 HEADER_FILES += $(ILBC_DIR)/LPCdecode.h
506 SOURCES += $(ILBC_DIR)/LPCdecode.c
507 HEADER_FILES += $(ILBC_DIR)/LPCencode.h
508 SOURCES += $(ILBC_DIR)/LPCencode.c
509 HEADER_FILES += $(ILBC_DIR)/StateConstructW.h
510 SOURCES += $(ILBC_DIR)/StateConstructW.c
511 HEADER_FILES += $(ILBC_DIR)/StateSearchW.h
512 SOURCES += $(ILBC_DIR)/StateSearchW.c
513 HEADER_FILES += $(ILBC_DIR)/anaFilter.h
514 SOURCES += $(ILBC_DIR)/anaFilter.c
515 HEADER_FILES += $(ILBC_DIR)/constants.h
516 SOURCES += $(ILBC_DIR)/constants.c
517 HEADER_FILES += $(ILBC_DIR)/createCB.h
518 SOURCES += $(ILBC_DIR)/createCB.c
519 HEADER_FILES += $(ILBC_DIR)/doCPLC.h
520 SOURCES += $(ILBC_DIR)/doCPLC.c
521 HEADER_FILES += $(ILBC_DIR)/enhancer.h
522 SOURCES += $(ILBC_DIR)/enhancer.c
523 HEADER_FILES += $(ILBC_DIR)/filter.h
524 SOURCES += $(ILBC_DIR)/filter.c
525 HEADER_FILES += $(ILBC_DIR)/gainquant.h
526 SOURCES += $(ILBC_DIR)/gainquant.c
527 HEADER_FILES += $(ILBC_DIR)/getCBvec.h
528 SOURCES += $(ILBC_DIR)/getCBvec.c
529 HEADER_FILES += $(ILBC_DIR)/helpfun.h
530 SOURCES += $(ILBC_DIR)/helpfun.c
531 HEADER_FILES += $(ILBC_DIR)/hpInput.h
532 SOURCES += $(ILBC_DIR)/hpInput.c
533 HEADER_FILES += $(ILBC_DIR)/hpOutput.h
534 SOURCES += $(ILBC_DIR)/hpOutput.c
535 HEADER_FILES += $(ILBC_DIR)/iCBConstruct.h
536 SOURCES += $(ILBC_DIR)/iCBConstruct.c
537 HEADER_FILES += $(ILBC_DIR)/iCBSearch.h
538 SOURCES += $(ILBC_DIR)/iCBSearch.c
539 HEADER_FILES += $(ILBC_DIR)/lsf.h
540 SOURCES += $(ILBC_DIR)/lsf.c
541 HEADER_FILES += $(ILBC_DIR)/packing.h
542 SOURCES += $(ILBC_DIR)/packing.c
543 HEADER_FILES += $(ILBC_DIR)/syntFilter.h
544 SOURCES += $(ILBC_DIR)/syntFilter.c
547 VIC_DIR = $(OPAL_SRCDIR)/codec/vic
549 SOURCES += $(OPAL_SRCDIR)/codec/h261codec.c \
550 $(VIC_DIR)/dct.cxx \
551 $(VIC_DIR)/p64.cxx \
552 $(VIC_DIR)/huffcode.c \
553 $(VIC_DIR)/bv.c \
554 $(VIC_DIR)/encoder-h261.cxx \
555 $(VIC_DIR)/p64encoder.cxx \
556 $(VIC_DIR)/transmitter.cxx \
557 $(VIC_DIR)/vid_coder.cxx
561 # Files to be cleaned during make clean
564 CLEAN_FILES = $(OPAL_LIB)
567 ####################################################
569 include @PWLIBDIR@/make/common.mak
571 ####################################################
572 # replace lib.mak
574 ifneq ($(OSTYPE),Darwin)
575 LIBNAME_MAJ = $(OPAL_FILE).$(MAJOR_VERSION)
576 LIBNAME_MIN = $(LIBNAME_MAJ).$(MINOR_VERSION)
577 ifeq ($(BUILD_TYPE),.)
578 LIBNAME_PAT = $(LIBNAME_MIN).$(BUILD_NUMBER)
579 else
580 LIBNAME_PAT = $(LIBNAME_MIN)-$(BUILD_TYPE)$(BUILD_NUMBER)
581 endif
582 else
583 LIBNAME_MAJ = $(subst .$(LIB_SUFFIX),.$(MAJOR_VERSION).$(LIB_SUFFIX),$(OPAL_FILE))
584 LIBNAME_MIN = $(subst .$(LIB_SUFFIX),.$(MAJOR_VERSION).$(MINOR_VERSION).$(LIB_SUFFIX),$(OPAL_FILE))
585 ifeq ($(BUILD_TYPE),.)
586 LIBNAME_PAT = $(subst .$(LIB_SUFFIX),.$(MAJOR_VERSION).$(MINOR_VERSION).$(BUILD_NUMBER).$(LIB_SUFFIX),$(OPAL_FILE))
587 else
588 LIBNAME_PAT = $(subst .$(LIB_SUFFIX),.$(MAJOR_VERSION).$(MINOR_VERSION)-$(BUILD_TYPE)$(BUILD_NUMBER).$(LIB_SUFFIX),$(OPAL_FILE))
589 endif
590 endif
592 LIB_SONAME = $(LIBNAME_MAJ)
594 CLEAN_FILES += $(LIBDIR)/$(LIBNAME_PAT) $(LIBDIR)/$(OPAL_FILE) $(LIBDIR)/$(LIBNAME_MAJ) $(LIBDIR)/$(LIBNAME_MIN)
596 ifneq ($(P_SHAREDLIB),1)
597 STATIC_LIB_FILE = $(LIBDIR)/$(OPAL_FILE)
598 else
599 STATIC_LIB_FILE = $(LIBDIR)/$(subst .$(LIB_SUFFIX),_s.$(STATICLIBEXT),$(OPAL_FILE))
600 endif
602 $(LIBDIR)/$(OPAL_FILE) : $(TARGETLIB)
604 ifeq ($(P_SHAREDLIB),1)
606 ifeq ($(OSTYPE),beos)
607 # BeOS requires different options when building shared libraries
608 # Also, when building a shared library x that references symbols in libraries y,
609 # the y libraries need to be added to the linker command
610 LDSOOPTS = -nostdlib -nostart
611 EXTLIBS = -lstdc++.r4
612 SYSLIBS += -L$(PW_LIBDIR) -l$(PTLIB_BASE)$(LIB_TYPE)
613 else
614 ifeq ($(OSTYPE),Darwin)
615 LDSOOPTS = -dynamiclib
616 SYSLIBS += -l$(PTLIB_BASE)$(LIB_TYPE)
617 else
618 LDSOOPTS = -shared
619 endif
620 endif
622 ENDLDLIBS := $(SYSLIBS) $(ENDLDLIBS)
624 ifeq ($(OSTYPE),rtems)
625 EXTLIBS = -lstdc++
626 endif
628 ifneq ($(OSTYPE), QNX)
629 ifneq (,$(findstring $(OSTYPE),FreeBSD OpenBSDs))
630 ifdef P_PTHREADS
631 EXTLIBS += -pthread
632 endif
633 else
634 ifdef P_PTHREADS
635 EXTLIBS += -lpthread
636 endif
637 endif
638 endif
640 # Solaris loader doesn't grok -soname (sees it as -s -oname)
641 # We could use -Wl,-h,$(LIB_BASENAME).1 but then we find that the arglist
642 # to gcc is 2900+ bytes long and it will barf. I fix this by invoking ld
643 # directly and passing it the equivalent arguments...jpd@louisiana.edu
644 ifeq ($(OSTYPE),solaris)
645 LDSOOPTS = -Bdynamic -G -h $(LIB_SONAME)
646 LD = $(CPLUS)
647 else
648 ifeq ($(OSTYPE),mingw)
649 LDSOOPTS += -Wl,--kill-at
650 else
651 ifneq ($(OSTYPE),Darwin)
652 LDSOOPTS += -Wl,-soname,$(LIB_SONAME)
653 endif
654 endif
655 LD = $(CPLUS)
656 endif
658 $(LIBDIR)/$(OPAL_FILE): $(LIBDIR)/$(LIBNAME_PAT)
659 cd $(LIBDIR) ; rm -f $(OPAL_FILE) ; ln -sf $(LIBNAME_PAT) $(OPAL_FILE)
660 cd $(LIBDIR) ; rm -f $(LIBNAME_MAJ) ; ln -sf $(LIBNAME_PAT) $(LIBNAME_MAJ)
661 cd $(LIBDIR) ; rm -f $(LIBNAME_MIN) ; ln -sf $(LIBNAME_PAT) $(LIBNAME_MIN)
663 $(LIBDIR)/$(LIBNAME_PAT): $(STATIC_LIB_FILE)
664 @echo EXTLIBS = $(EXTLIBS)
665 @echo SYSLIBS = $(SYSLIBS)
666 @if [ ! -d $(LIBDIR) ] ; then mkdir $(LIBDIR) ; fi
667 $(LD) $(LDSOOPTS) -o $(LIBDIR)/$(LIBNAME_PAT) $(LDFLAGS) $(EXTLIBS) $(OBJS) $(ENDLDLIBS)
669 endif # P_SHAREDLIB
671 $(STATIC_LIB_FILE): $(OBJS)
672 @if [ ! -d $(LIBDIR) ] ; then mkdir $(LIBDIR) ; fi
673 $(ARCHIVE) $(STATIC_LIB_FILE) $(OBJS)
674 ifeq ($(P_USE_RANLIB),1)
675 $(RANLIB) $(STATIC_LIB_FILE)
676 endif
678 ####################################################
680 notrace::
681 $(MAKE) NOTRACE=1 opt
683 # Build rules for VIC codecs
685 $(OPAL_OBJDIR)/%.o : $(VIC_DIR)/%.cxx
686 @if [ ! -d $(OPAL_OBJDIR) ] ; then mkdir -p $(OPAL_OBJDIR) ; fi
687 $(CPLUS) -I$(VIC_DIR) $(STDCCFLAGS) $(CFLAGS) -c $< -o $@
689 $(OPAL_OBJDIR)/%.o : $(VIC_DIR)/%.c
690 @if [ ! -d $(OPAL_OBJDIR) ] ; then mkdir -p $(OPAL_OBJDIR) ; fi
691 $(CC) -I$(VIC_DIR) $(STDCCFLAGS) $(CFLAGS) -c $< -o $@
693 $(DEPDIR)/%.dep : $(VIC_DIR)/%.c
694 @if [ ! -d $(DEPDIR) ] ; then mkdir -p $(DEPDIR) ; fi
695 @printf %s $(OPAL_OBJDIR)/ > $@
696 $(CPLUS) -I$(VIC_DIR) $(STDCCFLAGS:-g=) $(CFLAGS) -M $< >> $@
698 $(DEPDIR)/%.dep : $(VIC_DIR)/%.cxx
699 @if [ ! -d $(DEPDIR) ] ; then mkdir -p $(DEPDIR) ; fi
700 @printf %s $(OPAL_OBJDIR)/ > $@
701 $(CPLUS) -I$(VIC_DIR) $(STDCCFLAGS:-g=) $(CFLAGS) -M $< >> $@
704 # Build rules for the GSM codec
706 $(OPAL_OBJDIR)/%.o : $(GSM_SRCDIR)/%.c
707 @if [ ! -d $(OPAL_OBJDIR) ] ; then mkdir -p $(OPAL_OBJDIR) ; fi
708 $(CC) $(STDCCFLAGS) -ansi -I$(GSM_INCDIR) -DWAV49 -DNeedFunctionPrototypes=1 $(OPTCCFLAGS) $(CFLAGS) -c $< -o $@
710 $(DEPDIR)/%.dep : $(GSM_SRCDIR)/%.c
711 @if [ ! -d $(DEPDIR) ] ; then mkdir -p $(DEPDIR) ; fi
712 @printf %s $(OPAL_OBJDIR)/ > $@
713 $(CC) -ansi -I$(GSM_INCDIR) -DWAV49 -DNeedFunctionPrototypes=1 $(CFLAGS) -M $< >> $@
716 # Build rules for the G.726 codec
718 $(OPAL_OBJDIR)/%.o : $(G726_DIR)/%.c
719 @if [ ! -d $(OPAL_OBJDIR) ] ; then mkdir -p $(OPAL_OBJDIR) ; fi
720 $(CC) $(STDCCFLAGS) $(CFLAGS) -c $< -o $@
722 $(DEPDIR)/%.dep : $(G726_DIR)/%.c
723 @if [ ! -d $(DEPDIR) ] ; then mkdir -p $(DEPDIR) ; fi
724 @printf %s $(OPAL_OBJDIR)/ > $@
725 $(CC) $(CFLAGS) -M $< >> $@
728 # Build rules for the LPC10 codec
730 $(OPAL_OBJDIR)/%.o : $(LPC10_SRCDIR)/%.c
731 @if [ ! -d $(OPAL_OBJDIR) ] ; then mkdir -p $(OPAL_OBJDIR) ; fi
732 $(CC) $(STDCCFLAGS) -I$(LPC10_INCDIR) $(OPTCCFLAGS) $(CFLAGS) -c $< -o $@
734 $(DEPDIR)/%.dep : $(LPC10_SRCDIR)/%.c
735 @if [ ! -d $(DEPDIR) ] ; then mkdir -p $(DEPDIR) ; fi
736 @printf %s $(OPAL_OBJDIR)/ > $@
737 $(CC) -I$(LPC10_INCDIR) $(CFLAGS) -M $< >> $@
740 ###############################################################################
741 #### Subdirectories
742 $(STANDARD_TARGETS) ::
743 set -e; $(foreach dir,$(SUBDIRS),$(MAKE) -C $(dir) $@;)
746 test:
747 @echo $(ASN_CXX_FILES)
749 #### Install targets
750 install:
751 mkdir -p $(DESTDIR)@LIBDIR@
752 ( for dir in $(DESTDIR)@LIBDIR@ \
753 $(DESTDIR)$(PREFIX)/include/opal/asn \
754 $(DESTDIR)$(PREFIX)/include/opal/codec \
755 $(DESTDIR)$(PREFIX)/include/opal/h323 \
756 $(DESTDIR)$(PREFIX)/include/opal/lids \
757 $(DESTDIR)$(PREFIX)/include/opal/opal \
758 $(DESTDIR)$(PREFIX)/include/opal/rtp \
759 $(DESTDIR)$(PREFIX)/include/opal/sip \
760 $(DESTDIR)$(PREFIX)/include/opal/t120 \
761 $(DESTDIR)$(PREFIX)/include/opal/t38 \
762 $(DESTDIR)$(PREFIX)/share/opal ;\
763 do mkdir -p $$dir ; chmod 755 $$dir ; \
764 done)
765 $(INSTALL) -m 755 lib/$(LIBNAME_PAT) $(DESTDIR)@LIBDIR@
766 ln -snf $(LIBNAME_PAT) \
767 $(DESTDIR)@LIBDIR@/$(OPAL_FILE).$(MAJOR_VERSION).$(MINOR_VERSION)
768 ln -snf $(LIBNAME_PAT) \
769 $(DESTDIR)@LIBDIR@/$(OPAL_FILE).$(MAJOR_VERSION)
770 ln -snf $(LIBNAME_PAT) \
771 $(DESTDIR)@LIBDIR@/$(OPAL_FILE)
772 ln -snf $(LIBNAME_PAT) \
773 $(DESTDIR)@LIBDIR@/libopal.so
774 ( for fn in include/asn/*.h ; do \
775 $(INSTALL) -m 644 $$fn $(DESTDIR)$(PREFIX)/include/opal/asn ; \
776 done)
777 ( for fn in include/codec/*.h ; do \
778 $(INSTALL) -m 644 $$fn $(DESTDIR)$(PREFIX)/include/opal/codec ; \
779 done)
780 ( for fn in include/h323/*.h ; do \
781 $(INSTALL) -m 644 $$fn $(DESTDIR)$(PREFIX)/include/opal/h323 ; \
782 done)
783 ( for fn in include/lids/*.h ; do \
784 $(INSTALL) -m 644 $$fn $(DESTDIR)$(PREFIX)/include/opal/lids ; \
785 done)
786 ( for fn in include/opal/*.h ; do \
787 $(INSTALL) -m 644 $$fn $(DESTDIR)$(PREFIX)/include/opal/opal ; \
788 done)
789 ( for fn in include/rtp/*.h ; do \
790 $(INSTALL) -m 644 $$fn $(DESTDIR)$(PREFIX)/include/opal/rtp ; \
791 done)
792 ( for fn in include/sip/*.h ; do \
793 $(INSTALL) -m 644 $$fn $(DESTDIR)$(PREFIX)/include/opal/sip ; \
794 done)
795 ( for fn in include/t120/*.h ; do \
796 $(INSTALL) -m 644 $$fn $(DESTDIR)$(PREFIX)/include/opal/t120 ; \
797 done)
798 ( for fn in include/t38/*.h ; do \
799 $(INSTALL) -m 644 $$fn $(DESTDIR)$(PREFIX)/include/opal/t38 ; \
800 done)
801 $(INSTALL) -m 644 opal_inc.mak $(DESTDIR)$(PREFIX)/share/opal
803 uninstall:
804 rm -rf $(DESTDIR)$(PREFIX)/include/opal \
805 $(DESTDIR)$(PREFIX)/share/opal
806 rm -f $(DESTDIR)@LIBDIR@/$(OPAL_FILE) \
807 $(DESTDIR)@LIBDIR@/libopal.so \
808 $(DESTDIR)@LIBDIR@/$(OPAL_FILE).$(MAJOR_VERSION).$(MINOR_VERSION) \
809 $(DESTDIR)@LIBDIR@/$(OPAL_FILE).$(MAJOR_VERSION) \
810 $(DESTDIR)@LIBDIR@/$(LIBNAME_PAT)
812 docs:
813 doxygen opal_cfg.dxy
816 # End of file #################################################################