Add a GNUTLS-based GTlsBackend
[platform/upstream/glib-networking.git] / configure.ac
1 AC_PREREQ(2.65)
2 AC_CONFIG_MACRO_DIR([m4])
3
4 AC_INIT([glib-networking],[2.26.0],[http://bugzilla.gnome.org/enter_bug.cgi?product=glib&component=network])
5
6 AC_CONFIG_SRCDIR([proxy/libproxy/glibproxyresolver.h])
7 AC_CONFIG_HEADERS([config.h])
8
9 dnl Other initialization
10 AM_INIT_AUTOMAKE
11 AM_MAINTAINER_MODE
12 m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])],)
13 LT_INIT
14
15 dnl Checks for programs.
16 AC_PROG_CC
17 AC_PROG_CPP
18
19 dnl Checks for libraries.
20
21 dnl ****************************
22 dnl *** Checks for intltool  ***
23 dnl ****************************
24
25 IT_PROG_INTLTOOL([0.35.0])
26 GETTEXT_PACKAGE=glib-networking
27
28 AC_SUBST([GETTEXT_PACKAGE])
29 AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE],["$GETTEXT_PACKAGE"],[The gettext domain name])
30 AM_GLIB_GNU_GETTEXT
31
32 dnl *****************************
33 dnl *** Check GLib GIO        ***
34 dnl *****************************
35
36 PKG_CHECK_MODULES(GIO, [gio-2.0 >= 2.27.3])
37 AC_SUBST(GIO_CFLAGS)
38 AC_SUBST(GIO_LIBS)
39
40 GIO_MODULE_DIR=$($PKG_CONFIG --variable giomoduledir gio-2.0)
41 AS_IF([test "x$GIO_MODULE_DIR" = "x"],
42       [AC_MSG_FAILURE(GIO_MODULE_DIR is missing from gio-2.0.pc)])
43 AC_SUBST(GIO_MODULE_DIR)
44
45 proxy_support=no
46 tls_support=no
47
48 dnl *****************************
49 dnl *** Checks for LibProxy   ***
50 dnl *****************************
51
52 AC_ARG_WITH(libproxy,
53     [AC_HELP_STRING([--with-libproxy],
54                     [support for libproxy @<:@default=check@:>@])],
55     [],
56     [with_libproxy=check])
57 AS_IF([test "x$with_libproxy" != "xno"],
58     [PKG_CHECK_MODULES(LIBPROXY, [libproxy-1.0 >= 0.3.1],
59         [with_libproxy=yes; proxy_support=libproxy],
60         [AS_IF([test "x$with_libproxy" = "xyes"],
61                [AC_MSG_FAILURE("$LIBPROXY_PKG_ERRORS")])])])
62 AM_CONDITIONAL(HAVE_LIBPROXY, [test "x$with_libproxy" = "xyes"])
63 AC_SUBST(LIBPROXY_CFLAGS)
64 AC_SUBST(LIBPROXY_LIBS)
65
66 dnl *****************************
67 dnl *** Checks for GNUTLS     ***
68 dnl *****************************
69 AC_ARG_WITH(gnutls,
70     [AC_HELP_STRING([--with-gnutls],
71                     [support for GNUTLS @<:@default=yes@:>@])],
72     [],
73     [with_gnutls=yes])
74 AS_IF([test "x$with_gnutls" != "xno"],
75     [PKG_CHECK_MODULES(GNUTLS, [gnutls >= 2.1.7],
76         [with_gnutls=yes
77          tls_support=gnutls
78          AM_PATH_LIBGCRYPT([])],
79         [AS_IF([test "x$with_gnutls" = "xyes"],
80                [AC_MSG_FAILURE("$GNUTLS_PKG_ERRORS")])])])
81 AM_CONDITIONAL(HAVE_GNUTLS, [test "x$with_gnutls" = "xyes"])
82 AC_SUBST(GNUTLS_CFLAGS)
83 AC_SUBST(GNUTLS_LIBS)
84
85 if test "x$with_gnutls" = "xyes"; then
86     AC_MSG_CHECKING([location of system Certificate Authority list])
87     AC_ARG_WITH(ca-certificates,
88                 [AC_HELP_STRING([--with-ca-certificates=@<:@path@:>@],
89                                 [path to system Certificate Authority list])])
90     if test "$with_ca_certificates" = "no"; then
91         AC_MSG_RESULT([disabled])
92     else
93         if test -z "$with_ca_certificates"; then
94             for f in /etc/pki/tls/certs/ca-bundle.crt \
95                      /etc/ssl/certs/ca-certificates.crt; do
96                 if test -f "$f"; then
97                     with_ca_certificates="$f"
98                 fi
99             done
100             if test -z "$with_ca_certificates"; then
101                 AC_MSG_ERROR([could not find. Use --with-ca-certificates=path to set, or --without-ca-certificates to disable])
102             fi
103         fi
104
105         AC_MSG_RESULT($with_ca_certificates)
106         AC_DEFINE_UNQUOTED(GTLS_SYSTEM_CA_FILE, ["$with_ca_certificates"], [The system TLS CA list])
107     fi
108 fi
109
110 dnl *****************************
111 dnl *** done                  ***
112 dnl *****************************
113 AC_CONFIG_FILES([Makefile
114                  po/Makefile.in po/Makefile
115                  proxy/libproxy/Makefile
116                  tls/gnutls/Makefile
117                 ])
118 AC_OUTPUT
119
120 echo ""
121 echo "  Proxy support: $proxy_support"
122 echo "  TLS support:   $tls_support"
123 if test "$tls_support" != "no"; then
124     echo "  TLS CA file:   ${with_ca_certificates:-(none)}"
125     if test -n "$with_ca_certificates"; then
126         if ! test -f "$with_ca_certificates"; then
127             AC_MSG_WARN([Specified certificate authority file '$with_ca_certificates' does not exist])
128         fi
129     fi
130 fi