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