5 # Author: Pekka Riikonen <priikone@silcnet.org>
7 # Copyright (C) 2005, 2007 Pekka Riikonen
9 # This program is free software; you can redistribute it and/or modify
10 # it under the terms of the GNU General Public License as published by
11 # the Free Software Foundation; version 2 of the License.
13 # This program is distributed in the hope that it will be useful,
14 # but WITHOUT ANY WARRANTY; without even the implied warranty of
15 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 # GNU General Public License for more details.
19 if test x$compile_libs = xtrue; then
22 ## Will compile included libs
24 AC_MSG_NOTICE([Configuring SILC libraries])
26 # SILC Library directories
27 SILC_LIB_INCLUDES="$SILC_LIB_INCLUDES -I$SILC_TOP_SRCDIR/lib/contrib"
28 SILC_LIB_INCLUDES="$SILC_LIB_INCLUDES -I$SILC_TOP_SRCDIR/lib/silccore"
29 SILC_LIB_INCLUDES="$SILC_LIB_INCLUDES -I$SILC_TOP_SRCDIR/lib/silccrypt"
31 SILC_LIB_INCLUDES="$SILC_LIB_INCLUDES -I$SILC_TOP_SRCDIR/lib/silcmath"
33 SILC_LIB_INCLUDES="$SILC_LIB_INCLUDES -I$SILC_TOP_SRCDIR/lib/silcutil"
34 SILC_LIB_INCLUDES="$SILC_LIB_INCLUDES -I$SILC_TOP_SRCDIR/lib/silcapputil"
35 SILC_LIB_INCLUDES="$SILC_LIB_INCLUDES -I$SILC_TOP_SRCDIR/lib/silcske"
37 SILC_LIB_INCLUDES="$SILC_LIB_INCLUDES -I$SILC_TOP_SRCDIR/lib/silcsftp"
40 SILC_LIB_INCLUDES="$SILC_LIB_INCLUDES -I$SILC_TOP_SRCDIR/lib/silcsim"
42 #ifdef SILC_DIST_CLIENTLIB
43 SILC_LIB_INCLUDES="$SILC_LIB_INCLUDES -I$SILC_TOP_SRCDIR/lib/silcclient"
44 #endif SILC_DIST_CLIENTLIB
46 SILC_LIB_INCLUDES="$SILC_LIB_INCLUDES -I$SILC_TOP_SRCDIR/lib/silcasn1"
49 SILC_LIB_INCLUDES="$SILC_LIB_INCLUDES -I$SILC_TOP_SRCDIR/lib/silcskr"
51 #ifdef SILC_DIST_SERVERLIB
52 SILC_LIB_INCLUDES="$SILC_LIB_INCLUDES -I$SILC_TOP_SRCDIR/lib/silcserver"
53 #endif SILC_DIST_SERVERLIB
55 SILC_LIB_INCLUDES="$SILC_LIB_INCLUDES -I$SILC_TOP_SRCDIR/lib/silchttp"
57 #ifdef SILC_DIST_VCARD
58 SILC_LIB_INCLUDES="$SILC_LIB_INCLUDES -I$SILC_TOP_SRCDIR/lib/silcvcard"
59 #endif SILC_DIST_VCARD
62 ## Library versioning.
64 # Do the releases and library versioning according to following rules:
66 # - If any code has changed in library, increment [LIB]_REVISION
67 # - If functions were added, removed or changed, set [LIB]_REVISION to 0
68 # - If functions were added, removed or changed, increment [LIB]_CURRENT
69 # - If functions were added, increment [LIB]_AGE
70 # - If functions were removed, set [LIB]_AGE to 0
72 # where [LIB] is LIBSILC, LIBSILCCLIENT or LIBSILCSERVER, and where
73 # "functions" means functions public interfaces (API).
75 # The LIB_BASE_VERSION defines the SILC software major.minor version and
76 # it is increment only when these version numbers actually change.
79 # Base version for libraries. Do not change this unless SILC version
84 LIBSILC_CURRENT=1 # prev = 0
85 LIBSILC_REVISION=0 # prev = 0
86 LIBSILC_AGE=0 # prev = 0
88 # libsilcclient versions
89 LIBSILCCLIENT_CURRENT=1 # prev = 0
90 LIBSILCCLIENT_REVISION=0 # prev = 0
91 LIBSILCCLIENT_AGE=0 # prev = 0
93 # libsilcserver versions
94 LIBSILCSERVER_CURRENT=1 # prev = 0
95 LIBSILCSERVER_REVISION=0 # prev = 0
96 LIBSILCSERVER_AGE=0 # prev = 0
98 # Substitute the version numbers
99 AC_SUBST(LIB_BASE_VERSION)
100 AC_SUBST(LIBSILC_CURRENT)
101 AC_SUBST(LIBSILC_REVISION)
102 AC_SUBST(LIBSILC_AGE)
103 AC_SUBST(LIBSILCCLIENT_CURRENT)
104 AC_SUBST(LIBSILCCLIENT_REVISION)
105 AC_SUBST(LIBSILCCLIENT_AGE)
106 AC_SUBST(LIBSILCSERVER_CURRENT)
107 AC_SUBST(LIBSILCSERVER_REVISION)
108 AC_SUBST(LIBSILCSERVER_AGE)
110 # Check for big-endian machines
114 # SIM modules directory
116 MODULESDIR="$silc_prefix/modules"
118 [[ --with-simdir=DIR directory for SIM modules [PREFIX/modules]]],
124 MODULESDIR="$withval"
129 AC_DEFINE_UNQUOTED([SILC_MODULESDIR], "$MODULESDIR", [SILC_MODULESDIR])
132 #ifdef SILC_DIST_TOOLKIT
133 # Stack trace checking
135 AC_MSG_CHECKING(whether to enable stack tracing)
136 AC_ARG_ENABLE(stack-trace,
137 [ --enable-stack-trace enable memory stack trace],
139 case "${enableval}" in
142 AC_DEFINE([SILC_STACKTRACE], [], [SILC_STACKTRACE])
151 #endif SILC_DIST_TOOLKIT
153 #ifdef SILC_DIST_INPLACE
155 # Profiling options (never delivered to distributions)
157 AC_MSG_CHECKING(whether to enable gprof)
159 [ --enable-gprof enable gprof profiling],
161 case "${enableval}" in
176 AC_MSG_CHECKING(whether to enable gcov)
178 [ --enable-gcov enable gcov],
180 case "${enableval}" in
183 SILC_ADD_CFLAGS(-fprofile-arcs)
194 #endif SILC_DIST_INPLACE
202 lib/silccore/Makefile
207 lib/silcutil/Makefile
208 lib/silcutil/unix/Makefile
209 lib/silcutil/win32/Makefile
210 lib/silcutil/beos/Makefile
211 lib/silcutil/os2/Makefile
212 lib/silcapputil/Makefile
213 #ifdef SILC_DIST_SFTP
214 lib/silcsftp/Makefile
215 #endif SILC_DIST_SFTP
216 #ifdef SILC_DIST_INPLACE
217 lib/silcutil/tests/Makefile
218 lib/silccore/tests/Makefile
219 lib/silcsftp/tests/Makefile
220 #endif SILC_DIST_INPLACE
223 #ifdef SILC_DIST_TOOLKIT
229 #endif SILC_DIST_TOOLKIT
231 #ifdef SILC_DIST_CLIENTLIB
233 lib/silcclient/Makefile
234 lib/silcclient/tests/Makefile
236 #endif SILC_DIST_CLIENTLIB
238 #ifdef SILC_DIST_SERVERLIB
240 lib/silcserver/Makefile
241 lib/silcserver/tests/Makefile
243 #endif SILC_DIST_SERVERLIB
245 #ifdef SILC_DIST_ASN1
247 lib/silcasn1/Makefile
248 #ifdef SILC_DIST_INPLACE
249 lib/silcasn1/tests/Makefile
250 #endif SILC_DIST_INPLACE
252 #endif SILC_DIST_ASN1
257 #ifdef SILC_DIST_INPLACE
258 lib/silcskr/tests/Makefile
259 #endif SILC_DIST_INPLACE
263 #ifdef SILC_DIST_HTTP
265 lib/silchttp/Makefile
266 lib/silchttp/tests/Makefile
268 #endif SILC_DIST_HTTP
270 #ifdef SILC_DIST_VCARD
272 lib/silcvcard/Makefile
274 #endif SILC_DIST_VCARD