forked from sctp/lksctp-tools
-
Notifications
You must be signed in to change notification settings - Fork 0
/
configure.ac
144 lines (121 loc) · 4.19 KB
/
configure.ac
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
dnl -*-autoconf-*-
dnl lksctp-tools: Autoconf script
dnl
dnl $Id: configure.in,v 1.1.1.2 2002/08/06 23:55:45 inaky Exp $
dnl (C) 2002 Intel Corporation
dnl Iñaky Pérez-González <[email protected]>
dnl - Initial packaging
dnl Package info
dnl (CONFIG_AUX_DIR is for putting stuff in $TOPSRCDIR/bin, so we
dnl reduce clutter in the root; if we put it below AM_INIT_AUTOMAKE,
dnl configure will fail ...)
AC_INIT([lksctp-tools], [1.0.21], [], [], [http://www.lksctp.org/])
AC_SUBST(LIBSCTP_CURRENT, 1)
AC_SUBST(LIBSCTP_REVISION, 21)
AC_SUBST(LIBSCTP_AGE, 0)
AC_SUBST(LIBWITHSCTP_CURRENT, 1)
AC_SUBST(LIBWITHSCTP_REVISION, 21)
AC_SUBST(LIBWITHSCTP_AGE, 0)
AC_CONFIG_AUX_DIR(bin)
AC_CONFIG_SRCDIR([src/apps/sctp_darn.c])
AC_CONFIG_HEADERS([config.h])
AC_CONFIG_MACRO_DIR([m4])
AC_REVISION($Revision: 1.1.1.2 $)
AM_INIT_AUTOMAKE
m4_ifndef([AM_SILENT_RULES], [m4_define([AM_SILENT_RULES],[])])
AM_SILENT_RULES([yes])
dnl Set defaults
dnl CFLAGS="$CFLAGS -g -Wall"
dnl Checks for programs.
AC_PROG_AWK
AC_PROG_CC
AC_PROG_INSTALL
AC_PROG_LN_S
AC_ISC_POSIX
dnl Checks for libraries.
AC_LIBTOOL_DLOPEN
AC_PROG_LIBTOOL
AC_SUBST(LIBTOOL_DEPS)
dnl Checks for header files.
AC_HEADER_STDC
AC_HEADER_SYS_WAIT
AC_CHECK_HEADERS([arpa/inet.h fcntl.h malloc.h netdb.h netinet/in.h stdint.h \
stdlib.h string.h sys/ioctl.h sys/param.h sys/socket.h \
sys/time.h unistd.h])
AC_CHECK_HEADERS([linux/sctp.h], [], [], [AC_INCLUDES_DEFAULT
#ifdef HAVE_STDINT_H
# include <stdint.h>
#endif
#ifdef HAVE_SYS_SOCKET_H
# include <sys/socket.h>
#endif
])
dnl Checks for typedefs, structures, and compiler characteristics.
AC_C_CONST
AC_C_INLINE
AC_TYPE_SIZE_T
AC_HEADER_TIME
AC_STRUCT_TM
AC_C_VOLATILE
# Checks for library functions.
AC_FUNC_MALLOC
AC_FUNC_MEMCMP
AC_FUNC_REALLOC
AC_FUNC_SELECT_ARGTYPES
AC_FUNC_SETVBUF_REVERSED
AC_FUNC_VPRINTF
AC_CHECK_FUNCS([bzero getaddrinfo gettimeofday memmove memset select socket \
strchr strerror strtol strtoul])
# Support for stream reset even, added on v4.11, 35ea82d611da
LKSCTP_CHECK_MEMBER([struct sctp_event_subscribe.sctp_stream_reset_event],
[HAVE_SCTP_STREAM_RESET_EVENT])
# RFC 6525 (Stream Reconf), finished on v4.12, c0d8bab6ae51
LKSCTP_CHECK_DECL([SCTP_RECONFIG_SUPPORTED], [HAVE_SCTP_STREAM_RECONFIG])
# sctp_peeloff_flags was added on v4.13, 2cb5c8e378d1
LKSCTP_CHECK_TYPE([sctp_peeloff_flags_arg_t], [HAVE_SCTP_PEELOFF_FLAGS])
# New members to sctp_pdapi_event, added on v4.16, 65f5e357839e
LKSCTP_CHECK_MEMBER([struct sctp_pdapi_event.pdapi_stream],
[HAVE_SCTP_PDAPI_EVENT_PDAPI_STREAM])
LKSCTP_CHECK_MEMBER([struct sctp_pdapi_event.pdapi_seq],
[HAVE_SCTP_PDAPI_EVENT_PDAPI_SEQ])
# PR-SCTP struct used to probe for sendv/recvv support, added on v4.17
LKSCTP_CHECK_TYPE([struct sctp_prinfo], [HAVE_SCTP_SENDV])
# This event indicates that the peer does not support SCTP authentication,
# added on v4.16, 30f6ebf65bc4
LKSCTP_CHECK_DECL([SCTP_AUTH_NO_AUTH], [HAVE_SCTP_AUTH_NO_AUTH])
# New members to sctp_paddrparams, added on v4.19, 0b0dce7a36fb
LKSCTP_CHECK_MEMBER([struct sctp_paddrparams.spp_ipv6_flowlabel],
[HAVE_SCTP_SPP_IPV6_FLOWLABEL])
LKSCTP_CHECK_MEMBER([struct sctp_paddrparams.spp_dscp],
[HAVE_SCTP_SPP_DSCP])
# RFC 8260 (Message Interleaving)
LKSCTP_CHECK_DECL([SCTP_FRAGMENT_INTERLEAVE], [HAVE_SCTP_FRAGMENT_INTERLEAVE])
AC_CONFIG_HEADERS([src/include/netinet/sctp.h])
AC_CONFIG_FILES([lksctp-tools.spec
Makefile
bin/Makefile
man/Makefile
src/Makefile
src/apps/Makefile
src/func_tests/Makefile
src/include/Makefile
src/include/netinet/Makefile
src/lib/Makefile
src/testlib/Makefile
src/withsctp/Makefile
doc/Makefile
libsctp.pc])
# Build options
AC_ARG_ENABLE(tests,
AS_HELP_STRING([--disable-tests],
[Build tests (default: yes)]),,
[enable_tests=yes])
AM_CONDITIONAL(BUILD_TESTS, [test $enable_tests != no])
# GCC tries to be "helpful" and only issue a warning for unrecognized
# attributes. So we compile the test with Werror, so that if the
# attribute is not recognized the compilation fails
AC_LANG(C)
AC_LANG_WERROR
AC_COMPILE_IFELSE([AC_LANG_SOURCE([[__attribute__ ((symver ("foo@foo_1"))) void frob (void) { }]])],
[AC_DEFINE([HAVE_ATTRIBUTE_SYMVER], [1], [Checking for symver attribute])], [])
AC_OUTPUT