]> jfr.im git - solanum.git/blame - libratbox/configure.ac
Add .travis.yml
[solanum.git] / libratbox / configure.ac
CommitLineData
030272f3 1dnl $Id: configure.ac 26260 2008-12-10 04:08:39Z androsyn $
db137867
AC
2dnl Process this file with autoconf to produce a configure script.
3
4dnl TODO: clean up all the OpenSSL and shared module checking stuff;
5dnl the most major changes have already been made and it looks like
6dnl said functions need to be just about as complex as they already are.
7
030272f3 8AC_PREREQ(2.63)
db137867
AC
9AUTOMAKE_OPTIONS = 1.10
10dnl Sneaky way to get an Id tag into the configure script
030272f3 11AC_COPYRIGHT([$Id: configure.ac 26260 2008-12-10 04:08:39Z androsyn $])
db137867 12AC_INIT([libratbox],[devel])
eec2776c 13AM_INIT_AUTOMAKE([subdir-objects])
c52df125 14AM_SILENT_RULES([yes])
db137867
AC
15
16AM_CONFIG_HEADER(include/libratbox_config.h)
17
18AC_PREFIX_DEFAULT(/usr/local/libratbox)
19AC_GNU_SOURCE
20
21dnl Checks for programs.
22AC_PROG_CC_C99
23
24if test x"$ac_cv_prog_cc_c99" = "xno"; then
25 AC_ERROR([ircd-ratbox requires a C99 capable compiler])
26fi
27
28
29AC_PROG_INSTALL
30AC_PROG_EGREP
31AC_PROG_SED
32
33F77=no
34CXX=no
35GCJ=no
36
37AM_DISABLE_STATIC
38AM_ENABLE_SHARED
39AM_MAINTAINER_MODE
40
41AC_ISC_POSIX
42AC_C_INLINE
43AC_C_CONST
f171dafb 44AC_C_BIGENDIAN
db137867
AC
45AC_PROG_MAKE_SET
46AC_PROG_INSTALL
47AC_PATH_PROG(AUTOMAKE, automake)
48AC_PATH_PROG(ACLOCAL, aclocal)
49AC_PATH_PROG(AUTOHEADER, autoheader)
50AC_PATH_PROG(AS, as)
51AC_PATH_PROG(RM, rm)
52AC_PATH_PROG(CP, cp)
53AC_PATH_PROG(MV, mv)
54AC_PATH_PROG(LN, ln)
db137867
AC
55AC_PATH_PROG(TOUCH, touch)
56AC_LANG(C)
57
58AC_PROG_LIBTOOL
59
60LIBTOOL="$LIBTOOL --silent"
61
db137867
AC
62case "$host_os" in
63*cygwin*)
64 AC_DEFINE_UNQUOTED(CYGWIN,1,[This is a Cygwin system])
65 AC_DEFINE_UNQUOTED(WINDOWS,1,[This is a Windows system])
66 ;;
67*mingw*)
68 AC_DEFINE_UNQUOTED(MINGW,1,[This is a MinGW system])
69 AC_DEFINE_UNQUOTED(WINDOWS,1,[This is a Windows system])
70 AC_CHECK_HEADER(windows.h, , [AC_MSG_ERROR([** MinGW and no windows.h. I give up.])])
71 AC_CHECK_HEADER(winsock2.h, , [AC_MSG_ERROR([** MinGW and no winsock2.h. I give up.])])
3202e249
VY
72 AC_DEFINE_UNQUOTED(HAVE_WINSOCK2_H, 1, [Have WINSOCK2_H])
73 AC_DEFINE_UNQUOTED(HAVE_WINSOCK_H, 1, [Have WINSOCK_H])
db137867
AC
74 LIBS="$LIBS -lws2_32 -liphlpapi"
75 is_mingw="yes"
76 ;;
77*interix*)
78 CPPFLAGS="$CFLAGS -D_ALL_SOURCE -D_XOPEN_SOURCE=500"
79 ;;
030272f3
VY
80*solaris*)
81 CPPFLAGS="$CFLAGS -D_POSIX_PTHREAD_SEMANTICS -D_XPG4_2"
db137867
AC
82 ;;
83*)
84 ;;
85esac
86
87AM_CONDITIONAL([MINGW], [test "$is_mingw" = "yes"])
88
89
90# backwards support for IRC_CFLAGS
3202e249 91CFLAGS="$IRC_CFLAGS $CFLAGS -Wall"
db137867
AC
92
93dnl use directory structure of cached as default (hack)
94if test "$libexecdir" = '${exec_prefix}/libexec' &&
95 test "$localstatedir" = '${prefix}/var'; then
96 libexecdir='${bindir}'
97 localstatedir='${prefix}'
98fi
99
db137867
AC
100AC_TYPE_PID_T
101AC_TYPE_SIZE_T
102AC_TYPE_SSIZE_T
103AC_TYPE_UID_T
104
105
106dnl Checks for header files.
107AC_HEADER_STDC
108
77cb59b3 109AC_CHECK_HEADERS([crypt.h unistd.h sys/socket.h sys/stat.h sys/time.h time.h netinet/in.h arpa/inet.h errno.h sys/uio.h spawn.h sys/poll.h sys/epoll.h sys/select.h sys/devpoll.h sys/event.h port.h signal.h sys/signalfd.h sys/timerfd.h linux/tcp.h])
db137867
AC
110AC_HEADER_TIME
111
112dnl Networking Functions
113dnl ====================
114
115AC_SEARCH_LIBS(socket, [socket],,)
116
117
118AC_CHECK_MEMBER([struct sockaddr.sa_len], [AC_DEFINE(SOCKADDR_IN_HAS_LEN, 1, [Define to 1 if sockaddr has a 'sa_len'
119member.])],,[[
120#ifdef HAVE_SYS_TYPES_H
121#include <sys/types.h>
122#endif
123#ifdef HAVE_SYS_SOCKET_H
124#include <sys/socket.h>
125#endif
126#ifdef HAVE_WINSOCK2_H
127#include <winsock2.h>
128#endif
129]])
130
030272f3 131AC_CHECK_TYPE([socklen_t], rb_cv_socklen_t=socklen_t,[
a9fb3ed0 132 AC_MSG_CHECKING([for socklen_t equivalent])
030272f3 133 AC_CACHE_VAL([rb_cv_socklen_t],
a9fb3ed0
VY
134 [
135 # Systems have either "struct sockaddr *" or
136 # "void *" as the second argument to getpeername
030272f3 137 rb_cv_socklen_t=
a9fb3ed0
VY
138 for arg2 in "struct sockaddr" void; do
139 for t in int size_t unsigned long "unsigned long"; do
140 AC_TRY_COMPILE([
3202e249 141#ifdef HAVE_SYS_TYPES_H
db137867 142#include <sys/types.h>
3202e249
VY
143#endif
144#ifdef HAVE_SYS_SOCKET_H
db137867 145#include <sys/socket.h>
3202e249
VY
146#endif
147#ifdef HAVE_WINSOCK2_H
148#include <winsock2.h>
149#endif
a9fb3ed0
VY
150int getpeername (int, $arg2 *, $t *);
151],[
152$t len;
153getpeername(0,0,&len);
154],[
030272f3 155 rb_cv_socklen_t="$t"
a9fb3ed0 156 break
db137867 157])
a9fb3ed0
VY
158 done
159 done
160
030272f3 161 if test "x$rb_cv_socklen_t" = x; then
3202e249 162 AC_MSG_WARN([Cannot find a type to use in place of socklen_t using int])
030272f3 163 rb_cv_socklen_t=int
a9fb3ed0
VY
164 fi
165 ])
030272f3 166 AC_MSG_RESULT($rb_cv_socklen_t)],
a9fb3ed0
VY
167 [#include <sys/types.h>
168#include <sys/socket.h>])
169
030272f3
VY
170rb_socklen_t=$rb_cv_socklen_t
171
a9fb3ed0
VY
172
173
174
db137867
AC
175
176AC_ARG_ENABLE(ipv6,AC_HELP_STRING([--disable-ipv6],[Disable IPv6 support]),[ipv6=$enableval],[ipv6=yes])
177
178if test x$ipv6 != xyes; then
179 have_v6="no"
180else
181
182have_v6=yes
183RB_PROTO_INET6([], [
184 AC_MSG_NOTICE([Disabling IPv6 support: PF_INET6 not found])
185 have_v6=no
186 ])
187
188 if test "X$have_v6" = "Xyes"; then
189 RB_TYPE_STRUCT_SOCKADDR_IN6([], [
190 AC_MSG_NOTICE([Disabling IPv6 support: struct sockaddr_in6 not found])
191 have_v6=no
192 ])
193 fi
194
195fi
196
197AC_CHECK_TYPES([struct sockaddr_storage],[
198 rb_have_sockaddr_storage=yes
199 ],[], [
200 #include <sys/types.h>
201 #include <sys/socket.h>
202 ])
203
204
db137867
AC
205dnl Check for stdarg.h - if we cant find it, halt configure
206AC_CHECK_HEADER(stdarg.h, , [AC_MSG_ERROR([** stdarg.h could not be found - libratbox will not compile without it **])])
207
208AC_CHECK_TYPE([sa_family_t], [],
209[AC_DEFINE(sa_family_t, [u_int16_t], [If system does not define sa_family_t, define it here.])],
210[[#include <sys/types.h>
211#include <sys/socket.h>]])
212
213
214dnl check for various functions...
3202e249 215AC_CHECK_FUNCS([socketpair gettimeofday writev sendmsg gmtime_r strtok_r usleep posix_spawn strlcpy strlcat strnlen fstat signalfd select poll kevent port_create epoll_ctl arc4random getrusage timerfd_create])
db137867
AC
216
217AC_SEARCH_LIBS(nanosleep, rt posix4, AC_DEFINE(HAVE_NANOSLEEP, 1, [Define if you have nanosleep]))
218AC_SEARCH_LIBS(timer_create, rt, AC_DEFINE(HAVE_TIMER_CREATE, 1, [Define if you have timer_create]))
219RB_CHECK_TIMER_CREATE
3202e249 220RB_CHECK_TIMERFD_CREATE
db137867
AC
221
222AC_FUNC_ALLOCA
223AC_FUNC_VFORK
224AC_FUNC_MMAP
225
226AC_MSG_CHECKING(for /dev/poll)
227if test -c "/dev/poll"; then
228 AC_MSG_RESULT(yes)
229 AC_DEFINE(HAVE_DEVPOLL, [1], [Define to 1 if you have devpoll])
230else
231 AC_MSG_RESULT(no)
232fi
233
234
235if test "$is_mingw" = "yes"; then
236 AC_DEFINE(HAVE_WIN32, [1], [Define to 1 if you are on windows])
237fi
238
239
240dnl OpenSSL support
241AC_MSG_CHECKING(for OpenSSL)
242AC_ARG_ENABLE(openssl,
243[AC_HELP_STRING([--enable-openssl[=DIR]],[Enable OpenSSL support (DIR optional).])
244AC_HELP_STRING([--disable-openssl],[Disable OpenSSL support.])],
245[cf_enable_openssl=$enableval],
246[cf_enable_openssl="auto"])
247
248if test "$cf_enable_openssl" != "no" ; then
249 cf_openssl_basedir=""
250 if test "$cf_enable_openssl" != "auto" &&
251 test "$cf_enable_openssl" != "yes" ; then
252 dnl Support for --enable-openssl=/some/place
253 cf_openssl_basedir="`echo ${cf_enable_openssl} | sed 's/\/$//'`"
254 else
255 dnl Do the auto-probe here. Check some common directory paths.
256 for dirs in /usr/local/ssl /usr/pkg /usr/local \
257 /usr/local/openssl ; do
258 if test -f "${dirs}/include/openssl/opensslv.h" ; then
259 cf_openssl_basedir="${dirs}"
260 break
261 fi
262 done
263 unset dirs
264 fi
265 dnl Now check cf_openssl_found to see if we found anything.
266 if test ! -z "$cf_openssl_basedir"; then
267 if test -f "${cf_openssl_basedir}/include/openssl/opensslv.h" ; then
c2ac22cc 268 SSL_CFLAGS="-I${cf_openssl_basedir}/include"
db137867
AC
269 SSL_LIBS="-L${cf_openssl_basedir}/lib"
270 else
271 dnl OpenSSL wasn't found in the directory specified. Naughty
272 dnl administrator...
273 cf_openssl_basedir=""
274 fi
275 else
276 dnl Check for stock FreeBSD 4.x and 5.x systems, since their files
277 dnl are in /usr/include and /usr/lib. In this case, we don't want to
278 dnl change INCLUDES or LIBS, but still want to enable OpenSSL.
279 dnl We can't do this check above, because some people want two versions
280 dnl of OpenSSL installed (stock FreeBSD 4.x/5.x and /usr/local/ssl)
281 dnl and they want /usr/local/ssl to have preference.
282 if test -f "/usr/include/openssl/opensslv.h" ; then
283 cf_openssl_basedir="/usr"
284 fi
285 fi
286
287 dnl If we have a basedir defined, then everything is okay. Otherwise,
288 dnl we have a problem.
289 if test ! -z "$cf_openssl_basedir"; then
290 AC_MSG_RESULT($cf_openssl_basedir)
291 cf_enable_openssl="yes"
292 else
293 AC_MSG_RESULT([not found. Specify a correct path?])
294 cf_enable_openssl="no"
295 fi
296 unset cf_openssl_basedir
297else
298 dnl If --disable-openssl was specified
299 AC_MSG_RESULT(disabled)
300fi
301
302save_CPPFLAGS="$CPPFLAGS"
c2ac22cc 303CPPFLAGS="$CPPFLAGS $SSL_CFLAGS"
db137867
AC
304save_LIBS="$LIBS"
305LIBS="$LIBS $SSL_LIBS"
306if test "$cf_enable_openssl" != no; then
307 dnl Check OpenSSL version (must be 0.9.7 or above!)
308 AC_MSG_CHECKING(for OpenSSL 0.9.7 or above)
309 AC_RUN_IFELSE(
d5ef3fd3 310 [AC_LANG_PROGRAM(
db137867
AC
311 [#include <openssl/opensslv.h>
312 #include <stdlib.h>],
313 [[if (OPENSSL_VERSION_NUMBER >= 0x00907000)
d5ef3fd3 314 exit(0); else exit(1);]])],
db137867
AC
315 cf_enable_openssl=yes,
316 cf_enable_openssl=no,
317 cf_enable_openssl=no)
318
319 if test "$cf_enable_openssl" != no; then
320 AC_MSG_RESULT(found)
321 else
322 AC_MSG_RESULT(no - OpenSSL support disabled)
323 fi
324
325fi
326
327
328if test "$cf_enable_openssl" != no; then
329 CPPFLAGS="$CPPFLAGS $SSL_LIBS"
330 AC_CHECK_LIB(crypto, RAND_status,
331 [cf_enable_openssl=yes],
332 [cf_enable_openssl=no])
333fi
334
db137867
AC
335if test "$cf_enable_openssl" != no; then
336 CPPFLAGS="$CPPFLAGS $SSL_LIBS"
337 AC_CHECK_LIB(ssl, SSL_read,
3202e249 338 [SSL_LIBS="$SSL_LIBS -lssl -lcrypto"],
db137867
AC
339 [cf_enable_openssl=no], [-lcrypto])
340fi
341
c2ac22cc 342
6f57a957
AC
343dnl mbedTLS support
344AC_ARG_ENABLE(mbedtls,
345[AC_HELP_STRING([--enable-mbedtls], [Enable mbedTLS support.])
346AC_HELP_STRING([--disable-mbedtls], [Disable mbedTLS support.])],
347[cf_enable_mbedtls=$enableval],
348[cf_enable_mbedtls="auto"])
349
350if test "$cf_enable_mbedtls" != no; then
351 save_CPPFLAGS="$CPPFLAGS"
352 save_LIBS="$LIBS"
353 LIBS="$LIBS $MBEDTLS_LIBS"
354 AC_CHECK_LIB(mbedtls, mbedtls_ssl_init, [
355 MBEDTLS_LIBS="$MBEDTLS_LIBS -lmbedtls -lmbedcrypto -lmbedx509"
356 cf_enable_mbedtls=yes
357 ], [cf_enable_mbedtls=no], [-lmbedcrypto -lmbedx509])
358fi
c2ac22cc 359
2bd29df9
AB
360dnl GnuTLS support
361AC_MSG_CHECKING(for GnuTLS)
362AC_ARG_ENABLE(gnutls,
363[AC_HELP_STRING([--enable-gnutls],[Enable GnuTLS support.])
364AC_HELP_STRING([--disable-gnutls],[Disable GnuTLS support.])],
365[cf_enable_gnutls=$enableval],
366[cf_enable_gnutls="auto"])
367
368if test "$cf_enable_gnutls" != no; then
369 PKG_CHECK_MODULES(GNUTLS, [gnutls], [
370 cf_enable_gnutls="yes"
371 ], [cf_enable_gnutls="no"])
372fi
373
6f57a957
AC
374dnl mbed TLS is given highest preference when no specified TLS library is provided
375if test "$cf_enable_openssl" = "auto" -a "$cf_enable_mbedtls" = "yes"; then
376 cf_enable_openssl="no"
377fi
378
379if test "$cf_enable_gnutls" = "auto" -a "$cf_enable_openssl" = "yes" -a "$cf_enable_mbedtls" = "yes"; then
2bd29df9
AB
380 cf_enable_gnutls="no"
381fi
382
c2ac22cc 383if test x"$cf_enable_openssl" != xno; then
db137867 384 AC_DEFINE(HAVE_OPENSSL,1,[Has OpenSSL])
2bd29df9
AB
385 GNUTLS_CFLAGS=""
386 GNUTLS_LIBS=""
6f57a957
AC
387 MBEDTLS_LIBS=""
388 MBEDTLS_CFLAGS=""
c2ac22cc 389 SSL_TYPE="openssl"
6f57a957
AC
390elif test x"$cf_enable_mbedtls" != xno; then
391 AC_DEFINE(HAVE_MBEDTLS, 1, [Has mbedTLS])
392 SSL_LIBS=""
393 SSL_CFLAGS=""
394 GNUTLS_CFLAGS=""
395 GNUTLS_LIBS=""
396 SSL_TYPE="mbedtls"
2bd29df9
AB
397elif test x"$cf_enable_gnutls" != xno; then
398 AC_DEFINE(HAVE_GNUTLS, 1, [Has GnuTLS])
399 SSL_LIBS=""
6f57a957
AC
400 SSL_CFLAGS=""
401 MBEDTLS_LIBS=""
402 MBEDTLS_CFLAGS=""
2bd29df9 403 SSL_TYPE="gnutls"
db137867
AC
404fi
405
406
c2ac22cc
VY
407
408
db137867
AC
409CPPFLAGS="$save_CPPFLAGS"
410LIBS="$save_LIBS"
411
412dnl End OpenSSL detection
413
414
415
416
417dnl Debug-related options
418dnl =====================
419
420AC_ARG_ENABLE(assert,
421AC_HELP_STRING([--enable-assert],[Enable assert(). Choose between soft(warnings) and hard(aborts the daemon)]),
422[assert=$enableval], [assert=no])
423
424if test "$assert" = no; then
425 AC_DEFINE(NDEBUG, 1, [Define this to disable debugging support.])
426elif test "$assert" = soft; then
427 AC_DEFINE(SOFT_ASSERT, 1, [Define this to enable soft asserts.])
428 AC_DEFINE(NDEBUG, 1, [Define this to disable debugging support.])
429elif test "$assert" = yes; then
430 assert = "hard";
431fi
432
433AC_MSG_CHECKING(if you want to do a profile build)
434AC_ARG_ENABLE(profile,
435AC_HELP_STRING([--enable-profile],[Enable profiling]),
436[profile=$enableval], [profile=no])
437
438if test "$profile" = yes; then
439 if test "$ac_cv_c_compiler_gnu" = yes; then
440 CFLAGS="$CFLAGS -pg -static"
441 AC_MSG_RESULT([yes, adding -pg -static])
442 AC_DEFINE(RATBOX_PROFILE, 1, [Defined to mark profiling is enabled])
443 else
444 AC_MSG_RESULT([no, profile builds only work with gcc])
445 fi
446else
447 AC_MSG_RESULT(no)
448fi
449
db137867
AC
450AC_ARG_ENABLE(warnings,
451AC_HELP_STRING([--enable-warnings],[Enable all sorts of warnings for debugging.]),
452[CFLAGS="$CFLAGS -Wall -Werror -Wcast-qual -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wshadow -Wwrite-strings -W -Wno-unused -Wunused-function -Wunused-variable"],[])
453
454AC_SUBST(LDFLAGS)
455AC_SUBST(PICFLAGS)
456AC_SUBST(CFLAGS)
457AC_SUBST(SEDOBJ)
c2ac22cc 458AC_SUBST(SSL_CFLAGS)
db137867 459AC_SUBST(SSL_LIBS)
2bd29df9
AB
460AC_SUBST(GNUTLS_CFLAGS)
461AC_SUBST(GNUTLS_LIBS)
cd492e44
AC
462AC_SUBST(MBEDTLS_CFLAGS)
463AC_SUBST(MBEDTLS_LIBS)
db137867
AC
464
465if test "$prefix" = "NONE"; then
466 AC_DEFINE_UNQUOTED(RB_PREFIX, "$ac_default_prefix", [Prefix where libratbox is installed.])
467
468else
469
470dnl Don't get bitten by Cygwin's stupidity if the user specified
471dnl a custom prefix with a trailing slash
472
473 prefix=`echo $prefix | sed 's/\/$//'`
474 AC_DEFINE_UNQUOTED(RB_PREFIX, "$prefix", [Prefix where libratbox is installed.])
475
476fi
477
478AC_SUBST(RB_PREFIX)
479
db137867
AC
480AC_CONFIG_COMMANDS([include/librb-config.h],
481[
482 outfile=include/librb-config.h.tmp
483 cat > $outfile <<\_______EOF
484/*
485 * librb-config.h: libratbox config file. Please modify configure.ac
486 */
487
488#ifndef __LIBRB_CONFIG_H
489#define __LIBRB_CONFIG_H
490
491_______EOF
492
493if test "x$rb_have_ipv6" = "xyes"; then
494 echo "#define RB_IPV6 1" >> $outfile
495fi
496
497if test "x$rb_windows_h" = "xyes"; then
498 echo '#define WIN32_LEAN_AND_MEAN 1' >> $outfile
499 echo '#include <windows.h>' >> $outfile
500 echo '#include <winsock2.h>' >> $outfile
501 echo '#include <iphlpapi.h>' >> $outfile
502fi
503
504if test "x$rb_alloca_h" = "xyes"; then
505 echo '#define RB_HAVE_ALLOCA_H 1' >> $outfile
506fi
507
508if test "x$rb_header_stdc" = "xyes"; then
509 echo '#include <stdlib.h>' >> $outfile
510 echo '#include <stddef.h>' >> $outfile
511elif test "x$rb_header_stdlib" = "xyes"; then
512 echo '#include <stdlib.h>' >> $outfile
513fi
514
515if test "x$rb_header_string_h" = "xyes"; then
516 echo '#include <string.h>' >> $outfile
517fi
518
519if test "x$rb_stdint_h" = "xyes"; then
520 echo '#include <stdint.h>' >> $outfile
521fi
522
523if test "x$rb_inttypes_h" = "xyes"; then
524 echo '#include <inttypes.h>' >> $outfile
525fi
526
527if test "x$rb_sys_types_h" = "xyes"; then
528 echo '#include <sys/types.h>' >> $outfile
529fi
530if test "x$rb_sys_time_h" = "xyes"; then
531 echo '#include <sys/time.h>' >> $outfile
532fi
533if test "x$rb_sys_stat_h" = "xyes"; then
534 echo '#include <sys/stat.h>' >> $outfile
535fi
536if test "x$rb_time_h" = "xyes"; then
537 echo '#include <time.h>' >> $outfile
538fi
539
540if test "x$rb_sys_socket_h" = "xyes"; then
541 echo '#include <sys/socket.h>' >> $outfile
542fi
543
544if test "x$rb_netinet_in_h" = "xyes"; then
545 echo '#include <netinet/in.h>' >> $outfile
546fi
547
548if test "x$rb_arpa_inet_h" = "xyes"; then
549 echo '#include <arpa/inet.h>' >> $outfile
550fi
551
552if test "x$rb_unistd_h" = "xyes"; then
553 echo '#include <unistd.h>' >> $outfile
554fi
555
556if test "x$rb_crypt_h" = "xyes"; then
557 echo '#include <crypt.h>' >> $outfile
558fi
559
560if test "x$rb_errno_h" = "xyes"; then
561 echo '#include <errno.h>' >> $outfile
562fi
563
a9fb3ed0
VY
564echo "typedef $rb_socklen_t rb_socklen_t;" >> $outfile
565
566
db137867
AC
567if test "x$rb_sockaddr_sa_len" = "xyes"; then
568 echo '#define RB_SOCKADDR_HAS_SA_LEN 1' >> $outfile
569fi
570
db137867
AC
571if test "x$rb_sockaddr_storage" = "xyes"; then
572 echo '#define rb_sockaddr_storage sockaddr_storage' >> $outfile
573else
3202e249 574 echo 'struct rb_sockaddr_storage { uint8_t _padding[[128]]; };' >> $outfile
db137867
AC
575fi
576
577cat >> $outfile <<\_______EOF
578#endif /* __LIBRB_CONFIG_H */
579_______EOF
580
581if cmp -s $outfile include/librb-config.h; then
582 AC_MSG_NOTICE([include/librb-config.h is unchanged])
583 ${rb_rm} -f $outfile
584else
585 ${rb_mv} $outfile include/librb-config.h
586fi
587
588],[
db137867
AC
589 if test x$ac_cv_header_stdc = xyes; then
590 rb_header_stdc=yes
591 fi
592 if test x$ac_cv_header_stdlib_h = xyes; then
593 rb_header_stdlib_h=yes
594 fi
595 if test x$ac_cv_header_string_h = xyes; then
596 rb_header_string_h=yes
597 fi
598 if test x$ac_cv_header_memory_h = xyes; then
599 rb_header_memory_h=yes
600 fi
601 if test "x${ac_cv_working_alloca_h+set}" = xset ; then
602 rb_alloca_h="$ac_cv_working_alloca_h"
603 else
604 rb_alloc_h="$ac_cv_header_alloca_h"
605 fi
606 if test x$ac_cv_member_struct_sockaddr_sa_len = xyes; then
607 rb_sockaddr_sa_len=yes
608 fi
609 if test x$ac_cv_header_sys_socket_h = xyes; then
610 rb_sys_socket_h=yes
611 fi
612 if test x$ac_cv_header_sys_types_h = xyes; then
613 rb_sys_types_h=yes
614 fi
615 if test x$ac_cv_header_sys_stat_h = xyes; then
616 rb_sys_stat_h=yes
617 fi
618 if test x$ac_cv_header_sys_time_h = xyes; then
619 rb_sys_time_h=yes
620 fi
621 if test x$ac_cv_header_time = xyes; then
622 rb_time_h=yes
623 fi
624
625 if test x$ac_cv_header_stdint_h = xyes; then
626 rb_stdint_h=yes
627 fi
628 if test x$ac_cv_header_inttypes_h = xyes; then
629 rb_inttypes_h=yes
630 fi
631 if test x$ac_cv_header_netinet_in_h = xyes; then
632 rb_netinet_in_h=yes
633 fi
634
635 if test x$ac_cv_header_crypt_h = xyes; then
636 rb_crypt_h=yes
637 fi
638 if test x$ac_cv_header_errno_h = xyes; then
639 rb_errno_h=yes
640 fi
641 if test x$ac_cv_header_unistd_h = xyes; then
642 rb_unistd_h=yes
643 fi
644 if test x$ac_cv_header_windows_h = xyes; then
645 rb_windows_h=yes
646 fi
647 if test x$ac_cv_header_winsock2_h = xyes; then
648 rb_winsock2_h=yes
649 fi
a9fb3ed0
VY
650
651 rb_socklen_t=$rb_socklen_t
652
db137867
AC
653 if test "x$rb_have_sockaddr_storage" = "xyes"; then
654 rb_sockaddr_storage="yes"
655 else
656 rb_sockaddr_storage="no"
657 fi
658
659 rb_have_ipv6="$have_v6"
660
661 rb_mv="$MV"
662 rb_rm="$RM"
663
664]
665
666
667)
668
c2ac22cc
VY
669
670AC_CONFIG_FILES( \
671 src/Makefile \
672 Makefile \
030272f3 673 libratbox.pc
c2ac22cc 674)
db137867
AC
675
676AC_OUTPUT
677
678dnl Make it look sexay!
679
680echo
681echo "Compiling $PACKAGE_NAME $PACKAGE_VERSION"
682echo
683
684echo "Installing into: $prefix"
685
686echo "IPv6 support ................... $have_v6"
687echo "Assert debugging ............... $assert"
c2ac22cc 688echo "SSL Type........................ $SSL_TYPE"
db137867
AC
689echo
690