]> git.ipfire.org Git - thirdparty/cups.git/blame - config-scripts/cups-ssl.m4
Load cups into easysw/current.
[thirdparty/cups.git] / config-scripts / cups-ssl.m4
CommitLineData
ef416fc2 1dnl
a74454a7 2dnl "$Id: cups-ssl.m4 5466 2006-04-26 19:52:27Z mike $"
ef416fc2 3dnl
4dnl OpenSSL/GNUTLS stuff for the Common UNIX Printing System (CUPS).
5dnl
89d46774 6dnl Copyright 1997-2006 by Easy Software Products, all rights reserved.
ef416fc2 7dnl
8dnl These coded instructions, statements, and computer programs are the
9dnl property of Easy Software Products and are protected by Federal
10dnl copyright law. Distribution and use rights are outlined in the file
11dnl "LICENSE.txt" which should have been included with this file. If this
12dnl file is missing or damaged please contact Easy Software Products
13dnl at:
14dnl
15dnl Attn: CUPS Licensing Information
16dnl Easy Software Products
17dnl 44141 Airport View Drive, Suite 204
18dnl Hollywood, Maryland 20636 USA
19dnl
20dnl Voice: (301) 373-9600
21dnl EMail: cups-info@cups.org
22dnl WWW: http://www.cups.org
23dnl
24
25AC_ARG_ENABLE(ssl, [ --enable-ssl turn on SSL/TLS support, default=yes])
26AC_ARG_ENABLE(cdsassl, [ --enable-cdsassl use CDSA for SSL/TLS support, default=first])
27AC_ARG_ENABLE(gnutls, [ --enable-gnutls use GNU TLS for SSL/TLS support, default=second])
28AC_ARG_ENABLE(openssl, [ --enable-openssl use OpenSSL for SSL/TLS support, default=third])
29AC_ARG_WITH(openssl-libs, [ --with-openssl-libs set directory for OpenSSL library],
30 LDFLAGS="-L$withval $LDFLAGS"
31 DSOFLAGS="-L$withval $DSOFLAGS",)
32AC_ARG_WITH(openssl-includes, [ --with-openssl-includes set directory for OpenSSL includes],
33 CFLAGS="-I$withval $CFLAGS"
34 CXXFLAGS="-I$withval $CXXFLAGS"
35 CPPFLAGS="-I$withval $CPPFLAGS",)
36
37SSLFLAGS=""
38SSLLIBS=""
89d46774 39ENCRYPTION_REQUIRED=""
ef416fc2 40
41if test x$enable_ssl != xno; then
42 dnl Look for CDSA...
43 if test "x${SSLLIBS}" = "x" -a "x${enable_cdsassl}" != "xno"; then
44 if test $uname = Darwin; then
45 AC_CHECK_HEADER(Security/SecureTransport.h,
46 [SSLLIBS="-framework CoreFoundation -framework Security"
89d46774 47 # MacOS X doesn't (yet) come with pre-installed encryption
48 # certificates for CUPS, so don't enable encryption on
49 # /admin just yet...
50 #ENCRYPTION_REQUIRED=" Encryption Required"
ef416fc2 51 AC_DEFINE(HAVE_SSL)
52 AC_DEFINE(HAVE_CDSASSL)])
53 fi
54 fi
55
56 dnl Then look for GNU TLS...
57 if test "x${SSLLIBS}" = "x" -a "x${enable_gnutls}" != "xno"; then
58 AC_CHECK_HEADER(gnutls/gnutls.h,
59 dnl Save the current libraries so the crypto stuff isn't always
60 dnl included...
61 SAVELIBS="$LIBS"
62
e1d6a774 63 AC_CHECK_LIB(gnutls, gnutls_x509_crt_set_dn_by_oid,
ef416fc2 64 [SSLLIBS="-lgnutls"
89d46774 65 ENCRYPTION_REQUIRED=" Encryption Required"
ef416fc2 66 AC_DEFINE(HAVE_SSL)
67 AC_DEFINE(HAVE_GNUTLS)])
68
69 LIBS="$SAVELIBS")
70 fi
71
72 dnl Check for the OpenSSL library last...
73 if test "x${SSLLIBS}" = "x" -a "x${enable_openssl}" != "xno"; then
74 AC_CHECK_HEADER(openssl/ssl.h,
75 dnl Save the current libraries so the crypto stuff isn't always
76 dnl included...
77 SAVELIBS="$LIBS"
78
79 dnl Some ELF systems can't resolve all the symbols in libcrypto
80 dnl if libcrypto was linked against RSAREF, and fail to link the
81 dnl test program correctly, even though a correct installation
82 dnl of OpenSSL exists. So we test the linking three times in
83 dnl case the RSAREF libraries are needed.
84
85 for libcrypto in \
86 "-lcrypto" \
87 "-lcrypto -lrsaref" \
88 "-lcrypto -lRSAglue -lrsaref"
89 do
90 AC_CHECK_LIB(ssl,SSL_new,
91 [SSLFLAGS="-DOPENSSL_DISABLE_OLD_DES_SUPPORT"
92 SSLLIBS="-lssl $libcrypto"
89d46774 93 ENCRYPTION_REQUIRED=" Encryption Required"
ef416fc2 94 AC_DEFINE(HAVE_SSL)
95 AC_DEFINE(HAVE_LIBSSL)],,
96 $libcrypto)
97
98 if test "x${SSLLIBS}" != "x"; then
99 break
100 fi
101 done
102
103 LIBS="$SAVELIBS")
104 fi
105fi
106
107AC_SUBST(SSLFLAGS)
108AC_SUBST(SSLLIBS)
89d46774 109AC_SUBST(ENCRYPTION_REQUIRED)
ef416fc2 110
111EXPORT_SSLLIBS="$SSLLIBS"
112AC_SUBST(EXPORT_SSLLIBS)
113
114
115dnl
a74454a7 116dnl End of "$Id: cups-ssl.m4 5466 2006-04-26 19:52:27Z mike $".
ef416fc2 117dnl