1 dnl Copyright (C) 2011-2012 Simon Ruderich
3 dnl This program is free software: you can redistribute it and/or modify
4 dnl it under the terms of the GNU General Public License as published by
5 dnl the Free Software Foundation, either version 3 of the License, or
6 dnl (at your option) any later version.
8 dnl This program is distributed in the hope that it will be useful,
9 dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
10 dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 dnl GNU General Public License for more details.
13 dnl You should have received a copy of the GNU General Public License
14 dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
17 AC_INIT([tlsproxy], [0.2], [simon@ruderich.org])
19 AC_CONFIG_AUX_DIR([build-aux])
20 AC_CONFIG_MACRO_DIR([m4])
21 AC_CONFIG_SRCDIR([src/tlsproxy.c])
23 AM_INIT_AUTOMAKE([foreign -Wall -Werror])
27 if test "x$GCC" = xyes; then
28 CFLAGS="-std=c89 -pedantic -Wall -Wextra -Werror $CFLAGS"
29 CFLAGS="-Wno-error=int-to-pointer-cast $CFLAGS"
30 CPPFLAGS="-D_XOPEN_SOURCE=500 $CPPFLAGS"
31 # Additional security flags.
32 CFLAGS="$CFLAGS -Wformat -Wformat-security -Werror=format-security"
33 CFLAGS="$CFLAGS -fstack-protector-all -Wstack-protector"
34 CFLAGS="$CFLAGS --param ssp-buffer-size=1"
35 CFLAGS="$CFLAGS -D_FORTIFY_SOURCE=2 -fPIE"
36 LDFLAGS="$LDFLAGS -Wl,-z,relro -Wl,-z,now -fPIE -pie"
39 AC_CHECK_LIB([pthread], [pthread_create],
40 [], [AC_MSG_ERROR([pthread is required])])
41 AC_CHECK_LIB([gnutls], [gnutls_certificate_verify_peers2],
42 [], [AC_MSG_ERROR([GnuTLS is required])])
44 AC_ARG_ENABLE([debug],
45 [AC_HELP_STRING([--enable-debug], [enable debug output])],
46 [if test "x$enableval" = xyes; then
47 AC_DEFINE([DEBUG], 1, [Define to enable debug output.])
51 [AC_HELP_STRING([--disable-ipv6],
52 [disable IPv6, for IPv4 only network stacks])],
53 [if test "x$enableval" = xno; then
54 AC_DEFINE([USE_IPV4_ONLY], 1, [Define to not use IPv6.])
57 AC_CONFIG_HEADERS([config.h])
58 AC_CONFIG_FILES([Makefile src/Makefile tests/Makefile])