AC_CONFIG_HEADER(config.h)
AC_PREREQ(2.59)
-RSYNC_VERSION=3.0.0pre10
+RSYNC_VERSION=3.1.0dev
AC_SUBST(RSYNC_VERSION)
AC_MSG_NOTICE([Configuring rsync $RSYNC_VERSION])
LDFLAGS=${LDFLAGS-""}
-AC_CANONICAL_TARGET([])
-
-dnl Checks for programs.
-AC_PROG_CC
-AC_PROG_CPP
-AC_PROG_EGREP
-AC_PROG_INSTALL
-AC_PROG_CC_STDC
-AC_SUBST(SHELL)
-
-AC_DEFINE([_GNU_SOURCE], 1,
- [Define _GNU_SOURCE so that we get all necessary prototypes])
-
-if test x"$ac_cv_prog_cc_stdc" = x"no"; then
- AC_MSG_WARN([rsync requires an ANSI C compiler and you don't seem to have one])
-fi
+AC_CANONICAL_HOST
# We must decide this before testing the compiler.
if test x"$enable_debug" = x"no"; then
AC_MSG_RESULT(no)
- CFLAGS=${CFLAGS-"-O"}
+ ac_cv_prog_cc_g=no
else
AC_MSG_RESULT([yes])
- # leave CFLAGS alone; AC_PROG_CC will try to include -g if it can
dnl AC_DEFINE(DEBUG, 1, [Define to turn on debugging code that may slow normal operation])
- dnl CFLAGS=${CFLAGS-"-g"}
+ # leave ac_cv_prog_cc_g alone; AC_PROG_CC will try to include -g if it can
fi
+dnl Checks for programs.
+AC_PROG_CC
+AC_PROG_CPP
+AC_PROG_EGREP
+AC_PROG_INSTALL
+AC_PROG_CC_STDC
+AC_SUBST(SHELL)
+
+AC_DEFINE([_GNU_SOURCE], 1,
+ [Define _GNU_SOURCE so that we get all necessary prototypes])
+
+if test x"$ac_cv_prog_cc_stdc" = x"no"; then
+ AC_MSG_WARN([rsync requires an ANSI C compiler and you don't seem to have one])
+fi
AC_ARG_ENABLE(profile,
AC_HELP_STRING([--enable-profile],
[don't even try to use IPv6]))
if test x"$enable_ipv6" != x"no"; then
AC_MSG_CHECKING([ipv6 stack type])
- for i in inria kame linux-glibc linux-inet6 toshiba v6d zeta; do
+ for i in inria kame linux-glibc linux-inet6 solaris toshiba v6d zeta; do
case $i in
inria)
# http://www.kame.net/
CFLAGS="-I/usr/inet6/include $CFLAGS"
fi
;;
+ solaris)
+ # http://www.sun.com
+ AC_EGREP_CPP(yes, [
+#include <netinet/ip6.h>
+#ifdef __sun
+yes
+#endif],
+ [ipv6type=$i;
+ AC_DEFINE(INET6, 1, [true if you have IPv6])])
+ ;;
toshiba)
AC_EGREP_CPP(yes, [
#include <sys/param.h>
AC_CHECK_HEADERS(sys/fcntl.h sys/select.h fcntl.h sys/time.h sys/unistd.h \
unistd.h utime.h grp.h compat.h sys/param.h ctype.h sys/wait.h \
sys/ioctl.h sys/filio.h string.h stdlib.h sys/socket.h sys/mode.h \
- sys/un.h sys/attr.h glob.h mcheck.h arpa/inet.h arpa/nameser.h locale.h \
- netdb.h malloc.h float.h limits.h iconv.h libcharset.h langinfo.h)
+ sys/un.h sys/attr.h mcheck.h arpa/inet.h arpa/nameser.h locale.h \
+ netdb.h malloc.h float.h limits.h iconv.h libcharset.h langinfo.h \
+ sys/acl.h acl/libacl.h attr/xattr.h sys/xattr.h sys/extattr.h \
+ popt.h popt/popt.h)
AC_HEADER_MAJOR
AC_CACHE_CHECK([if makedev takes 3 args],rsync_cv_MAKEDEV_TAKES_3_ARGS,[
AC_TYPE_UID_T
AC_CHECK_TYPES([mode_t,off_t,size_t,pid_t,id_t])
AC_TYPE_GETGROUPS
-AC_CHECK_MEMBERS([struct stat.st_rdev])
+AC_CHECK_MEMBERS([struct stat.st_rdev,
+ struct stat.st_mtimensec,
+ struct stat.st_mtim.tv_nsec],,,[
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_STAT_H
+#include <sys/stat.h>
+#endif
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif])
TYPE_SOCKLEN_T
AC_FUNC_ALLOCA
AC_CHECK_FUNCS(waitpid wait4 getcwd strdup chown chmod lchmod mknod mkfifo \
fchmod fstat ftruncate strchr readlink link utime utimes lutimes strftime \
- memmove lchown vsnprintf snprintf vasprintf asprintf setsid glob strpbrk \
+ memmove lchown vsnprintf snprintf vasprintf asprintf setsid strpbrk \
strlcat strlcpy strtol mallinfo getgroups setgroups geteuid getegid \
setlocale setmode open64 lseek64 mkstemp64 mtrace va_copy __va_copy \
strerror putenv iconv_open locale_charset nl_langinfo getxattr \
- extattr_get_link sigaction sigprocmask setattrlist)
+ extattr_get_link sigaction sigprocmask setattrlist getgrouplist \
+ initgroups utimensat)
dnl cygwin iconv.h defines iconv_open as libiconv_open
if test x"$ac_cv_func_iconv_open" != x"yes"; then
AC_FUNC_GETPGRP
fi
+AC_ARG_ENABLE(iconv-open,
+ AC_HELP_STRING([--disable-iconv-open],
+ [disable all use of iconv_open() function]),
+ [], [enable_iconv_open=$ac_cv_func_iconv_open])
+
+if test x"$enable_iconv_open" != x"no"; then
+ AC_DEFINE(USE_ICONV_OPEN, 1, [Define to 1 if you want rsync to make use of iconv_open()])
+fi
+
AC_ARG_ENABLE(iconv,
AC_HELP_STRING([--disable-iconv],
[disable rsync's --iconv option]),
- [], [enable_iconv=$ac_cv_func_iconv_open])
+ [], [enable_iconv=$enable_iconv_open])
AH_TEMPLATE([ICONV_OPTION],
[Define if you want the --iconv option. Specifing a value will set the
default iconv setting (a NULL means no --iconv processing by default).])
if test x"$with_included_popt" != x"yes"; then
AC_CHECK_LIB(popt, poptGetContext, , [with_included_popt=yes])
fi
+if test x"$ac_cv_header_popt_popt_h" = x"yes"; then
+ # If the system has /usr/include/popt/popt.h, we enable the
+ # included popt because an attempt to "#include <popt/popt.h>"
+ # would use our included header file anyway (due to -I.), and
+ # might conflict with the system popt.
+ with_included_popt=yes
+elif test x"$ac_cv_header_popt_h" != x"yes"; then
+ with_included_popt=yes
+fi
AC_MSG_CHECKING([whether to use included libpopt])
if test x"$with_included_popt" = x"yes"; then
rsync_cv_HAVE_SECURE_MKSTEMP=no,
rsync_cv_HAVE_SECURE_MKSTEMP=cross)])
if test x"$rsync_cv_HAVE_SECURE_MKSTEMP" = x"yes"; then
- case $target_os in
+ case $host_os in
hpux*)
dnl HP-UX has a broken mkstemp() implementation they refuse to fix,
dnl so we noisily skip using it. See HP change request JAGaf34426
AC_SUBST(BUILD_POPT)
AC_SUBST(MAKE_MAN)
-AC_CHECK_HEADERS(sys/acl.h acl/libacl.h)
AC_CHECK_FUNCS(_acl __acl _facl __facl)
#################################################
# check for ACL support
esac
fi
-AC_CHECK_HEADERS(attr/xattr.h)
-AC_CHECK_HEADERS(sys/xattr.h)
-AC_CHECK_HEADERS(sys/extattr.h)
-
#################################################
# check for extended attribute support
AC_MSG_CHECKING(whether to support extended attributes)
AC_DEFINE(HAVE_FREEBSD_XATTRS, 1, [True if you have FreeBSD xattrs])
AC_DEFINE(SUPPORT_XATTRS, 1)
;;
+ solaris*)
+ AC_MSG_RESULT(Using Solaris xattrs)
+ AC_DEFINE(HAVE_SOLARIS_XATTRS, 1, [True if you have Solaris xattrs])
+ AC_DEFINE(SUPPORT_XATTRS, 1)
+ AC_DEFINE(NO_SYMLINK_XATTRS, 1, [True if symlinks don't support xattrs])
+ ;;
*)
if test x"$enable_xattr_support" = x"yes"; then
AC_MSG_ERROR(Failed to find extended attribute support)
esac
fi
+if test x"$enable_acl_support" = x"no" -o x"$enable_xattr_support" = x"no" -o x"$enable_iconv" = x"no"; then
+ AC_MSG_CHECKING([whether $CC supports -Wno-unused-parameter])
+ OLD_CFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS -Wno-unused-parameter"
+ AC_COMPILE_IFELSE([ ], [rsync_warn_flag=yes], [rsync_warn_flag=no])
+ AC_MSG_RESULT([$rsync_warn_flag])
+ if test x"$rsync_warn_flag" = x"no"; then
+ CFLAGS="$OLD_CFLAGS"
+ fi
+fi
+
+case "$CC" in
+' checker'*|checker*)
+ AC_DEFINE(FORCE_FD_ZERO_MEMSET, 1, [Used to make "checker" understand that FD_ZERO() clears memory.])
+ ;;
+esac
+
AC_CONFIG_FILES([Makefile lib/dummy zlib/dummy popt/dummy shconfig])
AC_OUTPUT