4 # Make file for Open H323 library
6 # Copyright (c) 1998-2000 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 H323 library.
20 # The Initial Developer of the Original Code is Equivalence Pty. Ltd.
22 # Contributor(s): ______________________________________.
25 # Revision 1.20 2006/08/10 04:14:21 csoutheren
26 # Fixed problem with usage of SHAREDLIBEXT
28 # Revision 1.19 2005/08/04 19:31:59 csoutheren
29 # Applied patch #1243078
30 # Fixed links for library when using make install
31 # Thanks to Alain Nakache
33 # Revision 1.18 2004/11/27 18:42:15 rogerhardiman
34 # Use $(MAKE) and not 'make'. Needed for FreeBSD which uses gmake.
36 # Revision 1.17 2004/08/22 04:21:45 csoutheren
37 # Fixed make install to create all target directories
38 # Thanks to Klaus Kaempf
40 # Revision 1.16 2004/06/24 13:20:38 csoutheren
41 # Checked in possible fix for bug 970090
43 # Revision 1.15 2004/06/17 23:17:38 csoutheren
44 # Fixed permissions on install directories as suggested by Al Piszcz
46 # Revision 1.14 2004/05/17 06:08:47 csoutheren
47 # Changed "make docs" to use Doxygen
48 # Added new doc main page and config file
50 # Revision 1.13 2004/05/03 13:01:29 csoutheren
51 # Fixed still more problems in install targets
53 # Revision 1.12 2004/05/03 12:33:54 csoutheren
54 # Changed install target to work on multiple platforms
56 # Revision 1.11 2004/04/29 15:03:00 csoutheren
59 # Revision 1.10 2004/04/29 14:47:55 csoutheren
60 # Reconfigured plugin makefiles per suggestions from Damien Sandras
61 # Changed install targets to use $(INSTALL)
63 # Revision 1.9 2004/04/27 10:18:03 csoutheren
64 # Added plugins to standard builds
66 # Revision 1.8 2004/04/13 23:13:49 csoutheren
67 # Change default build to library only
68 # Added "apps" target for applications
70 # Revision 1.7 2004/02/26 12:08:55 csoutheren
71 # Fixed various problems thanks to Klaus Kaempf
73 # Revision 1.6 2004/02/01 12:24:11 dsandras
74 # Set default target to optshared.
76 # Revision 1.5 2003/09/01 09:38:29 dsandras
77 # Fixed install target thanks to Stefan BrĂ¼ns <lurchi@kawo1.rwth-aachen.de>.
79 # Revision 1.4 2003/08/27 09:39:49 dsandras
80 # Readded DESTDIR support (thanks to Stefan Bruns <lurch@gmx.li>)
82 # Revision 1.3 2003/07/28 19:30:29 dsandras
83 # Do not export the PREFIX as it can give problems to compile other openh323
86 # Revision 1.2 2003/07/28 18:55:49 dsandras
87 # Added --libdir support thanks to Alexander Larsson <alexl@redhat.com>.
89 # Revision 1.1 2003/05/22 12:25:38 dsandras
93 # Revision 1.62 2002/12/04 19:36:30 rogerh
94 # Remove un-needed / in PREFIX
96 # Revision 1.61 2002/11/13 23:52:23 robertj
97 # Added install and uninstall targets, thanks Damien Sandras
99 # Revision 1.60 2002/07/19 01:51:41 robertj
100 # Fixed up directory defaults for openh323 directory.
102 # Revision 1.59 2002/02/11 06:20:07 robertj
103 # Moved version.h to root directory so have one for the library and not just
104 # the sample application. SimpH323 uses the library version so they remain
107 # Revision 1.58 2001/11/11 23:07:52 robertj
108 # Some clean ups after T.38 commit, thanks Adam Lazur
110 # Revision 1.57 2001/11/09 05:39:54 craigs
111 # Added initial T.38 support thanks to Adam Lazur
113 # Revision 1.56 2001/09/14 08:57:39 robertj
114 # Added update target to do cvs update and rebuild all
116 # Revision 1.55 2001/05/17 00:01:06 robertj
117 # Fixed stupid mistake with included make file
119 # Revision 1.54 2001/05/16 07:43:33 robertj
120 # Fixed location of version file
122 # Revision 1.53 2001/05/16 07:42:38 robertj
123 # Changed Makefile to use common stuff, primarily so can go tagbuild
125 # Revision 1.52 2001/03/20 04:08:33 robertj
126 # Major improvement to multiple targets over subdirectories, thanks Jac Goudsmit
128 # Revision 1.51 2000/05/18 11:53:33 robertj
129 # Changes to support doc++ documentation generation.
131 # Revision 1.50 2000/05/11 02:27:52 robertj
132 # Removed "sample" directory and added "samples/simple" for demo app.
134 # Revision 1.49 2000/05/02 04:32:23 robertj
135 # Fixed copyright notice comment.
137 # Revision 1.48 2000/04/26 01:07:23 robertj
138 # Removed tarfile creation target, this is done differently now.
140 # Revision 1.47 2000/04/06 20:10:53 craigs
141 # Added install target
143 # Revision 1.46 2000/03/24 03:17:44 robertj
144 # Directory restructuring.
146 # Revision 1.45 2000/03/08 00:25:09 robertj
147 # Changed check for compile of openphone to be AND not OR.
149 # Revision 1.44 2000/03/03 18:04:01 craigs
150 # Fixed problem with openphone being built when no GUI code installed
152 # Revision 1.43 2000/03/03 12:20:40 robertj
153 # Fixed non fatal error in make rules and allowed for missing sample apps.
155 # Revision 1.42 2000/02/24 11:53:31 craigs
156 # Fixed problem with .o files not going into correct directory
158 # Revision 1.41 2000/02/24 11:17:01 craigs
159 # Fixed problem with making PW projects
161 # Revision 1.40 2000/02/16 12:38:31 craigs
162 # Fixed problem with noshared targets
164 # Revision 1.39 2000/02/04 04:59:31 craigs
165 # Changed for new library make system and makefile layout
167 # Revision 1.38 2000/02/02 04:09:12 craigs
168 # Changed to use subdirectories
170 # Revision 1.35 2000/01/13 04:03:45 robertj
171 # Added video transmission
173 # Revision 1.34 2000/01/04 00:22:28 craigs
174 # Changed directory list
176 # Revision 1.33 1999/12/29 01:27:01 craigs
177 # Added detection of new Linux kernel telephony code
179 # Revision 1.32 1999/12/24 00:27:39 robertj
180 # Added LID abstraction and split RTP classes from H323.
182 # Revision 1.31 1999/12/16 05:48:36 robertj
183 # Fixed problem with correct inclusion of ixj files under Linux.
185 # Revision 1.30 1999/11/19 14:01:41 craigs
186 # Added ixjuser.h to the tarfiles
188 # Revision 1.29 1999/11/19 13:13:40 craigs
189 # Changed to add CVS directories to the tarball
191 # Revision 1.28 1999/11/16 13:45:12 craigs
192 # Fixed dependencies to be SMP friendly
194 # Revision 1.27 1999/11/12 04:51:34 craigs
195 # Fixed problem with excluding IXJ device on Linux
197 # Revision 1.26 1999/11/07 03:43:38 craigs
198 # Added conditional for ixj files for linux only
200 # Revision 1.25 1999/11/02 01:22:26 robertj
201 # Added answering machine
203 # Revision 1.24 1999/10/24 14:43:20 robertj
204 # Added platform independent support for Quicknet xJACK cards.
206 # Revision 1.23 1999/10/11 07:35:03 craigs
207 # Added missing config.h to VIC sources macro
209 # Revision 1.22 1999/09/27 01:22:45 robertj
210 # Added H.261 video support via vic code.
212 # Revision 1.21 1999/09/21 08:33:58 craigs
213 # Added support for VIC video codecs
215 # Revision 1.20 1999/09/09 01:14:49 robertj
216 # Added support for video capabilities & codec, still needs the actual codec itself!
218 # Revision 1.19 1999/09/03 14:05:19 robertj
219 # Fixed creation of tarball
221 # Revision 1.18 1999/08/31 12:43:04 robertj
222 # Added gatekeeper supprt.
224 # Revision 1.17 1999/08/25 07:11:54 robertj
227 # Revision 1.16 1999/08/09 04:51:21 robertj
228 # Added subdirectories to build, including dump323
230 # Revision 1.15 1999/07/31 04:09:11 robertj
231 # Added ability to create binary with no tracing code in it.
233 # Revision 1.14 1999/07/26 09:18:28 craigs
234 # Added README.QUICKNET file to test app
236 # Revision 1.13 1999/07/26 07:22:10 craigs
237 # Added files for quicknet test apps
239 # Revision 1.12 1999/07/10 03:42:26 robertj
240 # Added automatic version inclusion in tar file.
242 # Revision 1.11 1999/06/28 09:48:57 robertj
243 # Fixed dependencies for GSM files
245 # Revision 1.10 1999/06/25 17:51:08 robertj
248 # Revision 1.9 1999/06/25 17:20:18 robertj
249 # New directory structure.
251 # Revision 1.8 1999/06/22 14:40:19 robertj
254 # Revision 1.7 1999/06/14 09:09:36 robertj
255 # Transmit channel and RTP implementation.
257 # Revision 1.6 1999/06/09 06:51:57 robertj
258 # Added tracing to optimised version.
260 # Revision 1.5 1999/06/09 06:18:00 robertj
263 # Revision 1.4 1999/06/07 00:32:41 robertj
264 # Put packet dump code back in
266 # Revision 1.3 1999/06/06 06:06:36 robertj
267 # Changes for new ASN compiler and v2 protocol ASN files.
269 # Revision 1.2 1999/01/16 11:16:53 robertj
272 # Revision 1.1 1999/01/16 10:32:26 robertj
276 PREFIX
=@INSTALLPREFIX@
277 exec_prefix = $(PREFIX
)
279 export OPENH323DIR
=@OPENH323DIR@
285 all :: bothdepend both
287 include $(OPENH323DIR
)/openh323u.mak
290 # export NOAUDIOCODECS=true
291 # export NOVIDEO=true
293 SUBDIRS
:= samples
/simple
295 ifneq (,$(wildcard dump323
))
299 ifneq (,$(wildcard openam
))
303 ifneq (,$(wildcard pstngw
))
307 ifneq (,$(wildcard openphone
))
308 ifneq (,$(wildcard $(PWLIBDIR
)/src
/pwlib
))
313 PREFIX
=@INSTALLPREFIX@
/
314 exec_prefix = ${PREFIX}
325 # standard build command
326 $(subst tagbuild
,,$(STANDARD_TARGETS
)) ::
328 $(MAKE
) -C plugins
$@
330 # Pass through commands to the subdirectory for sample app
332 set
-e
; $(foreach dir,$(SUBDIRS
),$(MAKE
) -C
$(dir) opt
)
335 $(MAKE
) NOTRACE
=1 opt
338 doxygen openh323_cfg.dxy
341 mkdir
-p
$(DESTDIR
)$(LIBDIR
)
342 rm -f
$(DESTDIR
)$(LIBDIR
)/libh323_
*_r.so
*
343 $(INSTALL
) -m
444 lib
/$(OH323_FILE
).@MAJOR_VERSION@.@MINOR_VERSION@.@BUILD_NUMBER@
$(DESTDIR
)$(LIBDIR
)
344 (cd
$(DESTDIR
)$(LIBDIR
) ; \
345 rm -f
$(OH323_FILE
).@MAJOR_VERSION@.@MINOR_VERSION@
; \
346 ln
-sf
$(OH323_FILE
).@MAJOR_VERSION@.@MINOR_VERSION@.@BUILD_NUMBER@
$(OH323_FILE
).@MAJOR_VERSION@.@MINOR_VERSION@ \
348 (cd
$(DESTDIR
)$(LIBDIR
) ; \
349 rm -f
$(OH323_FILE
).@MAJOR_VERSION@
; \
350 ln
-sf
$(OH323_FILE
).@MAJOR_VERSION@.@MINOR_VERSION@.@BUILD_NUMBER@
$(OH323_FILE
).@MAJOR_VERSION@ \
352 (cd
$(DESTDIR
)$(LIBDIR
) ; \
353 rm -f
$(OH323_FILE
) ; \
354 ln
-sf
$(OH323_FILE
).@MAJOR_VERSION@.@MINOR_VERSION@.@BUILD_NUMBER@
$(OH323_FILE
) \
356 (cd
$(DESTDIR
)$(LIBDIR
); \
357 rm -f libopenh323.
$(SHAREDLIBEXT
) ; \
358 ln
-sf
$(OH323_FILE
) libopenh323.
$(SHAREDLIBEXT
) \
360 ( for
dir in
$(DESTDIR
)$(LIBDIR
) \
361 $(DESTDIR
)$(PREFIX
)/include/openh323 \
362 $(DESTDIR
)$(PREFIX
)/share
/openh323
;\
363 do mkdir
-p
$$dir ; chmod
755 $$dir ; \
365 ( for fn in
include/*.h
; do \
366 $(INSTALL
) -m
444 $$fn $(DESTDIR
)$(PREFIX
)/include/openh323
; \
368 $(INSTALL
) -m
444 openh323u.mak
$(DESTDIR
)$(PREFIX
)/share
/openh323
369 (cd plugins
; $(MAKE
) install)
372 rm -rf
$(DESTDIR
)$(PREFIX
)/include/openh323 \
373 $(PREFIX
)/share
/openh323
374 rm -f
$(DESTDIR
)$(LIBDIR
)/$(OH323_FILE
) \
375 $(DESTDIR
)$(LIBDIR
)/libopenh323.so
376 (cd plugins
; $(MAKE
) uninstall)