home *** CD-ROM | disk | FTP | other *** search
/ ftp.muug.mb.ca / 2014.06.ftp.muug.mb.ca.tar / ftp.muug.mb.ca / pub / openh323.tar.gz / openh323.tar / openh323 / src / Makefile < prev    next >
Makefile  |  2003-08-03  |  37KB  |  1,188 lines

  1. #
  2. # Makefile
  3. #
  4. # Make file for Open H323 library
  5. #
  6. # Copyright (c) 1998-2000 Equivalence Pty. Ltd.
  7. #
  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/
  12. #
  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.
  17. #
  18. # The Original Code is Open H323 Library.
  19. #
  20. # The Initial Developer of the Original Code is Equivalence Pty. Ltd.
  21. #
  22. # Contributor(s): ______________________________________.
  23. #
  24. # $Log: Makefile,v $
  25. # Revision 1.108  2003/08/04 00:03:29  dereksmithies
  26. # Reorganise tests for H263 codecs
  27. #
  28. # Revision 1.107  2003/07/29 12:34:18  csoutheren
  29. # Changed to ensure dynamic libraries dynamically link pwlib
  30. #
  31. # Revision 1.106  2003/07/26 03:54:30  dereksmithies
  32. # Fixes for New H263 support from ffmpeg and Vic H263
  33. #
  34. # Revision 1.105  2003/06/06 03:55:52  rjongbloed
  35. # Added missing iLBC file.
  36. #
  37. # Revision 1.104  2003/06/06 02:37:05  rjongbloed
  38. # Fixed iLBC build
  39. #
  40. # Revision 1.103  2003/06/06 02:19:04  rjongbloed
  41. # Added iLBC codec
  42. #
  43. # Revision 1.102  2003/05/14 20:37:29  csoutheren
  44. # Changed for new AVC
  45. #
  46. # Revision 1.101  2003/05/05 12:14:03  robertj
  47. # Removed internal ldap as now use OpenLDAP
  48. #
  49. # Revision 1.100  2003/04/23 00:14:31  craigs
  50. # More changes for MacOSX per Shawn Hsiao
  51. #
  52. # Revision 1.99  2003/04/16 04:26:57  dereks
  53. # Initial release of h263 codec, which utilises the ffmpeg library.
  54. # Thanks to Guilhem Tardy, and to AliceStreet.
  55. #
  56. # Revision 1.98  2003/04/01 01:07:58  robertj
  57. # Split service control handlers from H.225 RAS header.
  58. #
  59. # Revision 1.97  2003/03/24 23:14:14  robertj
  60. # Speex update
  61. #
  62. # Revision 1.96  2003/03/18 07:34:03  robertj
  63. # Fixed problem with constructing LD_LIBRARY_PATH on Solaris
  64. #
  65. # Revision 1.95  2003/03/18 04:25:04  robertj
  66. # Added Peer Element client for H.323 Annex G
  67. #
  68. # Revision 1.94  2003/03/17 22:22:27  robertj
  69. # Removed videoio module, now in pwlib.
  70. #
  71. # Revision 1.93  2003/03/04 01:57:12  robertj
  72. # Re-added h501pdu module
  73. #
  74. # Revision 1.92  2003/02/25 07:09:05  robertj
  75. # More work on PDU transaction abstraction.
  76. #
  77. # Revision 1.91  2003/02/25 04:20:45  robertj
  78. # Added H.323 Annex G support (incomplete)
  79. #
  80. # Revision 1.90  2002/11/27 11:52:37  robertj
  81. # Fixed ASN file dependencies to .dep files.
  82. # Fixed number of backslashes, goes with new classheader command in asnparser.
  83. #
  84. # Revision 1.89  2002/11/27 06:54:52  robertj
  85. # Added Service Control Session management as per Annex K/H.323 via RAS
  86. #   only at this stage.
  87. # Added H.248 ASN and very primitive infrastructure for linking into the
  88. #   Service Control Session management system.
  89. # Added basic infrastructure for Annex K/H.323 HTTP transport system.
  90. # Added Call Credit Service Control to display account balances.
  91. #
  92. # Revision 1.88  2002/11/26 14:14:48  craigs
  93. # Added H245_AudioCapability::PrintOn
  94. #
  95. # Revision 1.87  2002/11/26 10:24:06  rogerh
  96. # Move CU30 check up one level to openh323u.mak
  97. #
  98. # Revision 1.86  2002/11/22 10:22:03  robertj
  99. # Adde missing optimiser flags to build rule, thanks Xiaodan Tang
  100. #
  101. # Revision 1.85  2002/11/15 06:10:25  robertj
  102. # Added remaining H.450 ASN files and fixed all their dependencies.
  103. #
  104. # Revision 1.84  2002/11/06 22:58:29  robertj
  105. # Renamed gsm and speex lpc.c
  106. #
  107. # Revision 1.83  2002/11/01 04:13:30  robertj
  108. # Changed HAS_SPEEX to be NO_SPEEX so is included by default.
  109. #
  110. # Revision 1.82  2002/10/31 21:36:00  dereks
  111. # Speex code is included, only if the HAS_SPEEX define is on.
  112. #
  113. # Revision 1.81  2002/10/22 11:57:09  rogerh
  114. # Fix big-endian selection
  115. #
  116. # Revision 1.80  2002/10/22 11:15:46  rogerh
  117. # Support speex on big endian machines
  118. #
  119. # Revision 1.79  2002/10/22 10:48:28  rogerh
  120. # Compile the imported Speex codec library
  121. #
  122. # Revision 1.78  2002/09/23 07:28:52  robertj
  123. # Added LDAP support, thanks Martin Froehlich and mediaWays!
  124. #
  125. # Revision 1.77  2002/08/15 08:15:22  robertj
  126. # Removed EXPAT check for opalvxml file as has non expat stuff in it.
  127. #
  128. # Revision 1.76  2002/08/13 14:25:43  craigs
  129. # Added Speex codec
  130. #
  131. # Revision 1.75  2002/08/05 12:00:18  robertj
  132. # Changed symbol for building library dependent on OpenH323 to be a more
  133. #   a general name.
  134. #
  135. # Revision 1.74  2002/07/19 01:51:41  robertj
  136. # Fixed up directory defaults for openh323 directory.
  137. #
  138. # Revision 1.73  2002/07/03 01:53:13  craigs
  139. # Added opalvxml.cxx
  140. #
  141. # Revision 1.72  2002/06/27 04:15:18  robertj
  142. # Added empty (non operational) G.729 codec to build.
  143. #
  144. # Revision 1.71  2002/06/26 02:53:28  robertj
  145. # Fix to automatic inclusion of pwlib directory in LD_LIBRARY_PATH
  146. #
  147. # Revision 1.70  2002/06/25 00:06:59  robertj
  148. # Added H.450.10 and H.450.11 ASN files to makefile
  149. #
  150. # Revision 1.69  2002/06/20 03:13:07  robertj
  151. # Added opalwavfile
  152. #
  153. # Revision 1.68  2002/05/21 04:24:34  robertj
  154. # Added RTP to WAV file filter class.
  155. #
  156. # Revision 1.67  2002/04/02 22:27:16  rogerh
  157. # Make ldap.asn generate ldap_asn.h and ldap_asn.cxx.
  158. # This makes compilation easier on systems which have ldap.h installed
  159. # from the Unix OpenLDAP library and means we do not have to be as strict
  160. # with the ordering of the include file paths to the compiler.
  161. #
  162. # Revision 1.66  2002/03/10 15:53:45  robertj
  163. # Fixed version number of shared library, tnanks lurch@gmx.li
  164. #
  165. # Revision 1.65  2002/02/11 06:20:07  robertj
  166. # Moved version.h to root directory so have one for the library and not just
  167. #   the sample application. SimpH323 uses the library version so they remain
  168. #   in sync.
  169. #
  170. # Revision 1.64  2002/02/08 12:15:53  robertj
  171. # Fixed error introduced in previous change, lost lpc10!
  172. #
  173. # Revision 1.63  2002/02/08 11:29:22  robertj
  174. # Added G.726 codec, thanks Tiziano Morganti
  175. #
  176. # Revision 1.62  2002/01/23 09:15:50  rogerh
  177. # Add export to setting of LD_LIBRARY_PATH so it works on FreeBSD and Solaris
  178. #
  179. # Revision 1.61  2002/01/23 05:19:44  craigs
  180. # Added RFC2833 to makefile
  181. #
  182. # Revision 1.60  2002/01/14 00:09:31  robertj
  183. # Added H.450.6, thanks Ben Madsen of Noorwood Systems.
  184. #
  185. # Revision 1.59  2001/12/17 23:35:22  robertj
  186. # Compatibility with non GNU diff, eg Solaris, thanks James Dugal
  187. #
  188. # Revision 1.58  2001/11/27 22:48:40  robertj
  189. # Changed to make system to better support non-shared library building.
  190. #
  191. # Revision 1.57  2001/10/23 02:17:16  dereks
  192. # Initial release of cu30 video codec.
  193. #
  194. # Revision 1.56  2001/09/11 08:25:51  robertj
  195. # Added support for cross compiling by defining HOST_PLATFORM_TYPE variable
  196. #   so correct asnparser is executed.
  197. # Added automatic setting of LD_LIBARY_PATH variable for asnparser.
  198. #
  199. # Revision 1.55  2001/09/11 01:24:36  robertj
  200. # Added conditional compilation to remove video and/or audio codecs.
  201. #
  202. # Revision 1.54  2001/09/04 01:50:37  robertj
  203. # Split h225.cxx into two files to reduce compiler memory requirement.
  204. #
  205. # Revision 1.53  2001/08/13 11:11:15  robertj
  206. # Changed test to -f as Solaris does not understand -e
  207. #
  208. # Revision 1.52  2001/08/10 11:18:15  robertj
  209. # Major changes to H.235 support in RAS to support server.
  210. #
  211. # Revision 1.51  2001/08/06 05:35:24  robertj
  212. # Removed h323securoty files.
  213. #
  214. # Revision 1.50  2001/07/24 08:35:23  craigs
  215. # Added gkserver
  216. #
  217. # Revision 1.49  2001/07/17 07:58:27  robertj
  218. # Fixed missing products of T.38 ASN compile
  219. #
  220. # Revision 1.48  2001/07/17 04:44:29  robertj
  221. # Partial implementation of T.120 and T.38 logical channels.
  222. #
  223. # Revision 1.47  2001/06/30 06:50:22  yurik
  224. # Jac Goudsmit from Be submit these changes 6/28
  225. #
  226. # Revision 1.46  2001/06/18 07:44:21  craigs
  227. # Made to compile with h225ras.cxx under Linux
  228. #
  229. # Revision 1.45  2001/06/05 04:38:47  robertj
  230. # Added dependency of h225 on h245
  231. #
  232. # Revision 1.44  2001/06/05 04:08:48  robertj
  233. # Updated H.225 ASN file to v4
  234. #
  235. # Revision 1.43  2001/05/31 07:16:27  craigs
  236. # Added use of new PWlib OpenSSL detection
  237. #
  238. # Revision 1.42  2001/05/01 13:59:04  rogerh
  239. # back out last change
  240. #
  241. # Revision 1.41  2001/05/01 11:03:35  rogerh
  242. # Only build h235security on systems with OpenSSL defined
  243. # (fixes BSD gmake optdepend problems)
  244. #
  245. # Revision 1.40  2001/05/01 06:06:32  robertj
  246. # Added H.450.4 call hold (Near End only), thanks David M. Cassel.
  247. #
  248. # Revision 1.39  2001/05/01 04:28:54  robertj
  249. # Fixed accidental removal of h235security.cxx when doing make clean, thanks Chih-Wei Huang
  250. #
  251. # Revision 1.38  2001/04/11 22:10:47  robertj
  252. # Added H.450.2 (call transfer), thanks a LOT to Graeme Reid & Norwood Systems
  253. #
  254. # Revision 1.37  2001/03/21 04:52:40  robertj
  255. # Added H.235 security to gatekeepers, thanks Fⁿrbass Franz!
  256. #
  257. # Revision 1.36  2001/03/20 03:42:55  robertj
  258. # Removed commented out and no longer used grabber files
  259. #
  260. # Revision 1.35  2001/03/02 06:59:57  robertj
  261. # Enhanced the globally unique identifier class.
  262. #
  263. # Revision 1.34  2001/03/01 11:12:15  craigs
  264. # Fixed problem with making from clean checkout
  265. #
  266. # Revision 1.33  2001/02/25 11:29:27  rogerh
  267. # The -c flag to head is not found on all unix platforms.
  268. # So use awk to get the first 3 columns of the asnparser version string
  269. #
  270. # Revision 1.32  2001/02/22 23:40:26  robertj
  271. # Fixed problem with wanting to recompile ASN every time somthing is updated
  272. #   in PWLib. Now only does so if the asnparser version number changes.
  273. #
  274. # Revision 1.31  2001/02/10 04:01:50  robertj
  275. # Fixed build system so application can be built NOTRACE to separate directory.
  276. #
  277. # Revision 1.30  2001/02/09 04:44:37  craigs
  278. # Added ability create a NOTRACE version of an exectuable with seperate
  279. # libraries
  280. #
  281. # Revision 1.29  2001/01/26 08:34:18  rogerh
  282. # Add mediafmt
  283. #
  284. # Revision 1.28  2000/12/19 22:33:44  dereks
  285. # Adjust so that the video channel is used for reading/writing raw video
  286. # data, which better modularizes the video codec.
  287. #
  288. # Revision 1.27  2000/10/30 00:24:28  robertj
  289. # Removed redundant make rules (pieces of ancient history)
  290. #
  291. # Revision 1.26  2000/08/25 03:18:40  craigs
  292. # More work on support for MS-GSM format
  293. #
  294. # Revision 1.25  2000/08/23 14:27:04  craigs
  295. # Added prototype support for Microsoft GSM codec
  296. #
  297. # Revision 1.24  2000/08/14 17:11:08  rogerh
  298. # Remove ixjdummy.cxx. It no longer builds on FreeBSD as it requires linux
  299. # specific typedefs. All Openh323 code using ixj is protected by HAS_IXJ anyway.
  300. #
  301. # Revision 1.23  2000/07/14 12:38:56  craigs
  302. # Prototype code to remove H.235
  303. #
  304. # Revision 1.22  2000/06/06 06:01:48  craigs
  305. # Added Linux version of VPB API
  306. #
  307. # Revision 1.21  2000/06/05 09:31:16  robertj
  308. # Removed copy and paste error adding gsm_decode.c twice.
  309. #
  310. # Revision 1.20  2000/06/05 07:06:42  robertj
  311. # Added LPC-10 codec.
  312. #
  313. # Revision 1.19  2000/05/15 13:50:09  robertj
  314. # Added dummy code for Quicknet xJack interface on platforms that do not yet have drivers.
  315. #
  316. # Revision 1.18  2000/05/11 02:27:18  robertj
  317. # Removed "sample" directory and added "samples/simple" for demo app.
  318. #
  319. # Revision 1.17  2000/05/02 04:32:25  robertj
  320. # Fixed copyright notice comment.
  321. #
  322. # Revision 1.16  2000/04/26 03:01:59  robertj
  323. # Changed lib filename generation to use the version file for sample app.
  324. #
  325. # Revision 1.15  2000/04/26 01:07:23  robertj
  326. # Removed tarfile creation target, this is done differently now.
  327. #
  328. # Revision 1.14  2000/04/18 01:07:04  craigs
  329. # Fixed problem with compiling on machines without telephony files
  330. #
  331. # Revision 1.13  2000/04/06 17:50:28  craigs
  332. # Removed ixjuser.h
  333. #
  334. # Revision 1.12  2000/04/05 16:27:38  craigs
  335. # Fixed problem with Linux makefile
  336. #
  337. # Revision 1.11  2000/04/03 23:54:56  robertj
  338. # Added missing H.235 dependency.
  339. #
  340. # Revision 1.10  2000/03/24 03:17:45  robertj
  341. # Directory restructuring.
  342. #
  343. # Revision 1.9  2000/03/14 11:20:49  rogerh
  344. # Compile the ixj code on FreeBSD. This is needed for openphone support.
  345. #
  346. # Revision 1.8  2000/03/03 12:20:40  robertj
  347. # Fixed non fatal error in make rules and allowed for missing sample apps.
  348. #
  349. # Revision 1.7  2000/02/29 19:55:57  craigs
  350. # Fixed problem with make include files in wrong order
  351. #
  352. # Revision 1.6  2000/02/24 11:53:31  craigs
  353. # Fixed problem with .o files not going into correct directory
  354. #
  355. # Revision 1.5  2000/02/17 07:02:43  craigs
  356. # Moved declaration of HAS_IXJ, HAS_VPB and LINUX_TELEPHONY into common Makefile
  357. #
  358. # Revision 1.4  2000/02/04 09:36:58  craigs
  359. # Removed platform dependent grabber stuff
  360. #
  361. # Revision 1.3  2000/02/04 05:11:19  craigs
  362. # Updated for new Makefiles and for new video transmission code
  363. #
  364. # Revision 1.2  2000/02/03 23:33:52  robertj
  365. # Added missing "opt" in ASN parser compile line, thanks Brad Midgley
  366. #
  367. # Revision 1.1  2000/02/02 04:02:06  craigs
  368. # Local makefile for library
  369. #
  370. #
  371.  
  372. ifndef OPENH323DIR
  373. OPENH323DIR=$(CURDIR)/..
  374. endif
  375.  
  376. LIBRARY_MAKEFILE:=1
  377.  
  378. include $(OPENH323DIR)/openh323u.mak
  379.  
  380.  
  381. OH323_OBJDIR = $(OH323_LIBDIR)/$(PT_OBJBASE)
  382. ifdef NOTRACE
  383. OH323_OBJDIR := $(OH323_OBJDIR)n
  384. endif
  385.  
  386.  
  387. OBJDIR    =    $(OH323_OBJDIR)
  388. LIBDIR    =    $(OH323_LIBDIR)
  389. TARGET    =    $(LIBDIR)/$(OH323_FILE)
  390. VERSION_FILE =    $(OPENH323DIR)/version.h
  391.  
  392. ########################################
  393.  
  394. ifdef OH323_SUPPRESS_H235
  395. ASN_EXCLUDE    += h235_exclude.txt
  396. endif
  397.  
  398. ASN_FILES := $(OH323_SRCDIR)/h225.asn \
  399.              $(OH323_SRCDIR)/h245.asn \
  400.              $(OH323_SRCDIR)/h248.asn \
  401.              $(OH323_SRCDIR)/x880.asn \
  402.              $(OH323_SRCDIR)/h4501.asn \
  403.              $(OH323_SRCDIR)/h4502.asn \
  404.              $(OH323_SRCDIR)/h4504.asn \
  405.              $(OH323_SRCDIR)/h4505.asn \
  406.              $(OH323_SRCDIR)/h4506.asn \
  407.              $(OH323_SRCDIR)/h4507.asn \
  408.              $(OH323_SRCDIR)/h4508.asn \
  409.              $(OH323_SRCDIR)/h4509.asn \
  410.              $(OH323_SRCDIR)/h45010.asn \
  411.              $(OH323_SRCDIR)/h45011.asn \
  412.              $(OH323_SRCDIR)/h501.asn \
  413.              $(OH323_SRCDIR)/t38.asn \
  414.              $(OH323_SRCDIR)/mcspdu.asn \
  415.              $(OH323_SRCDIR)/gccpdu.asn
  416.  
  417. ifndef OH323_SUPPRESS_H235
  418. ASN_FILES    += $(OH323_SRCDIR)/h235.asn
  419. endif
  420.  
  421. HEADER_FILES    := $(OH323_INCDIR)/h323.h
  422. COMMON_SOURCES    := $(OH323_SRCDIR)/h323.cxx $(OH323_SRCDIR)/h323ep.cxx
  423. HEADER_FILES    += $(OH323_INCDIR)/h323neg.h
  424. COMMON_SOURCES    += $(OH323_SRCDIR)/h323neg.cxx
  425. HEADER_FILES    += $(OH323_INCDIR)/h323pdu.h
  426. COMMON_SOURCES    += $(OH323_SRCDIR)/h323pdu.cxx
  427. HEADER_FILES    += $(OH323_INCDIR)/h323rtp.h
  428. COMMON_SOURCES    += $(OH323_SRCDIR)/h323rtp.cxx
  429. HEADER_FILES    += $(OH323_INCDIR)/h323caps.h
  430. COMMON_SOURCES    += $(OH323_SRCDIR)/h323caps.cxx
  431. HEADER_FILES    += $(OH323_INCDIR)/h323t120.h
  432. COMMON_SOURCES    += $(OH323_SRCDIR)/h323t120.cxx
  433. HEADER_FILES    += $(OH323_INCDIR)/t120proto.h
  434. COMMON_SOURCES    += $(OH323_SRCDIR)/t120proto.cxx
  435. HEADER_FILES    += $(OH323_INCDIR)/h323t38.h
  436. COMMON_SOURCES    += $(OH323_SRCDIR)/h323t38.cxx
  437. HEADER_FILES    += $(OH323_INCDIR)/t38proto.h
  438. COMMON_SOURCES    += $(OH323_SRCDIR)/t38proto.cxx
  439. HEADER_FILES    += $(OH323_INCDIR)/q931.h
  440. COMMON_SOURCES    += $(OH323_SRCDIR)/q931.cxx
  441. HEADER_FILES    += $(OH323_INCDIR)/x224.h
  442. COMMON_SOURCES    += $(OH323_SRCDIR)/x224.cxx
  443. HEADER_FILES    += $(OH323_INCDIR)/codecs.h
  444. COMMON_SOURCES    += $(OH323_SRCDIR)/codecs.cxx
  445. HEADER_FILES    += $(OH323_INCDIR)/channels.h
  446. COMMON_SOURCES    += $(OH323_SRCDIR)/channels.cxx
  447. HEADER_FILES    += $(OH323_INCDIR)/transports.h
  448. COMMON_SOURCES    += $(OH323_SRCDIR)/transports.cxx
  449. HEADER_FILES    += $(OH323_INCDIR)/jitter.h
  450. COMMON_SOURCES    += $(OH323_SRCDIR)/jitter.cxx
  451. HEADER_FILES    += $(OH323_INCDIR)/rtp.h
  452. COMMON_SOURCES    += $(OH323_SRCDIR)/rtp.cxx
  453. HEADER_FILES    += $(OH323_INCDIR)/rtp2wav.h
  454. COMMON_SOURCES    += $(OH323_SRCDIR)/rtp2wav.cxx
  455. HEADER_FILES    += $(OH323_INCDIR)/gkclient.h
  456. COMMON_SOURCES    += $(OH323_SRCDIR)/gkclient.cxx
  457. HEADER_FILES    += $(OH323_INCDIR)/gkserver.h
  458. COMMON_SOURCES    += $(OH323_SRCDIR)/gkserver.cxx
  459. HEADER_FILES    += $(OH323_INCDIR)/lid.h
  460. COMMON_SOURCES    += $(OH323_SRCDIR)/lid.cxx
  461. HEADER_FILES    += $(OH323_INCDIR)/mediafmt.h
  462. COMMON_SOURCES    += $(OH323_SRCDIR)/mediafmt.cxx
  463. HEADER_FILES    += $(OH323_INCDIR)/guid.h
  464. COMMON_SOURCES    += $(OH323_SRCDIR)/guid.cxx
  465. HEADER_FILES    += $(OH323_INCDIR)/h450pdu.h
  466. COMMON_SOURCES    += $(OH323_SRCDIR)/h450pdu.cxx
  467. HEADER_FILES    += $(OH323_INCDIR)/h225ras.h
  468. COMMON_SOURCES    += $(OH323_SRCDIR)/h225ras.cxx
  469. HEADER_FILES    += $(OH323_INCDIR)/svcctrl.h
  470. COMMON_SOURCES    += $(OH323_SRCDIR)/svcctrl.cxx
  471. HEADER_FILES    += $(OH323_INCDIR)/h323trans.h
  472. COMMON_SOURCES    += $(OH323_SRCDIR)/h323trans.cxx
  473. HEADER_FILES    += $(OH323_INCDIR)/peclient.h
  474. COMMON_SOURCES    += $(OH323_SRCDIR)/peclient.cxx
  475. HEADER_FILES    += $(OH323_INCDIR)/h323annexg.h
  476. COMMON_SOURCES    += $(OH323_SRCDIR)/h323annexg.cxx
  477. HEADER_FILES    += $(OH323_INCDIR)/h501pdu.h
  478. COMMON_SOURCES    += $(OH323_SRCDIR)/h501pdu.cxx
  479. HEADER_FILES    += $(OH323_INCDIR)/h235auth.h
  480. COMMON_SOURCES    += $(OH323_SRCDIR)/h235auth.cxx
  481. HEADER_FILES    += $(OH323_INCDIR)/rfc2833.h
  482. COMMON_SOURCES    += $(OH323_SRCDIR)/rfc2833.cxx
  483. HEADER_FILES    += $(OH323_INCDIR)/opalwavfile.h
  484. COMMON_SOURCES    += $(OH323_SRCDIR)/opalwavfile.cxx
  485. HEADER_FILES    += $(OH323_INCDIR)/opalvxml.h
  486. COMMON_SOURCES    += $(OH323_SRCDIR)/opalvxml.cxx
  487.  
  488. ifdef HAS_OPENSSL
  489. COMMON_SOURCES    += $(OH323_SRCDIR)/h235auth1.cxx
  490. endif
  491.  
  492. HEADER_FILES    += $(OH323_INCDIR)/ixjlid.h
  493. ifdef HAS_IXJ
  494. COMMON_SOURCES  += $(OH323_SRCDIR)/ixjunix.cxx
  495. endif
  496.  
  497. ifdef HAS_VPB
  498. COMMON_SOURCES  += $(OH323_SRCDIR)/vpblid.cxx
  499. endif
  500.  
  501. COMMON_SOURCES    += $(OH323_SRCDIR)/g711.c
  502.  
  503.  
  504. ifndef NOAUDIOCODECS
  505.  
  506. # GSM 06.10
  507.  
  508. HEADER_FILES    += $(OH323_INCDIR)/gsmcodec.h
  509. COMMON_SOURCES    += $(OH323_SRCDIR)/gsmcodec.cxx
  510.  
  511. GSM_DIR     = gsm
  512. GSM_SRCDIR    = $(GSM_DIR)/src
  513. GSM_INCDIR    = $(GSM_DIR)/inc
  514.  
  515. HEADER_FILES    += $(GSM_INCDIR)/gsm.h \
  516.                    $(GSM_INCDIR)/config.h \
  517.                    $(GSM_INCDIR)/private.h \
  518.                    $(GSM_INCDIR)/proto.h \
  519.                    $(GSM_INCDIR)/unproto.h \
  520.                    $(GSM_DIR)/README \
  521.                    $(GSM_DIR)/COPYRIGHT \
  522.                    $(GSM_DIR)/PART_OF_TOAST
  523.  
  524. COMMON_SOURCES    += $(GSM_SRCDIR)/gsm_create.c \
  525.                    $(GSM_SRCDIR)/gsm_destroy.c \
  526.            $(GSM_SRCDIR)/gsm_decode.c \
  527.                    $(GSM_SRCDIR)/gsm_encode.c \
  528.                    $(GSM_SRCDIR)/gsm_option.c \
  529.            $(GSM_SRCDIR)/code.c \
  530.                    $(GSM_SRCDIR)/decode.c \
  531.                    $(GSM_SRCDIR)/add.c \
  532.            $(GSM_SRCDIR)/gsm_lpc.c \
  533.                    $(GSM_SRCDIR)/rpe.c \
  534.                    $(GSM_SRCDIR)/preprocess.c \
  535.                    $(GSM_SRCDIR)/long_term.c \
  536.                    $(GSM_SRCDIR)/short_term.c \
  537.                    $(GSM_SRCDIR)/table.c
  538.  
  539.  
  540. # Microsoft GSM and ADPCM
  541.  
  542. HEADER_FILES    += $(OH323_INCDIR)/mscodecs.h
  543. COMMON_SOURCES    += $(OH323_SRCDIR)/mscodecs.cxx
  544.  
  545.  
  546. # G.726
  547.  
  548. HEADER_FILES    += $(OH323_INCDIR)/g726codec.h
  549. COMMON_SOURCES    += $(OH323_SRCDIR)/g726codec.cxx
  550.  
  551. G726_DIR    = g726
  552.  
  553. HEADER_FILES    += $(G726_DIR)/g72x.h \
  554.                    $(G726_DIR)/private.h
  555.  
  556. COMMON_SOURCES    += $(G726_DIR)/g72x.c \
  557.                    $(G726_DIR)/g726_16.c \
  558.                    $(G726_DIR)/g726_24.c \
  559.                    $(G726_DIR)/g726_32.c \
  560.                    $(G726_DIR)/g726_40.c
  561.  
  562.  
  563. # LPC-10
  564.  
  565. HEADER_FILES    += $(OH323_INCDIR)/lpc10codec.h
  566. COMMON_SOURCES    += $(OH323_SRCDIR)/lpc10codec.cxx
  567.  
  568. LPC10_DIR     = lpc10
  569. LPC10_INCDIR    = $(LPC10_DIR)
  570. LPC10_SRCDIR    = $(LPC10_DIR)/src
  571.  
  572. HEADER_FILES    += $(LPC10_INCDIR)/lpc10.h
  573.  
  574. COMMON_SOURCES    += $(LPC10_SRCDIR)/f2clib.c \
  575.            $(LPC10_SRCDIR)/analys.c \
  576.            $(LPC10_SRCDIR)/bsynz.c \
  577.            $(LPC10_SRCDIR)/chanwr.c \
  578.            $(LPC10_SRCDIR)/dcbias.c \
  579.            $(LPC10_SRCDIR)/decode_.c \
  580.            $(LPC10_SRCDIR)/deemp.c \
  581.            $(LPC10_SRCDIR)/difmag.c \
  582.            $(LPC10_SRCDIR)/dyptrk.c \
  583.            $(LPC10_SRCDIR)/encode_.c \
  584.            $(LPC10_SRCDIR)/energy.c \
  585.            $(LPC10_SRCDIR)/ham84.c \
  586.            $(LPC10_SRCDIR)/hp100.c \
  587.            $(LPC10_SRCDIR)/invert.c \
  588.            $(LPC10_SRCDIR)/irc2pc.c \
  589.            $(LPC10_SRCDIR)/ivfilt.c \
  590.            $(LPC10_SRCDIR)/lpcdec.c \
  591.            $(LPC10_SRCDIR)/lpcenc.c \
  592.            $(LPC10_SRCDIR)/lpcini.c \
  593.            $(LPC10_SRCDIR)/lpfilt.c \
  594.            $(LPC10_SRCDIR)/median.c \
  595.            $(LPC10_SRCDIR)/mload.c \
  596.            $(LPC10_SRCDIR)/onset.c \
  597.            $(LPC10_SRCDIR)/pitsyn.c \
  598.            $(LPC10_SRCDIR)/placea.c \
  599.            $(LPC10_SRCDIR)/placev.c \
  600.            $(LPC10_SRCDIR)/preemp.c \
  601.            $(LPC10_SRCDIR)/prepro.c \
  602.            $(LPC10_SRCDIR)/random.c \
  603.            $(LPC10_SRCDIR)/rcchk.c \
  604.            $(LPC10_SRCDIR)/synths.c \
  605.            $(LPC10_SRCDIR)/tbdm.c \
  606.            $(LPC10_SRCDIR)/voicin.c \
  607.            $(LPC10_SRCDIR)/vparms.c \
  608.  
  609.  
  610. # iLBC
  611.  
  612. HEADER_FILES    += $(OH323_INCDIR)/ilbccodec.h
  613. COMMON_SOURCES    += $(OH323_SRCDIR)/ilbccodec.cxx
  614.  
  615. ILBC_DIR     = iLBC
  616.  
  617. HEADER_FILES    += $(ILBC_DIR)/iLBC_define.h
  618. HEADER_FILES    += $(ILBC_DIR)/iLBC_decode.h
  619. COMMON_SOURCES    += $(ILBC_DIR)/iLBC_decode.c
  620. HEADER_FILES    += $(ILBC_DIR)/iLBC_encode.h
  621. COMMON_SOURCES    += $(ILBC_DIR)/iLBC_encode.c
  622. HEADER_FILES    += $(ILBC_DIR)/FrameClassify.h
  623. COMMON_SOURCES    += $(ILBC_DIR)/FrameClassify.c
  624. HEADER_FILES    += $(ILBC_DIR)/LPCdecode.h
  625. COMMON_SOURCES    += $(ILBC_DIR)/LPCdecode.c
  626. HEADER_FILES    += $(ILBC_DIR)/LPCencode.h
  627. COMMON_SOURCES    += $(ILBC_DIR)/LPCencode.c
  628. HEADER_FILES    += $(ILBC_DIR)/StateConstructW.h
  629. COMMON_SOURCES    += $(ILBC_DIR)/StateConstructW.c
  630. HEADER_FILES    += $(ILBC_DIR)/StateSearchW.h
  631. COMMON_SOURCES    += $(ILBC_DIR)/StateSearchW.c
  632. HEADER_FILES    += $(ILBC_DIR)/anaFilter.h
  633. COMMON_SOURCES    += $(ILBC_DIR)/anaFilter.c
  634. HEADER_FILES    += $(ILBC_DIR)/constants.h
  635. COMMON_SOURCES    += $(ILBC_DIR)/constants.c
  636. HEADER_FILES    += $(ILBC_DIR)/createCB.h
  637. COMMON_SOURCES    += $(ILBC_DIR)/createCB.c
  638. HEADER_FILES    += $(ILBC_DIR)/doCPLC.h
  639. COMMON_SOURCES    += $(ILBC_DIR)/doCPLC.c
  640. HEADER_FILES    += $(ILBC_DIR)/enhancer.h
  641. COMMON_SOURCES    += $(ILBC_DIR)/enhancer.c
  642. HEADER_FILES    += $(ILBC_DIR)/filter.h
  643. COMMON_SOURCES    += $(ILBC_DIR)/filter.c
  644. HEADER_FILES    += $(ILBC_DIR)/gainquant.h
  645. COMMON_SOURCES    += $(ILBC_DIR)/gainquant.c
  646. HEADER_FILES    += $(ILBC_DIR)/getCBvec.h
  647. COMMON_SOURCES    += $(ILBC_DIR)/getCBvec.c
  648. HEADER_FILES    += $(ILBC_DIR)/helpfun.h
  649. COMMON_SOURCES    += $(ILBC_DIR)/helpfun.c
  650. HEADER_FILES    += $(ILBC_DIR)/hpInput.h
  651. COMMON_SOURCES    += $(ILBC_DIR)/hpInput.c
  652. HEADER_FILES    += $(ILBC_DIR)/hpOutput.h
  653. COMMON_SOURCES    += $(ILBC_DIR)/hpOutput.c
  654. HEADER_FILES    += $(ILBC_DIR)/iCBConstruct.h
  655. COMMON_SOURCES    += $(ILBC_DIR)/iCBConstruct.c
  656. HEADER_FILES    += $(ILBC_DIR)/iCBSearch.h
  657. COMMON_SOURCES    += $(ILBC_DIR)/iCBSearch.c
  658. HEADER_FILES    += $(ILBC_DIR)/lsf.h
  659. COMMON_SOURCES    += $(ILBC_DIR)/lsf.c
  660. HEADER_FILES    += $(ILBC_DIR)/packing.h
  661. COMMON_SOURCES    += $(ILBC_DIR)/packing.c
  662. HEADER_FILES    += $(ILBC_DIR)/syntFilter.h
  663. COMMON_SOURCES    += $(ILBC_DIR)/syntFilter.c
  664.  
  665.  
  666. # G.729 codec (not available on Unix yet!)
  667.  
  668. HEADER_FILES    += $(OH323_INCDIR)/g729codec.h
  669. COMMON_SOURCES    += $(OH323_SRCDIR)/g729codec.cxx
  670.  
  671. # Speex codec
  672.  
  673. ifndef NO_SPEEX
  674.  
  675. HEADER_FILES    += $(OH323_INCDIR)/speexcodec.h
  676. COMMON_SOURCES    += $(OH323_SRCDIR)/speexcodec.cxx
  677.  
  678.  
  679. SPEEX_DIR     = speex
  680. SPEEX_INCDIR    = $(SPEEX_DIR)/libspeex
  681. SPEEX_SRCDIR    = $(SPEEX_DIR)/libspeex
  682.  
  683. HEADER_FILES    += $(SPEEX_INCDIR)/speex.h \
  684.            $(SPEEX_INCDIR)/speex_bits.h \
  685.            $(SPEEX_INCDIR)/speex_header.h \
  686.            $(SPEEX_INCDIR)/speex_callbacks.h
  687.  
  688. COMMON_SOURCES    += $(SPEEX_SRCDIR)/nb_celp.c \
  689.            $(SPEEX_SRCDIR)/sb_celp.c \
  690.            $(SPEEX_SRCDIR)/lpc.c \
  691.            $(SPEEX_SRCDIR)/ltp.c \
  692.            $(SPEEX_SRCDIR)/lsp.c \
  693.            $(SPEEX_SRCDIR)/quant_lsp.c \
  694.            $(SPEEX_SRCDIR)/lsp_tables_nb.c \
  695.            $(SPEEX_SRCDIR)/gain_table.c \
  696.            $(SPEEX_SRCDIR)/gain_table_lbr.c \
  697.            $(SPEEX_SRCDIR)/cb_search.c \
  698.            $(SPEEX_SRCDIR)/filters.c \
  699.            $(SPEEX_SRCDIR)/bits.c \
  700.            $(SPEEX_SRCDIR)/modes.c \
  701.            $(SPEEX_SRCDIR)/vq.c \
  702.            $(SPEEX_SRCDIR)/high_lsp_tables.c \
  703.            $(SPEEX_SRCDIR)/vbr.c \
  704.            $(SPEEX_SRCDIR)/hexc_table.c \
  705.            $(SPEEX_SRCDIR)/exc_5_256_table.c \
  706.            $(SPEEX_SRCDIR)/exc_5_64_table.c \
  707.            $(SPEEX_SRCDIR)/exc_8_128_table.c \
  708.            $(SPEEX_SRCDIR)/exc_20_32_table.c \
  709.            $(SPEEX_SRCDIR)/exc_10_32_table.c \
  710.            $(SPEEX_SRCDIR)/exc_10_16_table.c \
  711.            $(SPEEX_SRCDIR)/hexc_10_32_table.c \
  712.            $(SPEEX_SRCDIR)/misc.c \
  713.            $(SPEEX_SRCDIR)/speex_header.c \
  714.            $(SPEEX_SRCDIR)/speex_callbacks.c
  715. endif
  716.  
  717. ifeq ($(ENDIAN),PBIG_ENDIAN)
  718. SPEEX_FLAGS = -DWORDS_BIGENDIAN 
  719. endif
  720.  
  721. endif
  722.  
  723.  
  724.  
  725. ifndef NOVIDEO
  726.  
  727. VIC_DIR = vic
  728.  
  729. HEADER_FILES    += $(OH323_INCDIR)/h261codec.h \
  730.                    $(VIC_DIR)/p64.h \
  731.            $(VIC_DIR)/dct.h \
  732.            $(VIC_DIR)/p64-huff.h \
  733.            $(VIC_DIR)/config.h \
  734.            $(VIC_DIR)/bsd-endian.h \
  735.            $(VIC_DIR)/crdef.h \
  736.                    $(VIC_DIR)/encoder.h \
  737.                    $(VIC_DIR)/encoder-h261.h \
  738.                    $(VIC_DIR)/p64encoder.h \
  739.                    $(VIC_DIR)/transmitter.h \
  740.                    $(VIC_DIR)/vid_coder.h \
  741.                    $(VIC_DIR)/videoframe.h \
  742.  
  743. COMMON_SOURCES    += $(OH323_SRCDIR)/h261codec.cxx \
  744.                    $(VIC_DIR)/dct.cxx \
  745.            $(VIC_DIR)/p64.cxx \
  746.            $(VIC_DIR)/huffcode.c \
  747.            $(VIC_DIR)/bv.c \
  748.            $(VIC_DIR)/encoder-h261.cxx \
  749.                    $(VIC_DIR)/p64encoder.cxx \
  750.                    $(VIC_DIR)/transmitter.cxx \
  751.                    $(VIC_DIR)/vid_coder.cxx 
  752.  
  753.  
  754. ifdef CU30INSTALLED
  755. COMMON_SOURCES    +=$(OH323_SRCDIR)/cu30codec.cxx
  756. HEADER_FILES    +=$(OH323_INCDIR)/cu30codec.h
  757. endif
  758.  
  759. ifdef H323_AVCODEC
  760. COMMON_SOURCES    +=$(OH323_SRCDIR)/ffh263codec.cxx 
  761. HEADER_FILES    +=$(OH323_INCDIR)/ffh263codec.h 
  762. endif
  763.  
  764. ifdef H323_VICH263
  765. COMMON_SOURCES    +=$(OH323_SRCDIR)/h263codec.cxx 
  766. HEADER_FILES    +=$(OH323_INCDIR)/h263codec.h 
  767. endif
  768.  
  769. endif
  770.  
  771.  
  772. # The following are required by the ptlib.mak
  773. SOURCES        = $(OH323_SRCDIR)/h225_1.cxx \
  774.                   $(OH323_SRCDIR)/h225_2.cxx \
  775.           $(OH323_SRCDIR)/h245_1.cxx \
  776.           $(OH323_SRCDIR)/h245_2.cxx \
  777.           $(OH323_SRCDIR)/h245_3.cxx \
  778.           $(OH323_SRCDIR)/h248.cxx \
  779.           $(OH323_SRCDIR)/x880.cxx \
  780.           $(OH323_SRCDIR)/t38.cxx \
  781.           $(OH323_SRCDIR)/h4501.cxx \
  782.           $(OH323_SRCDIR)/h4502.cxx \
  783.           $(OH323_SRCDIR)/h4504.cxx \
  784.                   $(OH323_SRCDIR)/h4505.cxx \
  785.                   $(OH323_SRCDIR)/h4506.cxx \
  786.                   $(OH323_SRCDIR)/h4507.cxx \
  787.                   $(OH323_SRCDIR)/h4508.cxx \
  788.                   $(OH323_SRCDIR)/h4509.cxx \
  789.                   $(OH323_SRCDIR)/h45010.cxx \
  790.                   $(OH323_SRCDIR)/h45011.cxx \
  791.           $(OH323_SRCDIR)/h501.cxx \
  792.           $(OH323_SRCDIR)/mcspdu.cxx \
  793.           $(OH323_SRCDIR)/gccpdu.cxx \
  794.           $(COMMON_SOURCES) \
  795.  
  796. ifndef OH323_SUPPRESS_H235
  797. SOURCES        += $(OH323_SRCDIR)/h235.cxx
  798. endif
  799.  
  800. CLEAN_FILES    = $(OH323_LIB) \
  801.           $(ASN_FILES:.asn=.cxx) \
  802.           $(ASN_FILES:.asn=_[1-9t].cxx) \
  803.           $(ASN_FILES:.asn=_asn.cxx) \
  804.           $(OH323_INCDIR)/h225.h \
  805.           $(OH323_INCDIR)/h245.h \
  806.           $(OH323_INCDIR)/h248.h \
  807.           $(OH323_INCDIR)/h4501.h \
  808.           $(OH323_INCDIR)/h4502.h \
  809.           $(OH323_INCDIR)/h4504.h \
  810.                   $(OH323_INCDIR)/h4505.h \
  811.                   $(OH323_INCDIR)/h4506.h \
  812.                   $(OH323_INCDIR)/h4507.h \
  813.                   $(OH323_INCDIR)/h4508.h \
  814.                   $(OH323_INCDIR)/h4509.h \
  815.                   $(OH323_INCDIR)/h45010.h \
  816.                   $(OH323_INCDIR)/h45011.h \
  817.           $(OH323_INCDIR)/h501.h \
  818.           $(OH323_INCDIR)/x880.h \
  819.           $(OH323_INCDIR)/t38.h \
  820.           $(OH323_INCDIR)/mcspdu.h \
  821.           $(OH323_INCDIR)/gccpdu.h \
  822.  
  823. ifndef OH323_SUPPRESS_H235
  824. CLEAN_FILES    += $(OH323_INCDIR)/h235.h
  825. endif
  826.  
  827. ifdef NOTRACE
  828. STDCCFLAGS += -DPASN_NOPRINTON
  829. else
  830. STDCCFLAGS += -DPTRACING
  831. endif
  832.  
  833.  
  834. VPATH_CXX := $(OH323_SRCDIR)
  835. VPATH_C := $(OH323_SRCDIR)
  836.  
  837.  
  838. ####################################################
  839.  
  840. include $(PWLIBDIR)/make/common.mak
  841.  
  842. ####################################################
  843.  
  844. # make sure pwlib is in the list of external libraries
  845. # this ensures pwlib is not statically linked
  846. LDFLAGS        += -L$(PW_LIBDIR)
  847. SYSLIBS        += -l$(PTLIB_BASE)$(LIB_TYPE)
  848.  
  849. LIB_BASENAME=$(OH323_BASE)
  850. LIB_FILENAME=$(OH323_FILE)
  851.  
  852. include $(PWLIBDIR)/make/lib.mak
  853.  
  854. ####################################################
  855.  
  856.  
  857. # Make sure the asnparser is built and if new version force recompiles
  858.  
  859. # Use a different variable here to support cross compiling
  860. ifndef HOSTPWLIBDIR
  861. HOSTPWLIBDIR=$(PWLIBDIR)
  862. endif
  863.  
  864. ifndef HOST_PLATFORM_TYPE
  865. HOST_PLATFORM_TYPE=$(PLATFORM_TYPE)
  866. endif
  867.  
  868.  
  869. # Set library path so asnparser will run
  870.  
  871. ifdef LD_LIBRARY_PATH
  872. LD_LIBRARY_PATH:=$(LD_LIBRARY_PATH):$(HOSTPWLIBDIR)/lib
  873. else
  874. LD_LIBRARY_PATH:=$(HOSTPWLIBDIR)/lib
  875. endif
  876. export LD_LIBRARY_PATH
  877.  
  878.  
  879. # If we're cross compiling, we want the host's asnparser
  880. # otherwise use the one for the current platform
  881. ASNPARSE_DIR = $(HOSTPWLIBDIR)/tools/asnparser
  882. ASNPARSER = $(ASNPARSE_DIR)/obj_$(HOST_PLATFORM_TYPE)_r/asnparser
  883.  
  884.  
  885. # If not cross compiling then make sure asnparser is built
  886. ifeq ($(PLATFORM_TYPE),$(HOST_PLATFORM_TYPE))
  887. $(ASNPARSER):
  888.     $(MAKE) -C $(ASNPARSE_DIR) opt
  889. endif
  890.  
  891.  
  892. ifdef ASN_EXCLUDE
  893. ASNPARSER += -x $(ASN_EXCLUDE)
  894. endif
  895.  
  896. asnparser.version: $(ASNPARSER)
  897.     $(ASNPARSER) --version | awk '{print $$1,$$2,$$3}' > asnparser.version.new
  898.     if test -f asnparser.version && diff asnparser.version.new asnparser.version >/dev/null 2>&1 ; \
  899.         then rm asnparser.version.new ; \
  900.         else mv asnparser.version.new asnparser.version ; \
  901.     fi
  902.  
  903.  
  904. # Build the .cxx files from the .asn files
  905.  
  906. #### h245
  907.  
  908. $(OH323_SRCDIR)/h245_1.cxx \
  909. $(OH323_OBJDIR)/h245_1.dep \
  910. $(OH323_SRCDIR)/h245_2.cxx \
  911. $(OH323_OBJDIR)/h245_2.dep \
  912. $(OH323_SRCDIR)/h245_3.cxx \
  913. $(OH323_OBJDIR)/h245_3.dep : $(OH323_INCDIR)/h245.h
  914.  
  915.  
  916. $(OH323_INCDIR)/h245.h: $(OH323_SRCDIR)/h245.asn asnparser.version
  917.     $(ASNPARSER) -s3 -m H245 -c --classheader "H245_AudioCapability=#ifndef PASN_NOPRINTON\nvoid PrintOn(ostream & strm) const;\n#endif" $<
  918.     mv $(OH323_SRCDIR)/h245.h $(OH323_INCDIR)/h245.h
  919.  
  920. #### h235
  921.  
  922. ifndef OH323_SUPPRESS_H235
  923.  
  924. $(OH323_SRCDIR)/h235.cxx $(OH323_SRCDIR)/h235_t.cxx : $(OH323_INCDIR)/h235.h
  925.  
  926. $(OH323_INCDIR)/h235.h: $(OH323_SRCDIR)/h235.asn asnparser.version
  927.     $(ASNPARSER) -m H235 -c $<
  928.     mv $(OH323_SRCDIR)/h235.h $(OH323_INCDIR)/h235.h
  929.  
  930. endif
  931.  
  932. #### h225
  933.  
  934. $(OH323_SRCDIR)/h225_1.cxx \
  935. $(OH323_OBJDIR)/h225_1.dep \
  936. $(OH323_SRCDIR)/h225_2.cxx \
  937. $(OH323_OBJDIR)/h225_2.dep : $(OH323_INCDIR)/h225.h \
  938.                              $(OH323_SRCDIR)/h235_t.cxx \
  939.                  $(OH323_INCDIR)/h245.h
  940.  
  941. $(OH323_INCDIR)/h225.h: $(OH323_SRCDIR)/h225.asn asnparser.version
  942.     $(ASNPARSER) -s2 -m H225 -r MULTIMEDIA-SYSTEM-CONTROL=H245 -c $<
  943.     mv $(OH323_SRCDIR)/h225.h $(OH323_INCDIR)/h225.h
  944.  
  945.  
  946. #### h248
  947.  
  948. $(OH323_SRCDIR)/h248.cxx : $(OH323_INCDIR)/h248.h
  949.  
  950.  
  951. $(OH323_INCDIR)/h248.h: $(OH323_SRCDIR)/h248.asn asnparser.version
  952.     $(ASNPARSER) -m H248 -c $<
  953.     mv $(OH323_SRCDIR)/h248.h $(OH323_INCDIR)/h248.h
  954.  
  955. ### h450
  956.  
  957. $(OH323_SRCDIR)/h4501.cxx $(OH323_OBJDIR)/h4501.dep : \
  958.         $(OH323_INCDIR)/h4501.h $(OH323_INCDIR)/x880.h
  959.  
  960. $(OH323_INCDIR)/h4501.h: $(OH323_SRCDIR)/h4501.asn asnparser.version
  961.     $(ASNPARSER) -m H4501 -c $<
  962.     mv $(OH323_SRCDIR)/h4501.h $(OH323_INCDIR)/h4501.h
  963.  
  964.  
  965. $(OH323_SRCDIR)/h4502.cxx $(OH323_OBJDIR)/h4502.dep : \
  966.         $(OH323_INCDIR)/h4502.h $(OH323_INCDIR)/x880.h \
  967.         $(OH323_INCDIR)/h4501.h
  968.  
  969. $(OH323_INCDIR)/h4502.h: $(OH323_SRCDIR)/h4502.asn asnparser.version
  970.     $(ASNPARSER) -m H4502 -c $<
  971.     mv $(OH323_SRCDIR)/h4502.h $(OH323_INCDIR)/h4502.h
  972.  
  973.  
  974. $(OH323_SRCDIR)/h4504.cxx $(OH323_OBJDIR)/h4504.dep : \
  975.         $(OH323_INCDIR)/h4504.h $(OH323_INCDIR)/x880.h \
  976.         $(OH323_INCDIR)/h4501.h
  977.  
  978. $(OH323_INCDIR)/h4504.h: $(OH323_SRCDIR)/h4504.asn asnparser.version
  979.     $(ASNPARSER) -m H4504 -c $<
  980.     mv $(OH323_SRCDIR)/h4504.h $(OH323_INCDIR)/h4504.h
  981.  
  982.  
  983. $(OH323_SRCDIR)/h4505.cxx $(OH323_OBJDIR)/h4505.dep : \
  984.         $(OH323_INCDIR)/h4505.h $(OH323_INCDIR)/x880.h \
  985.         $(OH323_INCDIR)/h4501.h \
  986.         $(OH323_INCDIR)/h4504.h
  987.  
  988. $(OH323_INCDIR)/h4505.h: $(OH323_SRCDIR)/h4505.asn asnparser.version
  989.     $(ASNPARSER) -m H4505 -c $<
  990.     mv $(OH323_SRCDIR)/h4505.h $(OH323_INCDIR)/h4505.h
  991.  
  992.  
  993. $(OH323_SRCDIR)/h4506.cxx $(OH323_OBJDIR)/h4506.dep : \
  994.         $(OH323_INCDIR)/h4506.h $(OH323_INCDIR)/x880.h \
  995.         $(OH323_INCDIR)/h4501.h \
  996.         $(OH323_INCDIR)/h4504.h
  997.  
  998. $(OH323_INCDIR)/h4506.h: $(OH323_SRCDIR)/h4506.asn asnparser.version
  999.     $(ASNPARSER) -m H4506 -c $<
  1000.     mv $(OH323_SRCDIR)/h4506.h $(OH323_INCDIR)/h4506.h
  1001.  
  1002.  
  1003. $(OH323_SRCDIR)/h4507.cxx $(OH323_OBJDIR)/h4507.dep : \
  1004.         $(OH323_INCDIR)/h4507.h $(OH323_INCDIR)/x880.h \
  1005.         $(OH323_INCDIR)/h4501.h \
  1006.         $(OH323_INCDIR)/h4504.h
  1007.  
  1008. $(OH323_INCDIR)/h4507.h: $(OH323_SRCDIR)/h4507.asn asnparser.version
  1009.     $(ASNPARSER) -m H4507 -c $<
  1010.     mv $(OH323_SRCDIR)/h4507.h $(OH323_INCDIR)/h4507.h
  1011.  
  1012.  
  1013. $(OH323_SRCDIR)/h4508.cxx $(OH323_OBJDIR)/h4508.dep : \
  1014.         $(OH323_INCDIR)/h4508.h $(OH323_INCDIR)/x880.h \
  1015.         $(OH323_INCDIR)/h4501.h \
  1016.         $(OH323_INCDIR)/h4505.h
  1017.  
  1018. $(OH323_INCDIR)/h4508.h: $(OH323_SRCDIR)/h4508.asn asnparser.version
  1019.     $(ASNPARSER) -m H4508 -c $<
  1020.     mv $(OH323_SRCDIR)/h4508.h $(OH323_INCDIR)/h4508.h
  1021.  
  1022.  
  1023. $(OH323_SRCDIR)/h4509.cxx $(OH323_OBJDIR)/h4509.dep : \
  1024.         $(OH323_INCDIR)/h4509.h $(OH323_INCDIR)/x880.h \
  1025.         $(OH323_INCDIR)/h4501.h \
  1026.         $(OH323_INCDIR)/h4504.h \
  1027.         $(OH323_INCDIR)/h4507.h
  1028.  
  1029. $(OH323_INCDIR)/h4509.h: $(OH323_SRCDIR)/h4509.asn asnparser.version
  1030.     $(ASNPARSER) -m H4509 -c $<
  1031.     mv $(OH323_SRCDIR)/h4509.h $(OH323_INCDIR)/h4509.h
  1032.  
  1033.  
  1034. $(OH323_SRCDIR)/h45010.cxx $(OH323_OBJDIR)/h45010.dep : \
  1035.         $(OH323_INCDIR)/h45010.h $(OH323_INCDIR)/x880.h \
  1036.         $(OH323_INCDIR)/h4504.h \
  1037.         $(OH323_INCDIR)/h4506.h
  1038.  
  1039. $(OH323_INCDIR)/h45010.h: $(OH323_SRCDIR)/h45010.asn asnparser.version
  1040.     $(ASNPARSER) -m H45010 -c $<
  1041.     mv $(OH323_SRCDIR)/h45010.h $(OH323_INCDIR)/h45010.h
  1042.  
  1043.  
  1044. $(OH323_SRCDIR)/h45011.cxx $(OH323_OBJDIR)/h45011.dep : \
  1045.         $(OH323_INCDIR)/h45011.h $(OH323_INCDIR)/x880.h \
  1046.         $(OH323_INCDIR)/h4501.h \
  1047.         $(OH323_INCDIR)/h4504.h \
  1048.         $(OH323_INCDIR)/h4506.h \
  1049.         $(OH323_INCDIR)/h45010.h
  1050.  
  1051. $(OH323_INCDIR)/h45011.h: $(OH323_SRCDIR)/h45011.asn asnparser.version
  1052.     $(ASNPARSER) -m H45011 -c $<
  1053.     mv $(OH323_SRCDIR)/h45011.h $(OH323_INCDIR)/h45011.h
  1054.  
  1055.  
  1056. ### x880
  1057.  
  1058. $(OH323_SRCDIR)/x880.cxx: $(OH323_INCDIR)/x880.h
  1059.  
  1060. $(OH323_INCDIR)/x880.h: $(OH323_SRCDIR)/x880.asn asnparser.version
  1061.     $(ASNPARSER) -m X880 -c $<
  1062.     mv $(OH323_SRCDIR)/x880.h $(OH323_INCDIR)/x880.h
  1063.  
  1064. ### h501
  1065.  
  1066. $(OH323_SRCDIR)/h501.cxx $(OH323_OBJDIR)/h501.dep : \
  1067.         $(OH323_INCDIR)/h501.h
  1068.  
  1069. $(OH323_INCDIR)/h501.h: $(OH323_SRCDIR)/h501.asn asnparser.version
  1070.     $(ASNPARSER) -m H501 -c $<
  1071.     mv $(OH323_SRCDIR)/h501.h $(OH323_INCDIR)/h501.h
  1072.  
  1073.  
  1074. ### t38
  1075.  
  1076. $(OH323_SRCDIR)/t38.cxx: $(OH323_INCDIR)/t38.h
  1077.  
  1078. $(OH323_INCDIR)/t38.h: $(OH323_SRCDIR)/t38.asn asnparser.version
  1079.     $(ASNPARSER) -m T38 -c $<
  1080.     mv $(OH323_SRCDIR)/t38.h $(OH323_INCDIR)/t38.h
  1081.  
  1082. #### mcs
  1083.  
  1084. $(OH323_SRCDIR)/mcspdu.cxx: $(OH323_INCDIR)/mcspdu.h
  1085.  
  1086. $(OH323_INCDIR)/mcspdu.h: $(OH323_SRCDIR)/mcspdu.asn asnparser.version
  1087.     $(ASNPARSER) -m MCS -c $<
  1088.     mv $(OH323_SRCDIR)/mcspdu.h $(OH323_INCDIR)/mcspdu.h
  1089.  
  1090. #### gcc
  1091.  
  1092. $(OH323_SRCDIR)/gccpdu.cxx: $(OH323_INCDIR)/gccpdu.h
  1093.  
  1094. $(OH323_INCDIR)/gccpdu.h: $(OH323_SRCDIR)/gccpdu.asn asnparser.version
  1095.     $(ASNPARSER) -m GCC -c $<
  1096.     mv $(OH323_SRCDIR)/gccpdu.h $(OH323_INCDIR)/gccpdu.h
  1097.  
  1098.  
  1099. ifndef OH323_SUPPRESS_H235
  1100.  
  1101. # ensure that h.235.h is created for the h225 compilation
  1102. $(OH323_OBJDIR)/h225.o: $(OH323_INCDIR)/h235.h
  1103.  
  1104. endif
  1105.  
  1106. # Build rules for VIC codecs
  1107.  
  1108. $(OH323_OBJDIR)/%.o : $(VIC_DIR)/%.cxx
  1109.     @if [ ! -d $(OH323_OBJDIR) ] ; then mkdir -p $(OH323_OBJDIR) ; fi
  1110.     $(CPLUS) -I$(VIC_DIR) $(STDCCFLAGS) $(CFLAGS) -c $< -o $@
  1111.  
  1112. $(OH323_OBJDIR)/%.o : $(VIC_DIR)/%.c
  1113.     @if [ ! -d $(OH323_OBJDIR) ] ; then mkdir -p $(OH323_OBJDIR) ; fi
  1114.     $(CC) -I$(VIC_DIR) $(STDCCFLAGS) $(CFLAGS) -c $< -o $@
  1115.  
  1116. $(DEPDIR)/%.dep : $(VIC_DIR)/%.c
  1117.     @if [ ! -d $(DEPDIR) ] ; then mkdir -p $(DEPDIR) ; fi
  1118.     @printf %s $(OH323_OBJDIR)/ > $@
  1119.     $(CPLUS) -I$(VIC_DIR) $(STDCCFLAGS) $(CFLAGS) -M $< >> $@
  1120.  
  1121. $(DEPDIR)/%.dep : $(VIC_DIR)/%.cxx
  1122.     @if [ ! -d $(DEPDIR) ] ; then mkdir -p $(DEPDIR) ; fi
  1123.     @printf %s $(OH323_OBJDIR)/ > $@
  1124.     $(CPLUS) -I$(VIC_DIR) $(STDCCFLAGS) $(CFLAGS) -M $< >> $@
  1125.  
  1126.  
  1127. # Build rules for the GSM codec
  1128.  
  1129. $(OH323_OBJDIR)/%.o : $(GSM_SRCDIR)/%.c
  1130.     @if [ ! -d $(OH323_OBJDIR) ] ; then mkdir -p $(OH323_OBJDIR) ; fi
  1131.     $(CC) -ansi -I$(GSM_INCDIR) -DWAV49 -DNeedFunctionPrototypes=1 $(OPTCCFLAGS) $(CFLAGS) -c $< -o $@
  1132.  
  1133. $(DEPDIR)/%.dep : $(GSM_SRCDIR)/%.c
  1134.     @if [ ! -d $(DEPDIR) ] ; then mkdir -p $(DEPDIR) ; fi
  1135.     @printf %s $(OH323_OBJDIR)/ > $@
  1136.     $(CC) -ansi -I$(GSM_INCDIR) -DWAV49 -DNeedFunctionPrototypes=1 $(CFLAGS) -M $< >> $@
  1137.  
  1138.  
  1139. # Build rules for the G.726 codec
  1140.  
  1141. $(OH323_OBJDIR)/%.o : $(G726_DIR)/%.c
  1142.     @if [ ! -d $(OH323_OBJDIR) ] ; then mkdir -p $(OH323_OBJDIR) ; fi
  1143.     $(CC) $(OPTCCFLAGS) $(CFLAGS) -c $< -o $@
  1144.  
  1145. $(DEPDIR)/%.dep : $(G726_DIR)/%.c
  1146.     @if [ ! -d $(DEPDIR) ] ; then mkdir -p $(DEPDIR) ; fi
  1147.     @printf %s $(OH323_OBJDIR)/ > $@
  1148.     $(CC) $(OPTCCFLAGS) $(CFLAGS) -M $< >> $@
  1149.  
  1150.  
  1151. # Build rules for the LPC10 codec
  1152.  
  1153. $(OH323_OBJDIR)/%.o : $(LPC10_SRCDIR)/%.c
  1154.     @if [ ! -d $(OH323_OBJDIR) ] ; then mkdir -p $(OH323_OBJDIR) ; fi
  1155.     $(CC) -I$(LPC10_INCDIR) $(OPTCCFLAGS) $(CFLAGS) -c $< -o $@
  1156.  
  1157. $(DEPDIR)/%.dep : $(LPC10_SRCDIR)/%.c
  1158.     @if [ ! -d $(DEPDIR) ] ; then mkdir -p $(DEPDIR) ; fi
  1159.     @printf %s $(OH323_OBJDIR)/ > $@
  1160.     $(CC) -I$(LPC10_INCDIR) $(CFLAGS) -M $< >> $@
  1161.  
  1162. # Build rules for the iLBC codec
  1163.  
  1164. $(OH323_OBJDIR)/%.o : $(ILBC_DIR)/%.c
  1165.     @if [ ! -d $(OH323_OBJDIR) ] ; then mkdir -p $(OH323_OBJDIR) ; fi
  1166.     $(CC) $(OPTCCFLAGS) $(CFLAGS) -c $< -o $@
  1167.  
  1168. $(DEPDIR)/%.dep : $(ILBC_DIR)/%.c
  1169.     @if [ ! -d $(DEPDIR) ] ; then mkdir -p $(DEPDIR) ; fi
  1170.     @printf %s $(OH323_OBJDIR)/ > $@
  1171.     $(CC) $(CFLAGS) -M $< >> $@
  1172.  
  1173. # Build rules for the Speex codec
  1174.  
  1175. $(OH323_OBJDIR)/%.o : $(SPEEX_SRCDIR)/%.c
  1176.     @if [ ! -d $(OH323_OBJDIR) ] ; then mkdir -p $(OH323_OBJDIR) ; fi
  1177.     $(CC) $(SPEEX_FLAGS) -I$(SPEEX_INCDIR) $(OPTCCFLAGS) $(CFLAGS) -c $< -o $@
  1178.  
  1179. $(DEPDIR)/%.dep : $(SPEEX_SRCDIR)/%.c
  1180.     @if [ ! -d $(DEPDIR) ] ; then mkdir -p $(DEPDIR) ; fi
  1181.     @printf %s $(OH323_OBJDIR)/ > $@
  1182.     $(CC) $(SPEEX_FLAGS) -I$(SPEEX_INCDIR) $(CFLAGS) -M $< >> $@
  1183.  
  1184.  
  1185. notrace::
  1186.     $(MAKE) NOTRACE=1 opt
  1187.  
  1188.