X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=configure.ac;h=9689a1f57a721d7a001fb5bfd872be57cc180329;hb=fc01d2a96189edc0c08fb1d757f83c63077b0516;hp=4bdc5a5048f11b18d8ace43c53e37e5b337034fc;hpb=2e4fb8e647c28a8c732a45453e3b3e2ae256bf2b;p=deb_libnfs.git diff --git a/configure.ac b/configure.ac index 4bdc5a5..9689a1f 100644 --- a/configure.ac +++ b/configure.ac @@ -1,74 +1,73 @@ AC_PREREQ(2.50) -AC_INIT(libnfs, m4_esyscmd([grep 'Version:' ./packaging/RPM/libnfs.spec.in 2>/dev/null | head -1 | sed -e 's/[ \t]*Version:[ \t]*\([^ \t]*\)[ \t]*.*/\1/' | tr -d '\n'])) -AC_CONFIG_SRCDIR([lib/init.c]) +AC_INIT([libnfs], [0.0.0]) +AC_CONFIG_HEADERS([config.h]) +AM_INIT_AUTOMAKE([foreign]) +AC_CANONICAL_HOST -if test "${libdir}" = '${exec_prefix}/lib'; then - case `uname -m` in - x86_64|ppc64|powerpc64) - libdir='${exec_prefix}/lib64' - ;; - *) - libdir='${exec_prefix}/lib' - ;; - esac -fi +# Work around stupid autoconf default cflags. pt 1 +SAVE_CFLAGS="x${CFLAGS}" -is_solaris="no" -install="/usr/bin/install" -ldconfig="ldconfig" +AC_PROG_CC +AC_PROG_LIBTOOL -case `uname` in - Linux*) - ;; - Darwin*) - libdir='${exec_prefix}/lib' - ;; - AIX*) - ;; - SunOS) - is_solaris="yes" - install="ginstall" - ldconfig="echo no ldconfig on solaris" - LIBS="$LIBS -lsocket -lnsl" - ;; - *) - ;; -esac +AM_PROG_CC_C_O -if test "$ac_cv_prog_gcc" = yes; then - CFLAGS="$CFLAGS -Wall -Wshadow -Wstrict-prototypes -Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings" +# Work around stupid autoconf default cflags. pt 2 +if test "$SAVE_CFLAGS" = "x"; then + CFLAGS="" fi -LOGDIR='${localstatedir}/log' -AC_ARG_WITH([logdir], - [ --with-logdir=DIR path to log directory [[LOCALSTATEDIR/log]]], - LOGDIR=$withval) -if test ! -z "$LOGDIR"; then - if test "$LOGDIR" = "yes" -o "$LOGDIR" = "no"; then - AC_MSG_ERROR([--with-logdir must specify a path]) - fi +AC_CHECK_PROG([HAVE_RPCGEN], [rpcgen], [yes], [no]) +if test x$HAVE_RPCGEN != xyes; then + AC_MSG_ERROR([Can not find required program]) fi -AC_SUBST(LOGDIR) -AC_CONFIG_HEADER(config.h) +# option: logdir +AC_ARG_WITH([logdir], + [AC_HELP_STRING([--with-logdir=DIR], + [path to log directory [[LOCALSTATEDIR/log]]])], + [LOGDIR=$withval], + [LOGDIR='${localstatedir}/log']) -EXTRA_OBJ="" +#if test ! -d "$LOGDIR"; then +# AC_MSG_ERROR([--with-logdir must specify a path]) +#fi +AC_SUBST(LOGDIR) -#AC_CHECK_HEADERS(sched.h) -#AC_CHECK_FUNCS(mlockall) +#option: examples +AC_ARG_ENABLE([examples], + [AC_HELP_STRING([--enable-examples], + [Build example programs])], + [ENABLE_EXAMPLES=$enableval], + [ENABLE_EXAMPLES="no"]) -AC_CACHE_CHECK([for sin_len in sock],libnfs_cv_HAVE_SOCK_SIN_LEN,[ -AC_TRY_COMPILE([#include -#include -#include ], -[struct sockaddr_in sock; sock.sin_len = sizeof(sock);], -libnfs_cv_HAVE_SOCK_SIN_LEN=yes,libnfs_cv_HAVE_SOCK_SIN_LEN=no)]) -if test x"$libnfs_cv_HAVE_SOCK_SIN_LEN" = x"yes"; then - AC_DEFINE(HAVE_SOCK_SIN_LEN,1,[Whether the sockaddr_in struct has a sin_len property]) +if test x$ENABLE_EXAMPLES = xyes; then + MAYBE_EXAMPLES="examples" fi -AC_SUBST(libdir) -AC_SUBST(install) -AC_SUBST(ldconfig) -#AC_SUBST(LIBNFS_LDFLAGS) +AC_SUBST(MAYBE_EXAMPLES) + +case $host in + *darwin*) + RPCGENFLAGS=-DU_INT64_PLATTFORM_TYPE="u_int64_t" + ;; + *solaris*) + AC_CHECK_HEADERS([sys/filio.h]) + ;; + *) + ;; +esac + +AC_SUBST(RPCGENFLAGS) + +#output +AC_CONFIG_FILES([Makefile] + [include/Makefile] + [lib/Makefile] + [mount/Makefile] + [nfs/Makefile] + [portmap/Makefile] + [rquota/Makefile] + [examples/Makefile] + ) -AC_OUTPUT(Makefile) +AC_OUTPUT