forked from yandex/NwSMTP
-
Notifications
You must be signed in to change notification settings - Fork 0
/
configure.in
116 lines (97 loc) · 2.92 KB
/
configure.in
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
# -*- Autoconf -*-
# Process this file with autoconf to produce a configure script.
AC_PREREQ(2.59)
AC_INIT([nwsmtp],[0.0.1],[khanton@yandex.ru])
AM_INIT_AUTOMAKE
AC_CONFIG_SRCDIR([src/main.cpp])
AC_CONFIG_HEADER([config.h])
AM_MAINTAINER_MODE
m4_include([m4/acx_pthread.m4])
m4_include([m4/ax_cxx_check_lib.m4])
m4_include([m4/ax_boost_base.m4])
m4_include([m4/ax_boost_thread.m4])
m4_include([m4/ax_boost_system.m4])
m4_include([m4/ax_boost_program_options.m4])
m4_include([m4/ax_lib_expat.m4])
AC_ARG_ENABLE([blackbox],
AS_HELP_STRING([--enable-blackbox], [use blackbox (default is disabled)]),
[
if test "x$enable_blackbox" = "xno"; then
want_blackbox="no"
else
want_blackbox="yes"
fi
],
[
want_blackbox="no"
]
)
if test "$want_blackbox" = yes; then
AC_MSG_NOTICE([will use Blackbox Auth])
AC_DEFINE([ENABLE_AUTH_BLACKBOX], [1], [Define if we want to use Blackbox for user authorization])
fi
# Checks for programs.
AC_PROG_LIBTOOL
AC_PROG_CC
AC_PROG_CXX
AC_PROG_INSTALL
AC_PROG_LN_S
AC_PROG_MAKE_SET
# Checks for libraries.
AX_LIB_EXPAT
ACX_PTHREAD
AX_BOOST_BASE(1.42)
AX_BOOST_SYSTEM
AX_BOOST_THREAD
AX_BOOST_PROGRAM_OPTIONS
AC_CHECK_LIB([spf2], [SPF_realloc])
AC_CHECK_LIB(opendkim, dkim_set_key_lookup)
PKG_CHECK_MODULES([protobuf], [protobuf])
# Checks for header files.
AC_HEADER_STDC
AC_CHECK_HEADERS([arpa/inet.h netinet/in.h stdlib.h sys/socket.h sys/time.h syslog.h unistd.h memory.h netdb.h stdlib.h string.h])
AC_FUNC_ERROR_AT_LINE
AC_FUNC_MALLOC
AC_CHECK_FUNCS([gethostname memset socket strcasecmp strdup strncasecmp])
AC_ARG_WITH([pa],
AS_HELP_STRING([--with-pa], [use profile analyzer. Default: no]))
AS_IF([test "x$with_pa" = "xyes"],
[
AC_LANG_PUSH(C++)
AC_CHECK_HEADERS([pa/async.h],[have_pa=yes],[have_pa=no])
AC_LANG_POP(C++)
AS_IF([ test "x$have_pa" = "xno" ],
[
AC_MSG_ERROR([performance analizer not found])
]
)
]
)
AC_ARG_WITH([hostsearch],
AS_HELP_STRING([--with-hostsearch], [use libhostsearch analyzer. Default: no]))
AS_IF([test "x$with_hostsearch" = "xyes"],
[
AC_LANG_PUSH(C++)
AC_CHECK_HEADERS([hostsearch/hostsearch.h],[have_hostsearch=yes],[have_hostsearch=no])
AC_LANG_POP(C++)
AC_CHECK_LIB(hostsearch, bbUrls2)
AS_IF([ test "x$have_hostsearch" = "xno" ],
[
AC_MSG_ERROR([libhostsearch not found])
]
)
]
)
# Checks for typedefs, structures, and compiler characteristics.
AC_HEADER_STDBOOL
AC_C_CONST
AC_STRUCT_TM
# Checks for library functions.
AC_FUNC_ERROR_AT_LINE
AC_FUNC_LSTAT
AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK
AC_FUNC_MKTIME
AC_FUNC_STRFTIME
AC_CHECK_FUNCS([memset socket strcasecmp strdup strncasecmp endgrent endpwent memset socket strcasecmp strchr strerror strncasecmp])
AC_CONFIG_FILES([Makefile src/Makefile src/tests/Makefile etc/Makefile])
AC_OUTPUT