Add missing comma to gnome-proxy AC_ARG_WITH
[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.31.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([1.11 no-dist-gzip dist-xz -Wno-portability])
11 AM_MAINTAINER_MODE([enable])
12 AM_SILENT_RULES([yes])
13 LT_INIT
14
15 dnl Checks for programs.
16 AC_PROG_CC
17 AM_PROG_CC_C_O
18 AC_PROG_CPP
19
20 dnl Checks for libraries.
21
22 dnl ****************************
23 dnl *** Checks for intltool  ***
24 dnl ****************************
25
26 IT_PROG_INTLTOOL([0.35.0])
27 GETTEXT_PACKAGE=glib-networking
28
29 AC_SUBST([GETTEXT_PACKAGE])
30 AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE],["$GETTEXT_PACKAGE"],[The gettext domain name])
31 AM_GLIB_GNU_GETTEXT
32
33 dnl *****************************
34 dnl *** Check GLib GIO        ***
35 dnl *****************************
36 AM_PATH_GLIB_2_0(2.29.18,,AC_MSG_ERROR(GLIB not found),gio)
37
38 GIO_MODULE_DIR=$($PKG_CONFIG --variable giomoduledir gio-2.0)
39 AS_IF([test "x$GIO_MODULE_DIR" = "x"],
40       [AC_MSG_FAILURE(GIO_MODULE_DIR is missing from gio-2.0.pc)])
41 AC_SUBST(GIO_MODULE_DIR)
42
43 AC_PATH_PROG(GIO_QUERYMODULES, gio-querymodules)
44 AC_SUBST(GIO_QUERYMODULES)
45
46 dnl *****************************
47 dnl *** Checks for LibProxy   ***
48 dnl *****************************
49
50 AC_ARG_WITH(libproxy,
51     [AC_HELP_STRING([--with-libproxy],
52                     [support for libproxy @<:@default=check@:>@])],
53     [],
54     [with_libproxy=check])
55 AS_IF([test "x$with_libproxy" != "xno"],
56     [PKG_CHECK_MODULES(LIBPROXY, [libproxy-1.0 >= 0.3.1],
57         [with_libproxy=yes; proxy_support=libproxy],
58         [AS_IF([test "x$with_libproxy" = "xyes"],
59                [AC_MSG_FAILURE("$LIBPROXY_PKG_ERRORS")])])])
60 AM_CONDITIONAL(HAVE_LIBPROXY, [test "x$with_libproxy" = "xyes"])
61 AC_SUBST(LIBPROXY_CFLAGS)
62 AC_SUBST(LIBPROXY_LIBS)
63
64 dnl **************************************
65 dnl *** Checks for GNOME proxy backend ***
66 dnl **************************************
67 AC_ARG_WITH(gnome-proxy,
68     [AC_HELP_STRING([--with-gnome-proxy],
69                     [support for GNOME proxy configuration @<:@default=check@:>@])],
70     [],
71     [with_gnome_proxy=check])
72 AS_IF([test "x$with_gnome_proxy" != "xno"],
73     [PKG_CHECK_MODULES(GSETTINGS_DESKTOP_SCHEMAS, [gsettings-desktop-schemas],
74         [with_gnome_proxy=yes; proxy_support="gnome $proxy_support"],
75         [AS_IF([test "x$with_gnome_proxy" = "xyes"],
76                [AC_MSG_FAILURE("$GSETTINGS_DESKTOP_SCHEMAS_PKG_ERRORS")])])])
77 AM_CONDITIONAL(HAVE_GNOME_PROXY, [test "x$with_gnome_proxy" = "xyes"])
78 AC_SUBST(GSETTINGS_DESKTOP_SCHEMAS_CFLAGS)
79
80 dnl *****************************
81 dnl *** Checks for GNUTLS     ***
82 dnl *****************************
83
84 GNUTLS_MIN_REQUIRED=2.11.0
85
86 AC_ARG_WITH(gnutls,
87     [AC_HELP_STRING([--with-gnutls],
88                     [support for GNUTLS @<:@default=yes@:>@])],
89     [],
90     [with_gnutls=yes])
91 AS_IF([test "x$with_gnutls" != "xno"],
92     [PKG_CHECK_MODULES(GNUTLS, [gnutls >= $GNUTLS_MIN_REQUIRED],
93         [with_gnutls=yes
94          tls_support=gnutls
95          AM_PATH_LIBGCRYPT([])],
96         [AS_IF([test "x$with_gnutls" = "xyes"],
97                [AC_MSG_FAILURE("$GNUTLS_PKG_ERRORS")])])])
98 AM_CONDITIONAL(HAVE_GNUTLS, [test "x$with_gnutls" = "xyes"])
99 AC_SUBST(GNUTLS_CFLAGS)
100 AC_SUBST(GNUTLS_LIBS)
101
102 if test "x$with_gnutls" = "xyes"; then
103     AC_MSG_CHECKING([location of system Certificate Authority list])
104     AC_ARG_WITH(ca-certificates,
105                 [AC_HELP_STRING([--with-ca-certificates=@<:@path@:>@],
106                                 [path to system Certificate Authority list])])
107     if test "$with_ca_certificates" = "no"; then
108         AC_MSG_RESULT([disabled])
109     else
110         if test -z "$with_ca_certificates"; then
111             for f in /etc/pki/tls/certs/ca-bundle.crt \
112                      /etc/ssl/certs/ca-certificates.crt; do
113                 if test -f "$f"; then
114                     with_ca_certificates="$f"
115                 fi
116             done
117             if test -z "$with_ca_certificates"; then
118                 AC_MSG_ERROR([could not find. Use --with-ca-certificates=path to set, or --without-ca-certificates to disable])
119             fi
120         fi
121
122         AC_MSG_RESULT($with_ca_certificates)
123         AC_DEFINE_UNQUOTED(GTLS_SYSTEM_CA_FILE, ["$with_ca_certificates"], [The system TLS CA list])
124     fi
125 fi
126
127 dnl *************************************
128 dnl *** Warnings to show if using GCC ***
129 dnl *************************************
130
131 AC_ARG_ENABLE(more-warnings,
132               AS_HELP_STRING([--disable-more-warnings], [Inhibit compiler warnings]),
133               set_more_warnings=no)
134
135 if test "$GCC" = "yes" -a "$set_more_warnings" != "no"; then
136         CFLAGS="$CFLAGS \
137                 -Wall -Wstrict-prototypes -Wmissing-declarations \
138                 -Wmissing-prototypes -Wnested-externs -Wpointer-arith \
139                 -Wdeclaration-after-statement -Wformat=2 -Winit-self \
140                 -Waggregate-return -Wmissing-format-attribute"
141
142         for option in -Wmissing-include-dirs -Wundef; do
143                 SAVE_CFLAGS="$CFLAGS"
144                 CFLAGS="$CFLAGS $option"
145                 AC_MSG_CHECKING([whether gcc understands $option])
146                 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([], [])],
147                                   [has_option=yes],
148                                   [has_option=no])
149                 AC_MSG_RESULT($has_option)
150                 if test $has_option = no; then
151                         CFLAGS="$SAVE_CFLAGS"
152                 fi
153         done
154 fi
155
156 dnl ************************************
157 dnl *** Enable lcov coverage reports ***
158 dnl ************************************
159
160 AC_ARG_ENABLE(gcov,
161   AS_HELP_STRING([--enable-gcov],
162                  [Enable gcov]),
163   [use_gcov=$enableval], [use_gcov=no])
164
165 if test "x$use_gcov" = "xyes"; then
166   dnl we need gcc:
167   if test "$GCC" != "yes"; then
168     AC_MSG_ERROR([GCC is required for --enable-gcov])
169   fi
170
171   ltp_version_list="1.6 1.7 1.8 1.9"
172   AC_CHECK_PROG(LTP, lcov, lcov)
173   AC_CHECK_PROG(LTP_GENHTML, genhtml, genhtml)
174
175   if test "$LTP"; then
176     AC_CACHE_CHECK([for ltp version], glib_cv_ltp_version, [
177       glib_cv_ltp_version=invalid
178       ltp_version=`$LTP -v 2>/dev/null | $SED -e 's/^.* //'`
179       for ltp_check_version in $ltp_version_list; do
180         if test "$ltp_version" = "$ltp_check_version"; then
181           glib_cv_ltp_version="$ltp_check_version (ok)"
182         fi
183       done
184     ])
185   else
186     ltp_msg="To enable code coverage reporting you must have one of the following LTP versions installed: $ltp_version_list"
187     AC_MSG_ERROR([$ltp_msg])
188   fi
189
190   case $glib_cv_ltp_version in
191     ""|invalid[)]
192       ltp_msg="You must have one of the following versions of LTP: $ltp_version_list (found: $ltp_version)."
193       AC_MSG_ERROR([$ltp_msg])
194       LTP="exit 0;"
195       ;;
196   esac
197
198   if test -z "$LTP_GENHTML"; then
199     AC_MSG_ERROR([Could not find genhtml from the LTP package])
200   fi
201
202   AC_DEFINE(HAVE_GCOV, 1, [Whether you have gcov])
203
204   dnl Remove all optimization flags from CFLAGS
205   changequote({,})
206   CFLAGS=`echo "$CFLAGS" | $SED -e 's/-O[0-9]*//g'`
207   changequote([,])
208
209   dnl Add the special gcc flags
210   CFLAGS="$CFLAGS -O0 -fprofile-arcs -ftest-coverage"
211   LDFLAGS="$LDFLAGS -lgcov"
212 fi
213
214 dnl *****************************
215 dnl *** done                  ***
216 dnl *****************************
217 AC_CONFIG_FILES([Makefile
218                  po/Makefile.in po/Makefile
219                  proxy/libproxy/Makefile
220                  proxy/gnome/Makefile
221                  proxy/tests/Makefile
222                  tls/gnutls/Makefile
223                  tls/tests/Makefile
224                 ])
225 AC_OUTPUT
226
227 echo ""
228 echo "  Proxy support: ${proxy_support:-no}"
229 echo "  TLS support:   ${tls_support:-no}"
230 if test "$tls_support" != "no"; then
231     echo "  TLS CA file:   ${with_ca_certificates:-(none)}"
232     if test -n "$with_ca_certificates"; then
233         if ! test -f "$with_ca_certificates"; then
234             AC_MSG_WARN([Specified certificate authority file '$with_ca_certificates' does not exist])
235         fi
236     fi
237 fi