2013-09-14 21:50:39 +00:00
|
|
|
######################################################################
|
|
|
|
# s3fs - FUSE-based file system backed by Amazon S3
|
|
|
|
#
|
|
|
|
# Copyright 2007-2008 Randy Rizun <rrizun@gmail.com>
|
|
|
|
#
|
|
|
|
# This program is free software; you can redistribute it and/or
|
|
|
|
# modify it under the terms of the GNU General Public License
|
|
|
|
# as published by the Free Software Foundation; either version 2
|
|
|
|
# of the License, or (at your option) any later version.
|
|
|
|
#
|
|
|
|
# This program is distributed in the hope that it will be useful,
|
|
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
# GNU General Public License for more details.
|
|
|
|
#
|
|
|
|
# You should have received a copy of the GNU General Public License
|
|
|
|
# along with this program; if not, write to the Free Software
|
|
|
|
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
|
|
######################################################################
|
2010-11-13 23:59:23 +00:00
|
|
|
dnl Process this file with autoconf to produce a configure script.
|
|
|
|
|
|
|
|
AC_PREREQ(2.59)
|
2014-04-19 16:08:10 +00:00
|
|
|
AC_INIT(s3fs, 1.77)
|
2010-11-13 23:59:23 +00:00
|
|
|
|
|
|
|
AC_CANONICAL_SYSTEM
|
|
|
|
AM_INIT_AUTOMAKE()
|
|
|
|
|
|
|
|
AC_PROG_CXX
|
2014-05-06 14:23:05 +00:00
|
|
|
AC_PROG_CC
|
2010-11-13 23:59:23 +00:00
|
|
|
|
2011-01-20 22:40:59 +00:00
|
|
|
CXXFLAGS="$CXXFLAGS -Wall -D_FILE_OFFSET_BITS=64"
|
|
|
|
|
2014-05-06 14:23:05 +00:00
|
|
|
dnl ----------------------------------------------
|
|
|
|
dnl Choice SSL library
|
|
|
|
dnl ----------------------------------------------
|
|
|
|
auth_lib=na
|
|
|
|
nettle_lib=no
|
2010-11-13 23:59:23 +00:00
|
|
|
|
2014-05-06 14:23:05 +00:00
|
|
|
dnl
|
|
|
|
dnl nettle library
|
|
|
|
dnl
|
|
|
|
AC_MSG_CHECKING([s3fs build with nettle(GnuTLS)])
|
2014-05-10 16:45:46 +00:00
|
|
|
AC_ARG_WITH(
|
|
|
|
nettle,
|
|
|
|
[AS_HELP_STRING([--with-nettle], [s3fs build with nettle in GnuTLS(default no)])],
|
2014-05-06 14:23:05 +00:00
|
|
|
[
|
2014-05-10 16:45:46 +00:00
|
|
|
case "${withval}" in
|
2014-05-06 14:23:05 +00:00
|
|
|
yes)
|
|
|
|
AC_MSG_RESULT(yes)
|
|
|
|
nettle_lib=yes
|
|
|
|
;;
|
|
|
|
*)
|
|
|
|
AC_MSG_RESULT(no)
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
],
|
|
|
|
[
|
|
|
|
AC_MSG_RESULT(no)
|
|
|
|
])
|
2013-09-14 21:50:39 +00:00
|
|
|
|
2014-05-06 14:23:05 +00:00
|
|
|
dnl
|
|
|
|
dnl use openssl library for ssl
|
|
|
|
dnl
|
|
|
|
AC_MSG_CHECKING([s3fs build with OpenSSL])
|
2014-05-10 16:45:46 +00:00
|
|
|
AC_ARG_WITH(
|
|
|
|
openssl,
|
|
|
|
[AS_HELP_STRING([--with-openssl], [s3fs build with OpenSSL(default is no)])],
|
2013-09-14 21:50:39 +00:00
|
|
|
[
|
2014-05-10 16:45:46 +00:00
|
|
|
case "${withval}" in
|
2014-05-06 14:23:05 +00:00
|
|
|
yes)
|
|
|
|
AC_MSG_RESULT(yes)
|
|
|
|
AS_IF(
|
|
|
|
[test $nettle_lib = no],
|
|
|
|
[auth_lib=openssl],
|
|
|
|
[AC_MSG_ERROR([could not set openssl with nettle, nettle is only for gnutls library])])
|
|
|
|
;;
|
|
|
|
*)
|
|
|
|
AC_MSG_RESULT(no)
|
|
|
|
;;
|
|
|
|
esac
|
2013-09-14 21:50:39 +00:00
|
|
|
],
|
2014-05-06 14:23:05 +00:00
|
|
|
[
|
|
|
|
AC_MSG_RESULT(no)
|
|
|
|
])
|
|
|
|
|
|
|
|
dnl
|
|
|
|
dnl use GnuTLS library for ssl
|
|
|
|
dnl
|
|
|
|
AC_MSG_CHECKING([s3fs build with GnuTLS])
|
2014-05-10 16:45:46 +00:00
|
|
|
AC_ARG_WITH(
|
|
|
|
gnutls,
|
|
|
|
[AS_HELP_STRING([--with-gnutls], [s3fs build with GnuTLS(default is no)])],
|
2013-09-14 21:50:39 +00:00
|
|
|
[
|
2014-05-10 16:45:46 +00:00
|
|
|
case "${withval}" in
|
2013-09-14 21:50:39 +00:00
|
|
|
yes)
|
|
|
|
AC_MSG_RESULT(yes)
|
2014-05-06 14:23:05 +00:00
|
|
|
AS_IF(
|
|
|
|
[test $auth_lib = na],
|
|
|
|
[
|
|
|
|
AS_IF(
|
|
|
|
[test $nettle_lib = no],
|
|
|
|
[auth_lib=gnutls],
|
|
|
|
[auth_lib=nettle])
|
|
|
|
],
|
|
|
|
[AC_MSG_ERROR([could not set gnutls because already set another ssl library])])
|
2013-09-14 21:50:39 +00:00
|
|
|
;;
|
|
|
|
*)
|
|
|
|
AC_MSG_RESULT(no)
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
],
|
|
|
|
[
|
|
|
|
AC_MSG_RESULT(no)
|
|
|
|
])
|
|
|
|
|
2014-05-06 14:23:05 +00:00
|
|
|
dnl
|
|
|
|
dnl use nss library for ssl
|
|
|
|
dnl
|
|
|
|
AC_MSG_CHECKING([s3fs build with NSS])
|
2014-05-10 16:45:46 +00:00
|
|
|
AC_ARG_WITH(
|
|
|
|
nss,
|
|
|
|
[AS_HELP_STRING([--with-nss], [s3fs build with NSS(default is no)])],
|
2014-05-06 14:23:05 +00:00
|
|
|
[
|
2014-05-10 16:45:46 +00:00
|
|
|
case "${withval}" in
|
2014-05-06 14:23:05 +00:00
|
|
|
yes)
|
|
|
|
AC_MSG_RESULT(yes)
|
|
|
|
AS_IF(
|
|
|
|
[test $auth_lib = na],
|
|
|
|
[
|
|
|
|
AS_IF(
|
|
|
|
[test $nettle_lib = no],
|
|
|
|
[auth_lib=nss],
|
|
|
|
[AC_MSG_ERROR([could not set openssl with nettle, nettle is only for gnutls library])])
|
|
|
|
],
|
|
|
|
[AC_MSG_ERROR([could not set nss because already set another ssl library])])
|
|
|
|
;;
|
|
|
|
*)
|
|
|
|
AC_MSG_RESULT(no)
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
],
|
2013-09-14 21:50:39 +00:00
|
|
|
[
|
2014-05-06 14:23:05 +00:00
|
|
|
AC_MSG_RESULT(no)
|
2013-09-14 21:50:39 +00:00
|
|
|
])
|
|
|
|
|
2014-05-06 14:23:05 +00:00
|
|
|
AS_IF(
|
|
|
|
[test $auth_lib = na],
|
2014-05-10 16:45:46 +00:00
|
|
|
AS_IF(
|
|
|
|
[test $nettle_lib = no],
|
|
|
|
[auth_lib=openssl],
|
|
|
|
[AC_MSG_ERROR([could not set nettle without GnuTLS library])]
|
|
|
|
)
|
|
|
|
)
|
2014-05-06 14:23:05 +00:00
|
|
|
|
|
|
|
AC_MSG_CHECKING([compile s3fs with])
|
|
|
|
case "${auth_lib}" in
|
|
|
|
openssl)
|
|
|
|
AC_MSG_RESULT(OpenSSL)
|
|
|
|
PKG_CHECK_MODULES([DEPS], [fuse >= 2.8.4 libcurl >= 7.0 libxml-2.0 >= 2.6 libcrypto >= 0.9])
|
|
|
|
;;
|
|
|
|
gnutls)
|
|
|
|
AC_MSG_RESULT(GnuTLS-gcrypt)
|
|
|
|
gnutls_nettle=""
|
|
|
|
AC_CHECK_LIB(gnutls, gcry_control, [gnutls_nettle=0])
|
|
|
|
AS_IF([test "$gnutls_nettle" = ""], [AC_CHECK_LIB(gcrypt, gcry_control, [gnutls_nettle=0])])
|
|
|
|
AS_IF([test $gnutls_nettle = 0],
|
|
|
|
[
|
|
|
|
PKG_CHECK_MODULES([DEPS], [fuse >= 2.8.4 libcurl >= 7.0 libxml-2.0 >= 2.6 gnutls >= 2.12.0 ])
|
|
|
|
LIBS="-lgnutls -lgcrypt $LIBS"
|
|
|
|
AC_MSG_CHECKING([gnutls is build with])
|
|
|
|
AC_MSG_RESULT(gcrypt)
|
|
|
|
],
|
|
|
|
[AC_MSG_ERROR([GnuTLS found, but gcrypt not found])])
|
|
|
|
;;
|
|
|
|
nettle)
|
|
|
|
AC_MSG_RESULT(GnuTLS-nettle)
|
|
|
|
gnutls_nettle=""
|
|
|
|
AC_CHECK_LIB(gnutls, nettle_MD5Init, [gnutls_nettle=1])
|
|
|
|
AS_IF([test "$gnutls_nettle" = ""], [AC_CHECK_LIB(nettle, nettle_MD5Init, [gnutls_nettle=1])])
|
|
|
|
AS_IF([test $gnutls_nettle = 1],
|
|
|
|
[
|
|
|
|
PKG_CHECK_MODULES([DEPS], [fuse >= 2.8.4 libcurl >= 7.0 libxml-2.0 >= 2.6 nettle >= 2.7.1 ])
|
|
|
|
LIBS="-lgnutls -lnettle $LIBS"
|
|
|
|
AC_MSG_CHECKING([gnutls is build with])
|
|
|
|
AC_MSG_RESULT(nettle)
|
|
|
|
],
|
|
|
|
[AC_MSG_ERROR([GnuTLS found, but nettle not found])])
|
|
|
|
;;
|
|
|
|
nss)
|
|
|
|
AC_MSG_RESULT(NSS)
|
|
|
|
PKG_CHECK_MODULES([DEPS], [fuse >= 2.8.4 libcurl >= 7.0 libxml-2.0 >= 2.6 nss >= 3.15.0 ])
|
|
|
|
;;
|
|
|
|
*)
|
|
|
|
AC_MSG_ERROR([unknown ssl library type.])
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
|
|
|
|
AM_CONDITIONAL([USE_SSL_OPENSSL], [test "$auth_lib" = openssl])
|
|
|
|
AM_CONDITIONAL([USE_SSL_GNUTLS], [test "$auth_lib" = gnutls -o "$auth_lib" = nettle])
|
|
|
|
AM_CONDITIONAL([USE_GNUTLS_NETTLE], [test "$auth_lib" = nettle])
|
|
|
|
AM_CONDITIONAL([USE_SSL_NSS], [test "$auth_lib" = nss])
|
|
|
|
|
|
|
|
dnl ----------------------------------------------
|
|
|
|
dnl end of ssl library
|
|
|
|
dnl ----------------------------------------------
|
|
|
|
|
|
|
|
dnl malloc_trim function
|
|
|
|
AC_CHECK_FUNCS(malloc_trim, , )
|
2013-09-14 21:50:39 +00:00
|
|
|
|
2011-02-11 20:57:44 +00:00
|
|
|
AC_CONFIG_FILES(Makefile src/Makefile test/Makefile doc/Makefile)
|
2010-11-13 23:59:23 +00:00
|
|
|
AC_OUTPUT
|
|
|
|
|