/[mcrypt]/libmcrypt/configure.in
ViewVC logotype

Contents of /libmcrypt/configure.in

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.51 - (show annotations)
Tue Dec 17 08:32:01 2002 UTC (21 years, 3 months ago) by nmav
Branch: MAIN
Changes since 1.50: +61 -35 lines
ade the default behaviour to include all algorithms into
the main library, instead of using dynamic modules. Dynamic
loading is disabled by default.

1 dnl Process this file with autoconf to produce a configure script.
2 AC_PREREQ(2.50)
3 AC_INIT(lib/mcrypt.c)
4
5 LIBMCRYPT_MAJOR_VERSION=2
6 LIBMCRYPT_MINOR_VERSION=5
7 LIBMCRYPT_MICRO_VERSION=4
8 LIBMCRYPT_VERSION=$LIBMCRYPT_MAJOR_VERSION.$LIBMCRYPT_MINOR_VERSION.$LIBMCRYPT_MICRO_VERSION
9
10 LIBMCRYPT_MOST_RECENT_INTERFACE=7
11 LIBMCRYPT_CURRENT_INTERFACE_IMPLEMENTATION_NUMBER=$LIBMCRYPT_MICRO_VERSION
12 LIBMCRYPT_OLDEST_INTERFACE=4
13
14 AC_CANONICAL_SYSTEM
15 AM_INIT_AUTOMAKE(libmcrypt, $LIBMCRYPT_VERSION)
16 AM_CONFIG_HEADER(config.h)
17
18 dnl AM_MAINTAINER_MODE
19
20 AC_PROG_MAKE_SET
21
22 AC_PROG_CC
23
24 case "$host_os" in
25 *w32*)
26 LDFLAGS="$LDFLAGS -no-undefined"
27 AC_DEFINE( WIN32, 1, [whether win32 environment])
28 ;;
29 *win32*)
30 LDFLAGS="$LDFLAGS -no-undefined"
31 AC_DEFINE( WIN32, 1, [whether win32 environment])
32 ;;
33 cygwin*)
34 LDFLAGS="$LDFLAGS -no-undefined"
35 AC_DEFINE( WIN32, 1, [whether win32 environment])
36 ;;
37 esac
38
39 dnl Checks for programs.
40 AC_PROG_INSTALL
41 AC_PROG_LN_S
42
43
44 opt_maintainer_mode=no
45 AC_MSG_CHECKING([whether in maintanance mode])
46 AC_ARG_ENABLE(maintainer-mode,
47 [ --enable-maintainer-mode enable maintainer mode],
48 opt_maintainer_mode=$enableval)
49 AC_MSG_RESULT($opt_maintainer_mode)
50
51 opt_dmalloc_mode=no
52 AC_MSG_CHECKING([whether in dmalloc mode])
53 AC_ARG_ENABLE(dmalloc-mode,
54 [ --enable-dmalloc-mode enable dmalloc mode],
55 opt_dmalloc_mode=$enableval)
56 AC_MSG_RESULT($opt_dmalloc_mode)
57
58
59 if test x$ac_cv_prog_gcc = xyes; then
60 if test x$opt_maintainer_mode = xyes; then
61 CFLAGS=" -ggdb3 -O2 -Wall -Wpointer-arith"
62 fi
63
64 if test x$opt_dmalloc_mode = xyes; then
65 AC_CHECK_LIB( dmalloc, main)
66 AC_DEFINE(USE_DMALLOC, 1, [dmalloc])
67 fi
68 fi
69
70 opt_disable_ltdl=yes
71 AC_MSG_CHECKING([whether to enable dynamic module loading])
72 AC_ARG_ENABLE(dynamic-loading,
73 [ --enable-dynamic-loading enable dynamic module loading],
74 opt_disable_ltdl=no)
75 AC_MSG_RESULT($opt_disable_ltdl)
76
77 MCRYPT_MODE_MODULES="cbc cfb ctr ecb ncfb nofb ofb stream"
78 MCRYPT_ALGORITHM_MODULES="3-way cast-128 gost rijndael-128 safer64 twofish \
79 arcfour cast-256 loki97 rijndael-192 saferplus wake \
80 blowfish-compat des panama rijndael-256 serpent xtea \
81 blowfish enigma rc2 safer128 tripledes"
82
83
84 if test "x$opt_disable_ltdl" = xno; then
85
86 AC_CHECK_LIB( ltdl, lt_dlmutex_register, ,AC_DEFINE(NO_DLMUTEX, 1, [dlmutex]))
87
88 dnl AC_LIBLTDL_CONVENIENCE
89 AC_LIBLTDL_INSTALLABLE
90 AC_SUBST(INCLTDL)
91 AC_SUBST(LIBLTDL)
92 LIBLTDL_DIR=libltdl
93 AC_SUBST(LIBLTDL_DIR)
94
95 dnl AC_DISABLE_STATIC
96
97 AC_CONFIG_SUBDIRS(libltdl)
98
99 AC_DEFINE(USE_LTDL, 1, [use libltdl])
100
101
102 if test x$LIBLTDL = x; then
103 :
104 else
105 LTLIBS="-lltdl"
106 fi
107 opt_include_algos=no
108
109 # create the names of the .la libraries to install
110 for i in $MCRYPT_ALGORITHM_MODULES
111 do \
112 INSTALL_ALGORITHM_MODULES="$INSTALL_ALGORITHM_MODULES $i.la"
113 done
114
115 for i in $MCRYPT_MODE_MODULES
116 do \
117 INSTALL_MODE_MODULES="$INSTALL_MODE_MODULES $i.la"
118 done
119
120 AC_SUBST(INSTALL_ALGORITHM_MODULES)
121 AC_SUBST(INSTALL_MODE_MODULES)
122
123 else
124 opt_include_algos="$MCRYPT_MODE_MODULES $MCRYPT_ALGORITHM_MODULES"
125 echo "***"
126 echo "*** Dynamic loading has been disabled"
127 fi
128
129 AC_MSG_CHECKING([which algorithms to include into library])
130 AC_ARG_WITH(included-algos,
131 [ --with-included-algos=algo1,algo2,... include algorithms/modes into the library],
132 opt_include_algos=$withval)
133
134 if test "x$opt_include_algos" = xyes; then
135 opt_include_algos=""
136 fi
137 if test "x$opt_include_algos" = xno; then
138 opt_include_algos=""
139 fi
140
141
142 EXTRA_OBJECTS=""
143 ALG=`echo -n $opt_include_algos|sed "s/,/ /g"|sed "s/\n/ /g"`
144 for i in $ALG
145 do \
146 test -f modules/algorithms/$i.c && EXTRA_OBJECTS="$EXTRA_OBJECTS ../modules/algorithms/$i.lo"
147 test -f modules/modes/$i.c && EXTRA_OBJECTS="$EXTRA_OBJECTS ../modules/modes/$i.lo"
148 done
149
150 AC_MSG_RESULT($opt_include_algos)
151
152
153 EXTRA_ALGOS=$ALG
154 AC_SUBST(EXTRA_ALGOS)
155 AC_SUBST(EXTRA_OBJECTS)
156
157 AC_SUBST(LIBMCRYPT_MAJOR_VERSION)
158 AC_SUBST(LIBMCRYPT_MINOR_VERSION)
159 AC_SUBST(LIBMCRYPT_MICRO_VERSION)
160 AC_SUBST(LIBMCRYPT_VERSION)
161
162 AC_SUBST(LIBMCRYPT_MOST_RECENT_INTERFACE)
163 AC_SUBST(LIBMCRYPT_CURRENT_INTERFACE_IMPLEMENTATION_NUMBER)
164 AC_SUBST(LIBMCRYPT_OLDEST_INTERFACE)
165
166 LT_CURRENT=$LIBMCRYPT_MOST_RECENT_INTERFACE
167 LT_REVISION=$LIBMCRYPT_CURRENT_INTERFACE_IMPLEMENTATION_NUMBER
168 LT_AGE=`expr $LIBMCRYPT_MOST_RECENT_INTERFACE - $LIBMCRYPT_OLDEST_INTERFACE`
169 AC_SUBST(LT_CURRENT)
170 AC_SUBST(LT_REVISION)
171 AC_SUBST(LT_AGE)
172
173 AC_HEADER_STDC
174 AC_C_INLINE
175 AC_C_CONST
176
177 AC_CHECK_HEADERS(unistd.h strings.h dlfcn.h sys/endian.h)
178 AC_CHECK_HEADERS(sys/types.h sys/mman.h dirent.h byteswap.h endian.h)
179 AC_CHECK_HEADERS(limits.h)
180 AC_CHECK_FUNCS(bzero memset mlock readdir_r readdir,,)
181 AC_CHECK_FUNCS(memmove bcopy,,)
182
183 dnl Checks for libraries.
184 AC_C_BIGENDIAN
185 AC_CHECK_SIZEOF(unsigned long int, 4)
186 AC_CHECK_SIZEOF(unsigned int, 4)
187 AC_CHECK_SIZEOF(unsigned short int, 2)
188 AC_CHECK_SIZEOF(unsigned char, 1)
189
190 AC_LIBTOOL_DLOPEN
191 AC_LIBTOOL_WIN32_DLL
192
193
194
195 AM_PROG_LIBTOOL
196 AC_SUBST(LIBTOOL_DEPS)
197
198
199 LIBMCRYPT_LIBS="$LIBS -L${libdir} -lmcrypt $LTLIBS"
200 LIBMCRYPT_CFLAGS="-I${includedir}"
201 AC_SUBST(LIBMCRYPT_LIBS)
202 AC_SUBST(LIBMCRYPT_CFLAGS)
203
204 AC_OUTPUT_COMMANDS([
205 chmod +x lib/libmcrypt-config
206 ])
207
208 AC_OUTPUT([Makefile libmcrypt.spec lib/Makefile doc/Makefile src/Makefile modules/Makefile modules/modes/Makefile modules/algorithms/Makefile lib/mcrypt.h lib/libmcrypt-config])

webmaster@linux.gr
ViewVC Help
Powered by ViewVC 1.1.26