version 1.1.1.3, 2016/11/01 09:54:32
|
version 1.1.1.4, 2021/03/17 00:32:36
|
Line 1
|
Line 1
|
dnl Process this file with autoconf to produce a configure script. |
dnl Process this file with autoconf to produce a configure script. |
|
|
AC_INIT([rsync],[3.1.2],[http://rsync.samba.org/bugzilla.html]) | AC_INIT([rsync],[ ],[https://rsync.samba.org/bug-tracking.html]) |
|
|
AC_CONFIG_MACRO_DIR([m4]) |
AC_CONFIG_MACRO_DIR([m4]) |
AC_CONFIG_SRCDIR([byteorder.h]) |
AC_CONFIG_SRCDIR([byteorder.h]) |
AC_CONFIG_HEADER(config.h) |
AC_CONFIG_HEADER(config.h) |
AC_PREREQ([2.69]) |
AC_PREREQ([2.69]) |
|
|
AC_SUBST(RSYNC_VERSION, $PACKAGE_VERSION) | PACKAGE_VERSION=`sed 's/.*"\(.*\)".*/\1/' <$srcdir/version.h` |
| |
AC_MSG_NOTICE([Configuring rsync $PACKAGE_VERSION]) |
AC_MSG_NOTICE([Configuring rsync $PACKAGE_VERSION]) |
|
|
AC_DEFINE_UNQUOTED(RSYNC_VERSION, ["$PACKAGE_VERSION"], [rsync release version]) |
|
|
|
LDFLAGS=${LDFLAGS-""} |
LDFLAGS=${LDFLAGS-""} |
|
|
AC_CANONICAL_HOST |
AC_CANONICAL_HOST |
Line 41 fi
|
Line 40 fi
|
dnl Checks for programs. |
dnl Checks for programs. |
AC_PROG_CC |
AC_PROG_CC |
AC_PROG_CPP |
AC_PROG_CPP |
|
AC_PROG_CXX |
|
AC_PROG_AWK |
AC_PROG_EGREP |
AC_PROG_EGREP |
AC_PROG_INSTALL |
AC_PROG_INSTALL |
AC_PROG_MKDIR_P |
AC_PROG_MKDIR_P |
AC_PROG_CC_STDC |
AC_PROG_CC_STDC |
AC_SUBST(SHELL) |
AC_SUBST(SHELL) |
AC_PATH_PROG([PERL], [perl]) |
AC_PATH_PROG([PERL], [perl]) |
|
AC_PATH_PROG([PYTHON3], [python3]) |
|
|
AC_DEFINE([_GNU_SOURCE], 1, |
AC_DEFINE([_GNU_SOURCE], 1, |
[Define _GNU_SOURCE so that we get all necessary prototypes]) |
[Define _GNU_SOURCE so that we get all necessary prototypes]) |
Line 55 if test x"$ac_cv_prog_cc_stdc" = x"no"; then
|
Line 57 if test x"$ac_cv_prog_cc_stdc" = x"no"; then
|
AC_MSG_WARN([rsync requires an ANSI C compiler and you do not seem to have one]) |
AC_MSG_WARN([rsync requires an ANSI C compiler and you do not seem to have one]) |
fi |
fi |
|
|
|
no_lib='' |
|
err_msg='' |
|
nl=' |
|
' |
|
|
AC_ARG_ENABLE(profile, |
AC_ARG_ENABLE(profile, |
AS_HELP_STRING([--enable-profile],[turn on CPU profiling])) |
AS_HELP_STRING([--enable-profile],[turn on CPU profiling])) |
if test x"$enable_profile" = x"yes"; then |
if test x"$enable_profile" = x"yes"; then |
CFLAGS="$CFLAGS -pg" |
CFLAGS="$CFLAGS -pg" |
fi |
fi |
|
|
|
AC_MSG_CHECKING([if md2man can create man pages]) |
|
if test x"$ac_cv_path_PYTHON3" = x; then |
|
AC_MSG_RESULT(no - python3 not found) |
|
md2man_works=no |
|
else |
|
md2man_out=`"$srcdir/md2man" --test "$srcdir/rsync-ssl.1.md" 2>&1` |
|
if test $? = 0; then |
|
AC_MSG_RESULT(yes) |
|
md2man_works=yes |
|
else |
|
AC_MSG_RESULT(no) |
|
md2man_works=no |
|
echo "$md2man_out" |
|
fi |
|
fi |
|
|
|
AC_MSG_CHECKING([if we require man-page building]) |
|
AC_ARG_ENABLE([md2man], |
|
AS_HELP_STRING([--disable-md2man],[disable md2man for man page creation])) |
|
if test x"$enable_md2man" != x"no"; then |
|
if test -f "$srcdir/rsync.1"; then |
|
AC_MSG_RESULT(optional) |
|
else |
|
AC_MSG_RESULT(required) |
|
if test x"$md2man_works" = x"no"; then |
|
err_msg="$err_msg$nl- You need python3 and either the cmarkgfm OR commonmark python3 lib in order" |
|
err_msg="$err_msg$nl to build man pages based on the git source (man pages are included in the" |
|
err_msg="$err_msg$nl official release tar files)." |
|
no_lib="$no_lib md2man" |
|
fi |
|
fi |
|
MAKE_MAN=man |
|
else |
|
AC_MSG_RESULT(no) |
|
MAKE_MAN='' |
|
fi |
|
|
# Specifically, this turns on panic_action handling. |
# Specifically, this turns on panic_action handling. |
AC_ARG_ENABLE(maintainer-mode, |
AC_ARG_ENABLE(maintainer-mode, |
AS_HELP_STRING([--enable-maintainer-mode],[turn on extra debug features])) |
AS_HELP_STRING([--enable-maintainer-mode],[turn on extra debug features])) |
Line 69 if test x"$enable_maintainer_mode" = x"yes"; then
|
Line 112 if test x"$enable_maintainer_mode" = x"yes"; then
|
CFLAGS="$CFLAGS -DMAINTAINER_MODE" |
CFLAGS="$CFLAGS -DMAINTAINER_MODE" |
fi |
fi |
|
|
|
|
# This is needed for our included version of popt. Kind of silly, but |
# This is needed for our included version of popt. Kind of silly, but |
# I don't want our version too far out of sync. |
# I don't want our version too far out of sync. |
CFLAGS="$CFLAGS -DHAVE_CONFIG_H" |
CFLAGS="$CFLAGS -DHAVE_CONFIG_H" |
Line 134 else
|
Line 176 else
|
fi |
fi |
AC_DEFINE_UNQUOTED(RSYNC_RSH, "$RSYNC_RSH", [default -e command]) |
AC_DEFINE_UNQUOTED(RSYNC_RSH, "$RSYNC_RSH", [default -e command]) |
|
|
AC_CHECK_PROG(HAVE_YODL2MAN, yodl2man, 1, 0) |
|
if test x$HAVE_YODL2MAN = x1; then |
|
MAKE_MAN=man |
|
else |
|
MAKE_MAN=man-copy |
|
fi |
|
|
|
# Some programs on solaris are only found in /usr/xpg4/bin (or work better than others versions). |
# Some programs on solaris are only found in /usr/xpg4/bin (or work better than others versions). |
AC_PATH_PROG(SHELL_PATH, sh, /bin/sh, [/usr/xpg4/bin$PATH_SEPARATOR$PATH]) |
AC_PATH_PROG(SHELL_PATH, sh, /bin/sh, [/usr/xpg4/bin$PATH_SEPARATOR$PATH]) |
AC_PATH_PROG(FAKEROOT_PATH, fakeroot, /usr/bin/fakeroot, [/usr/xpg4/bin$PATH_SEPARATOR$PATH]) |
AC_PATH_PROG(FAKEROOT_PATH, fakeroot, /usr/bin/fakeroot, [/usr/xpg4/bin$PATH_SEPARATOR$PATH]) |
Line 164 fi
|
Line 199 fi
|
AC_DEFINE_UNQUOTED(NOBODY_USER, "nobody", [unprivileged user--e.g. nobody]) |
AC_DEFINE_UNQUOTED(NOBODY_USER, "nobody", [unprivileged user--e.g. nobody]) |
AC_DEFINE_UNQUOTED(NOBODY_GROUP, "$NOBODY_GROUP", [unprivileged group for unprivileged user]) |
AC_DEFINE_UNQUOTED(NOBODY_GROUP, "$NOBODY_GROUP", [unprivileged group for unprivileged user]) |
|
|
|
# SIMD optimizations |
|
SIMD= |
|
|
|
AC_MSG_CHECKING([whether to enable SIMD optimizations]) |
|
AC_ARG_ENABLE(simd, |
|
AS_HELP_STRING([--disable-simd],[disable SIMD optimizations (requires c++)])) |
|
|
|
# Clag is crashing with -g -O2, so we'll get rid of -g for now. |
|
CXXFLAGS=`echo "$CXXFLAGS" | sed 's/-g //'` |
|
|
|
if test x"$enable_simd" != x"no"; then |
|
# For x86-64 SIMD, g++ >=5 or clang++ >=7 is required |
|
if test x"$build_cpu" = x"x86_64"; then |
|
AC_LANG(C++) |
|
AC_RUN_IFELSE([AC_LANG_PROGRAM([[#include <stdio.h> |
|
#include <immintrin.h> |
|
__attribute__ ((target("default"))) int test_ssse3(int x) { return x; } |
|
__attribute__ ((target("default"))) int test_sse2(int x) { return x; } |
|
__attribute__ ((target("default"))) int test_avx2(int x) { return x; } |
|
__attribute__ ((target("ssse3"))) int test_ssse3(int x) { return x; } |
|
__attribute__ ((target("sse2"))) int test_sse2(int x) { return x; } |
|
__attribute__ ((target("avx2"))) int test_avx2(int x) { return x; } |
|
typedef long long __m128i_u __attribute__((__vector_size__(16), __may_alias__, __aligned__(1))); |
|
typedef long long __m256i_u __attribute__((__vector_size__(32), __may_alias__, __aligned__(1))); |
|
__attribute__ ((target("default"))) void more_testing(char* buf, int len) { } |
|
__attribute__ ((target("ssse3"))) void more_testing(char* buf, int len) |
|
{ |
|
int i; |
|
for (i = 0; i < (len-32); i+=32) { |
|
__m128i in8_1, in8_2; |
|
in8_1 = _mm_lddqu_si128((__m128i_u*)&buf[i]); |
|
in8_2 = _mm_lddqu_si128((__m128i_u*)&buf[i + 16]); |
|
} |
|
} |
|
]], [[if (test_ssse3(42) != 42 || test_sse2(42) != 42 || test_avx2(42) != 42) exit(1);]])],[CXX_OK=yes],[CXX_OK=no]) |
|
AC_LANG(C) |
|
if test x"$CXX_OK" = x"yes"; then |
|
# AC_MSG_RESULT() is called below. |
|
SIMD="x86_64" |
|
elif test x"$enable_simd" = x"yes"; then |
|
AC_MSG_RESULT(error) |
|
AC_MSG_ERROR(The SIMD compilation test failed. |
|
Omit --enable-simd to continue without it.) |
|
fi |
|
elif test x"$enable_simd" = x"yes"; then |
|
AC_MSG_RESULT(unavailable) |
|
AC_MSG_ERROR(The SIMD optimizations are currently x86_64 only. |
|
Omit --enable-simd to continue without it.) |
|
fi |
|
fi |
|
|
|
if test x"$SIMD" != x""; then |
|
AC_MSG_RESULT([yes ($SIMD)]) |
|
AC_DEFINE(HAVE_SIMD, 1, [Define to 1 to enable SIMD optimizations]) |
|
SIMD='$(SIMD_'"$SIMD)" |
|
# We only use c++ for its target attribute dispatching, disable unneeded bulky features |
|
CXXFLAGS="$CXXFLAGS -fno-exceptions -fno-rtti" |
|
# Apple often has "g++" as a symlink for clang. Try to find out the truth. |
|
CXX_VERSION=`$CXX --version 2>/dev/null | head -n 2` |
|
case "$CXX_VERSION" in |
|
*clang*) CXXFLAGS="$CXXFLAGS -fno-slp-vectorize" ;; # avoid a performance hit |
|
esac |
|
else |
|
AC_MSG_RESULT(no) |
|
fi |
|
|
|
AC_SUBST(SIMD) |
|
|
|
AC_MSG_CHECKING([if assembler accepts noexecstack]) |
|
OLD_CFLAGS="$CFLAGS" |
|
CFLAGS="$CFLAGS -Wa,--noexecstack" |
|
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ ]], [[return 0;]])], |
|
[ NOEXECSTACK='-Wa,--noexecstack' ; AC_MSG_RESULT(yes) ], |
|
[ NOEXECSTACK='' ; AC_MSG_RESULT(no) ]) |
|
CFLAGS="$OLD_CFLAGS" |
|
AC_SUBST(NOEXECSTACK) |
|
|
|
ASM= |
|
|
|
AC_MSG_CHECKING([whether to enable ASM optimizations]) |
|
AC_ARG_ENABLE(asm, |
|
AS_HELP_STRING([--disable-asm],[disable ASM optimizations])) |
|
|
|
if test x"$enable_asm" != x"no"; then |
|
if test x"$build_cpu" = x"x86_64"; then |
|
ASM="$build_cpu" |
|
elif test x"$enable_asm" = x"yes"; then |
|
AC_MSG_RESULT(unavailable) |
|
AC_MSG_ERROR(The ASM optimizations are currently x86_64 only. |
|
Omit --enable-asm to continue without it.) |
|
fi |
|
fi |
|
|
|
if test x"$ASM" != x""; then |
|
AC_MSG_RESULT([yes ($ASM)]) |
|
AC_DEFINE(HAVE_ASM, 1, [Define to 1 to enable ASM optimizations]) |
|
ASM='$(ASM_'"$ASM)" |
|
else |
|
AC_MSG_RESULT(no) |
|
fi |
|
|
|
AC_SUBST(ASM) |
|
|
# arrgh. libc in some old debian version screwed up the largefile |
# arrgh. libc in some old debian version screwed up the largefile |
# stuff, getting byte range locking wrong |
# stuff, getting byte range locking wrong |
AC_CACHE_CHECK([for broken largefile support],rsync_cv_HAVE_BROKEN_LARGEFILE,[ |
AC_CACHE_CHECK([for broken largefile support],rsync_cv_HAVE_BROKEN_LARGEFILE,[ |
Line 173 AC_RUN_IFELSE([AC_LANG_SOURCE([[
|
Line 311 AC_RUN_IFELSE([AC_LANG_SOURCE([[
|
#include <fcntl.h> |
#include <fcntl.h> |
#include <sys/types.h> |
#include <sys/types.h> |
#include <sys/wait.h> |
#include <sys/wait.h> |
|
#if HAVE_UNISTD_H |
|
#include <unistd.h> |
|
#endif |
|
|
int main(void) |
int main(void) |
{ |
{ |
Line 197 int main(void)
|
Line 338 int main(void)
|
} |
} |
wait(&status); |
wait(&status); |
unlink(tpl); |
unlink(tpl); |
exit(WEXITSTATUS(status)); | return WEXITSTATUS(status); |
} |
} |
]])],[rsync_cv_HAVE_BROKEN_LARGEFILE=yes],[rsync_cv_HAVE_BROKEN_LARGEFILE=no],[rsync_cv_HAVE_BROKEN_LARGEFILE=cross])]) |
]])],[rsync_cv_HAVE_BROKEN_LARGEFILE=yes],[rsync_cv_HAVE_BROKEN_LARGEFILE=no],[rsync_cv_HAVE_BROKEN_LARGEFILE=cross])]) |
if test x"$rsync_cv_HAVE_BROKEN_LARGEFILE" != x"yes"; then |
if test x"$rsync_cv_HAVE_BROKEN_LARGEFILE" != x"yes"; then |
Line 209 ipv6lib=none
|
Line 350 ipv6lib=none
|
ipv6trylibc=yes |
ipv6trylibc=yes |
|
|
AC_ARG_ENABLE(ipv6, |
AC_ARG_ENABLE(ipv6, |
AS_HELP_STRING([--disable-ipv6],[do not even try to use IPv6])) | AS_HELP_STRING([--disable-ipv6],[turn off IPv6 support])) |
if test x"$enable_ipv6" != x"no"; then |
if test x"$enable_ipv6" != x"no"; then |
AC_MSG_CHECKING([ipv6 stack type]) |
AC_MSG_CHECKING([ipv6 stack type]) |
for i in inria kame linux-glibc linux-inet6 solaris toshiba v6d zeta cygwin; do | for i in inria kame linux-glibc linux-inet6 solaris toshiba v6d zeta cygwin TANDEM; do |
case $i in |
case $i in |
inria) |
inria) |
# http://www.kame.net/ |
# http://www.kame.net/ |
Line 308 yes
|
Line 449 yes
|
[ipv6type=$i; |
[ipv6type=$i; |
AC_DEFINE(INET6, 1, [true if you have IPv6])]) |
AC_DEFINE(INET6, 1, [true if you have IPv6])]) |
;; |
;; |
|
TANDEM) |
|
AC_EGREP_CPP(yes, [ |
|
#include <netinet/ip6.h> |
|
#ifdef __TANDEM |
|
yes |
|
#endif], |
|
[ipv6type=$i; |
|
AC_DEFINE(INET6, 1, [true if you have IPv6])]) |
|
;; |
esac |
esac |
if test "$ipv6type" != "unknown"; then |
if test "$ipv6type" != "unknown"; then |
break |
break |
Line 344 AC_CHECK_HEADERS(sys/fcntl.h sys/select.h fcntl.h sys/
|
Line 494 AC_CHECK_HEADERS(sys/fcntl.h sys/select.h fcntl.h sys/
|
unistd.h utime.h grp.h compat.h sys/param.h ctype.h sys/wait.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/ioctl.h sys/filio.h string.h stdlib.h sys/socket.h sys/mode.h \ |
sys/un.h sys/attr.h mcheck.h arpa/inet.h arpa/nameser.h locale.h \ |
sys/un.h sys/attr.h mcheck.h arpa/inet.h arpa/nameser.h locale.h \ |
|
mysql/mysql.h sqlite3.h \ |
netdb.h malloc.h float.h limits.h iconv.h libcharset.h langinfo.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 \ | sys/acl.h acl/libacl.h attr/xattr.h sys/xattr.h sys/extattr.h dl.h \ |
popt.h popt/popt.h linux/falloc.h netinet/in_systm.h netinet/ip.h \ |
popt.h popt/popt.h linux/falloc.h netinet/in_systm.h netinet/ip.h \ |
zlib.h) | zlib.h xxhash.h openssl/md4.h openssl/md5.h zstd.h lz4.h sys/file.h) |
AC_HEADER_MAJOR | AC_HEADER_MAJOR_FIXED |
|
|
|
AC_MSG_CHECKING([whether to enable use of openssl crypto library]) |
|
AC_ARG_ENABLE([openssl], |
|
AS_HELP_STRING([--disable-openssl],[disable openssl crypto library])) |
|
AH_TEMPLATE([USE_OPENSSL], |
|
[Undefine if you do not want to use openssl crypto library. By default this is defined.]) |
|
if test x"$enable_openssl" != x"no"; then |
|
if test x"$ac_cv_header_openssl_md4_h" = x"yes" && test x"$ac_cv_header_openssl_md5_h" = x"yes"; then |
|
AC_MSG_RESULT(yes) |
|
AC_SEARCH_LIBS(MD5_Init, crypto, |
|
[AC_DEFINE(USE_OPENSSL)], |
|
[err_msg="$err_msg$nl- Failed to find MD5_Init function in openssl crypto lib."; |
|
no_lib="$no_lib openssl"]) |
|
else |
|
AC_MSG_RESULT(no) |
|
err_msg="$err_msg$nl- Failed to find openssl/md4.h and openssl/md5.h for openssl crypto lib support." |
|
no_lib="$no_lib openssl" |
|
fi |
|
else |
|
AC_MSG_RESULT(no) |
|
fi |
|
|
|
AC_MSG_CHECKING([whether to enable xxhash checksum support]) |
|
AC_ARG_ENABLE([xxhash], |
|
AS_HELP_STRING([--disable-xxhash],[disable xxhash checksums])) |
|
AH_TEMPLATE([SUPPORT_XXHASH], |
|
[Undefine if you do not want xxhash checksums. By default this is defined.]) |
|
if test x"$enable_xxhash" != x"no"; then |
|
if test x"$ac_cv_header_xxhash_h" = x"yes"; then |
|
AC_MSG_RESULT(yes) |
|
AC_SEARCH_LIBS(XXH64_createState, xxhash, |
|
[AC_DEFINE(SUPPORT_XXHASH)], |
|
[err_msg="$err_msg$nl- Failed to find XXH64_createState function in xxhash lib."; |
|
no_lib="$no_lib xxhash"]) |
|
else |
|
AC_MSG_RESULT(no) |
|
err_msg="$err_msg$nl- Failed to find xxhash.h for xxhash checksum support."; |
|
no_lib="$no_lib xxhash" |
|
fi |
|
else |
|
AC_MSG_RESULT(no) |
|
fi |
|
|
|
AC_MSG_CHECKING([whether to enable zstd compression]) |
|
AC_ARG_ENABLE([zstd], |
|
AC_HELP_STRING([--disable-zstd], [disable zstd compression])) |
|
AH_TEMPLATE([SUPPORT_ZSTD], |
|
[Undefine if you do not want zstd compression. By default this is defined.]) |
|
if test x"$enable_zstd" != x"no"; then |
|
if test x"$ac_cv_header_zstd_h" = x"yes"; then |
|
AC_MSG_RESULT(yes) |
|
AC_SEARCH_LIBS(ZSTD_minCLevel, zstd, |
|
[AC_DEFINE(SUPPORT_ZSTD)], |
|
[err_msg="$err_msg$nl- Failed to find ZSTD_minCLevel function in zstd lib."; |
|
no_lib="$no_lib zstd"]) |
|
else |
|
AC_MSG_RESULT(no) |
|
err_msg="$err_msg$nl- Failed to find zstd.h for zstd compression support."; |
|
no_lib="$no_lib zstd" |
|
fi |
|
else |
|
AC_MSG_RESULT(no) |
|
fi |
|
|
|
AC_MSG_CHECKING([whether to enable LZ4 compression]) |
|
AC_ARG_ENABLE([lz4], |
|
AC_HELP_STRING([--disable-lz4], [disable LZ4 compression])) |
|
AH_TEMPLATE([SUPPORT_LZ4], |
|
[Undefine if you do not want LZ4 compression. By default this is defined.]) |
|
if test x"$enable_lz4" != x"no"; then |
|
if test x"$ac_cv_header_lz4_h" = x"yes"; then |
|
AC_MSG_RESULT(yes) |
|
AC_SEARCH_LIBS(LZ4_compress_default, lz4, |
|
[AC_DEFINE(SUPPORT_LZ4)], |
|
[err_msg="$err_msg$nl- Failed to find LZ4_compress_default function in lz4 lib."; |
|
no_lib="$no_lib lz4"]) |
|
else |
|
AC_MSG_RESULT(no) |
|
err_msg="$err_msg$nl- Failed to find lz4.h for lz4 compression support." |
|
no_lib="$no_lib lz4" |
|
fi |
|
else |
|
AC_MSG_RESULT(no) |
|
fi |
|
|
|
if test x"$no_lib" != x; then |
|
echo "" |
|
echo "Configure found the following issues:" |
|
echo "$err_msg" |
|
echo "" |
|
echo "See the INSTALL file for hints on how to install the missing libraries and/or" |
|
echo "how to generate (or fetch) man pages:" |
|
echo " https://github.com/WayneD/rsync/blob/master/INSTALL.md" |
|
echo "" |
|
echo "To disable one or more features, the relevant configure options are:" |
|
for lib in $no_lib; do |
|
echo " --disable-$lib" |
|
done |
|
echo "" |
|
AC_MSG_ERROR(Aborting configure run) |
|
fi |
|
|
AC_CACHE_CHECK([if makedev takes 3 args],rsync_cv_MAKEDEV_TAKES_3_ARGS,[ |
AC_CACHE_CHECK([if makedev takes 3 args],rsync_cv_MAKEDEV_TAKES_3_ARGS,[ |
AC_RUN_IFELSE([AC_LANG_SOURCE([[ |
AC_RUN_IFELSE([AC_LANG_SOURCE([[ |
#include <sys/types.h> |
#include <sys/types.h> |
Line 366 int main(void)
|
Line 618 int main(void)
|
{ |
{ |
dev_t dev = makedev(0, 5, 7); |
dev_t dev = makedev(0, 5, 7); |
if (major(dev) != 5 || minor(dev) != 7) |
if (major(dev) != 5 || minor(dev) != 7) |
exit(1); | return 1; |
return 0; |
return 0; |
} |
} |
]])],[rsync_cv_MAKEDEV_TAKES_3_ARGS=yes],[rsync_cv_MAKEDEV_TAKES_3_ARGS=no],[rsync_cv_MAKEDEV_TAKES_3_ARGS=no])]) |
]])],[rsync_cv_MAKEDEV_TAKES_3_ARGS=yes],[rsync_cv_MAKEDEV_TAKES_3_ARGS=no],[rsync_cv_MAKEDEV_TAKES_3_ARGS=no])]) |
Line 386 AC_CHECK_SIZEOF(int64_t)
|
Line 638 AC_CHECK_SIZEOF(int64_t)
|
AC_CHECK_SIZEOF(off_t) |
AC_CHECK_SIZEOF(off_t) |
AC_CHECK_SIZEOF(off64_t) |
AC_CHECK_SIZEOF(off64_t) |
AC_CHECK_SIZEOF(time_t) |
AC_CHECK_SIZEOF(time_t) |
|
AC_CHECK_SIZEOF(char*) |
|
|
AC_C_INLINE |
AC_C_INLINE |
|
|
Line 400 AC_CHECK_TYPES([mode_t,off_t,size_t,pid_t,id_t])
|
Line 653 AC_CHECK_TYPES([mode_t,off_t,size_t,pid_t,id_t])
|
AC_TYPE_GETGROUPS |
AC_TYPE_GETGROUPS |
AC_CHECK_MEMBERS([struct stat.st_rdev, |
AC_CHECK_MEMBERS([struct stat.st_rdev, |
struct stat.st_mtimensec, |
struct stat.st_mtimensec, |
|
struct stat.st_mtimespec.tv_nsec, |
struct stat.st_mtim.tv_nsec],,,[ |
struct stat.st_mtim.tv_nsec],,,[ |
#ifdef HAVE_SYS_TYPES_H |
#ifdef HAVE_SYS_TYPES_H |
#include <sys/types.h> |
#include <sys/types.h> |
Line 479 size_t iconv();
|
Line 733 size_t iconv();
|
#endif |
#endif |
]], [[]])],[am_cv_proto_iconv_arg1=""],[am_cv_proto_iconv_arg1="const"]) |
]], [[]])],[am_cv_proto_iconv_arg1=""],[am_cv_proto_iconv_arg1="const"]) |
am_cv_proto_iconv="extern size_t iconv (iconv_t cd, $am_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);"]) |
am_cv_proto_iconv="extern size_t iconv (iconv_t cd, $am_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);"]) |
am_cv_proto_iconv=`echo "[$]am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'` | am_cv_proto_iconv=`echo "[$]am_cv_proto_iconv" | tr -s ' ' | sed 's/( /(/'` |
AC_MSG_RESULT([$]{ac_t:- |
AC_MSG_RESULT([$]{ac_t:- |
}[$]am_cv_proto_iconv) |
}[$]am_cv_proto_iconv) |
AC_DEFINE_UNQUOTED(ICONV_CONST, $am_cv_proto_iconv_arg1, |
AC_DEFINE_UNQUOTED(ICONV_CONST, $am_cv_proto_iconv_arg1, |
Line 591 dnl AC_FUNC_MEMCMP
|
Line 845 dnl AC_FUNC_MEMCMP
|
|
|
AC_FUNC_UTIME_NULL |
AC_FUNC_UTIME_NULL |
AC_FUNC_ALLOCA |
AC_FUNC_ALLOCA |
AC_CHECK_FUNCS(waitpid wait4 getcwd strdup chown chmod lchmod mknod mkfifo \ | AC_CHECK_FUNCS(waitpid wait4 getcwd chown chmod lchmod mknod mkfifo \ |
fchmod fstat ftruncate strchr readlink link utime utimes lutimes strftime \ |
fchmod fstat ftruncate strchr readlink link utime utimes lutimes strftime \ |
|
chflags getattrlist mktime innetgr linkat \ |
memmove lchown vsnprintf snprintf vasprintf asprintf setsid strpbrk \ |
memmove lchown vsnprintf snprintf vasprintf asprintf setsid strpbrk \ |
strlcat strlcpy strtol mallinfo getgroups setgroups geteuid getegid \ |
strlcat strlcpy strtol mallinfo getgroups setgroups geteuid getegid \ |
setlocale setmode open64 lseek64 mkstemp64 mtrace va_copy __va_copy \ |
setlocale setmode open64 lseek64 mkstemp64 mtrace va_copy __va_copy \ |
seteuid strerror putenv iconv_open locale_charset nl_langinfo getxattr \ |
seteuid strerror putenv iconv_open locale_charset nl_langinfo getxattr \ |
extattr_get_link sigaction sigprocmask setattrlist getgrouplist \ |
extattr_get_link sigaction sigprocmask setattrlist getgrouplist \ |
initgroups utimensat posix_fallocate attropen setvbuf usleep) | initgroups utimensat posix_fallocate attropen setvbuf nanosleep usleep) |
|
|
dnl cygwin iconv.h defines iconv_open as libiconv_open |
dnl cygwin iconv.h defines iconv_open as libiconv_open |
if test x"$ac_cv_func_iconv_open" != x"yes"; then |
if test x"$ac_cv_func_iconv_open" != x"yes"; then |
Line 614 if test x"$rsync_cv_have_fallocate" = x"yes"; then
|
Line 869 if test x"$rsync_cv_have_fallocate" = x"yes"; then
|
AC_DEFINE(HAVE_FALLOCATE, 1, [Define to 1 if you have the fallocate function and it compiles and links without error]) |
AC_DEFINE(HAVE_FALLOCATE, 1, [Define to 1 if you have the fallocate function and it compiles and links without error]) |
fi |
fi |
|
|
|
AC_MSG_CHECKING([for FALLOC_FL_PUNCH_HOLE]) |
|
AC_PREPROC_IFELSE([AC_LANG_SOURCE([[ |
|
#define _GNU_SOURCE 1 |
|
#include <linux/falloc.h> |
|
#ifndef FALLOC_FL_PUNCH_HOLE |
|
#error FALLOC_FL_PUNCH_HOLE is missing |
|
#endif |
|
]])], [ |
|
AC_MSG_RESULT([yes]) |
|
AC_DEFINE([HAVE_FALLOC_FL_PUNCH_HOLE], [1], [Define if FALLOC_FL_PUNCH_HOLE is available.]) |
|
], [ |
|
AC_MSG_RESULT([no]) |
|
] |
|
) |
|
|
|
AC_MSG_CHECKING([for FALLOC_FL_ZERO_RANGE]) |
|
AC_PREPROC_IFELSE([AC_LANG_SOURCE([[ |
|
#define _GNU_SOURCE 1 |
|
#include <linux/falloc.h> |
|
#ifndef FALLOC_FL_ZERO_RANGE |
|
#error FALLOC_FL_ZERO_RANGE is missing |
|
#endif |
|
]])], [ |
|
AC_MSG_RESULT([yes]) |
|
AC_DEFINE([HAVE_FALLOC_FL_ZERO_RANGE], [1], [Define if FALLOC_FL_ZERO_RANGE is available.]) |
|
], [ |
|
AC_MSG_RESULT([no]) |
|
] |
|
) |
|
|
AC_CACHE_CHECK([for SYS_fallocate],rsync_cv_have_sys_fallocate,[ |
AC_CACHE_CHECK([for SYS_fallocate],rsync_cv_have_sys_fallocate,[ |
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/syscall.h> |
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/syscall.h> |
|
#include <unistd.h> |
#include <sys/types.h>]], [[syscall(SYS_fallocate, 0, 0, (loff_t)0, (loff_t)0);]])],[rsync_cv_have_sys_fallocate=yes],[rsync_cv_have_sys_fallocate=no])]) |
#include <sys/types.h>]], [[syscall(SYS_fallocate, 0, 0, (loff_t)0, (loff_t)0);]])],[rsync_cv_have_sys_fallocate=yes],[rsync_cv_have_sys_fallocate=no])]) |
if test x"$rsync_cv_have_sys_fallocate" = x"yes"; then |
if test x"$rsync_cv_have_sys_fallocate" = x"yes"; then |
AC_DEFINE(HAVE_SYS_FALLOCATE, 1, [Define to 1 if you have the SYS_fallocate syscall number]) |
AC_DEFINE(HAVE_SYS_FALLOCATE, 1, [Define to 1 if you have the SYS_fallocate syscall number]) |
Line 654 AC_ARG_ENABLE(iconv,
|
Line 940 AC_ARG_ENABLE(iconv,
|
AS_HELP_STRING([--disable-iconv],[disable rsync's --iconv option]), |
AS_HELP_STRING([--disable-iconv],[disable rsync's --iconv option]), |
[], [enable_iconv=$enable_iconv_open]) |
[], [enable_iconv=$enable_iconv_open]) |
AH_TEMPLATE([ICONV_OPTION], |
AH_TEMPLATE([ICONV_OPTION], |
[Define if you want the --iconv option. Specifing a value will set the | [Define if you want the --iconv option. Specifying a value will set the |
default iconv setting (a NULL means no --iconv processing by default).]) |
default iconv setting (a NULL means no --iconv processing by default).]) |
if test x"$enable_iconv" != x"no"; then |
if test x"$enable_iconv" != x"no"; then |
if test x"$enable_iconv" = x"yes"; then |
if test x"$enable_iconv" = x"yes"; then |
Line 665 if test x"$enable_iconv" != x"no"; then
|
Line 951 if test x"$enable_iconv" != x"no"; then
|
AC_DEFINE(UTF8_CHARSET, "UTF-8", [String to pass to iconv() for the UTF-8 charset.]) |
AC_DEFINE(UTF8_CHARSET, "UTF-8", [String to pass to iconv() for the UTF-8 charset.]) |
fi |
fi |
|
|
|
AC_ARG_WITH([gssapi], |
|
[AS_HELP_STRING([--with-gssapi], |
|
[support GSSAPI authentication @<:@default=check@:>@])], |
|
[], |
|
[with_gssapi=check]) |
|
|
|
AH_TEMPLATE([GSSAPI_OPTION], |
|
[Define if you want GSSAPI authentication. Specifing a value will set the search path.]) |
|
|
|
AS_IF([test "x$with_gssapi" != xno], |
|
[AC_SEARCH_LIBS([gss_import_name], gss gssapi_krb5 , |
|
[AC_CHECK_HEADERS(gssapi/gssapi_generic.h gssapi/gssapi.h) ] |
|
[ AC_DEFINE([GSSAPI_OPTION], [1]) ] |
|
, |
|
[if test "x$with_gssapi" = xcheck; then |
|
AC_MSG_FAILURE( |
|
[--with-gssapi was given, but test for function failed]) |
|
fi |
|
]) |
|
]) |
|
|
|
if test x"$enable_gssapi" != x"no"; then |
|
AC_DEFINE(GSSAPI_OPTION, 1) |
|
fi |
|
|
AC_CACHE_CHECK([whether chown() modifies symlinks],rsync_cv_chown_modifies_symlink,[ |
AC_CACHE_CHECK([whether chown() modifies symlinks],rsync_cv_chown_modifies_symlink,[ |
AC_RUN_IFELSE([AC_LANG_SOURCE([[ |
AC_RUN_IFELSE([AC_LANG_SOURCE([[ |
#if HAVE_UNISTD_H |
#if HAVE_UNISTD_H |
Line 672 AC_CACHE_CHECK([whether chown() modifies symlinks],rsy
|
Line 983 AC_CACHE_CHECK([whether chown() modifies symlinks],rsy
|
#endif |
#endif |
#include <stdlib.h> |
#include <stdlib.h> |
#include <errno.h> |
#include <errno.h> |
main() { | int main(void) { |
char const *dangling_symlink = "conftest.dangle"; |
char const *dangling_symlink = "conftest.dangle"; |
unlink(dangling_symlink); |
unlink(dangling_symlink); |
if (symlink("conftest.no-such", dangling_symlink) < 0) abort(); |
if (symlink("conftest.no-such", dangling_symlink) < 0) abort(); |
if (chown(dangling_symlink, getuid(), getgid()) < 0 && errno == ENOENT) exit(1); | if (chown(dangling_symlink, getuid(), getgid()) < 0 && errno == ENOENT) return 1; |
exit(0); | return 0; |
}]])],[rsync_cv_chown_modifies_symlink=yes],[rsync_cv_chown_modifies_symlink=no],[rsync_cv_chown_modifies_symlink=no])]) |
}]])],[rsync_cv_chown_modifies_symlink=yes],[rsync_cv_chown_modifies_symlink=no],[rsync_cv_chown_modifies_symlink=no])]) |
if test $rsync_cv_chown_modifies_symlink = yes; then |
if test $rsync_cv_chown_modifies_symlink = yes; then |
AC_DEFINE(CHOWN_MODIFIES_SYMLINK, 1, [Define to 1 if chown modifies symlinks.]) |
AC_DEFINE(CHOWN_MODIFIES_SYMLINK, 1, [Define to 1 if chown modifies symlinks.]) |
Line 685 fi
|
Line 996 fi
|
|
|
AC_CACHE_CHECK([whether link() can hard-link symlinks],rsync_cv_can_hardlink_symlink,[ |
AC_CACHE_CHECK([whether link() can hard-link symlinks],rsync_cv_can_hardlink_symlink,[ |
AC_RUN_IFELSE([AC_LANG_SOURCE([[ |
AC_RUN_IFELSE([AC_LANG_SOURCE([[ |
|
#ifdef HAVE_FCNTL_H |
|
# include <fcntl.h> |
|
#elif defined HAVE_SYS_FCNTL_H |
|
# include <sys/fcntl.h> |
|
#endif |
#if HAVE_UNISTD_H |
#if HAVE_UNISTD_H |
# include <unistd.h> |
# include <unistd.h> |
#endif |
#endif |
#include <stdlib.h> |
#include <stdlib.h> |
#include <errno.h> |
#include <errno.h> |
#define FILENAME "conftest.dangle" |
#define FILENAME "conftest.dangle" |
main() { | int main(void) { |
unlink(FILENAME); |
unlink(FILENAME); |
if (symlink("conftest.no-such", FILENAME) < 0) abort(); |
if (symlink("conftest.no-such", FILENAME) < 0) abort(); |
unlink(FILENAME "2"); |
unlink(FILENAME "2"); |
if (link(FILENAME, FILENAME "2") < 0) exit(1); | #ifdef HAVE_LINKAT |
exit(0); | if (linkat(AT_FDCWD, FILENAME, AT_FDCWD, FILENAME "2", 0) < 0) return 1; |
| #else |
| if (link(FILENAME, FILENAME "2") < 0) return 1; |
| #endif |
| return 0; |
}]])],[rsync_cv_can_hardlink_symlink=yes],[rsync_cv_can_hardlink_symlink=no],[rsync_cv_can_hardlink_symlink=no])]) |
}]])],[rsync_cv_can_hardlink_symlink=yes],[rsync_cv_can_hardlink_symlink=no],[rsync_cv_can_hardlink_symlink=no])]) |
if test $rsync_cv_can_hardlink_symlink = yes; then |
if test $rsync_cv_can_hardlink_symlink = yes; then |
AC_DEFINE(CAN_HARDLINK_SYMLINK, 1, [Define to 1 if link() can hard-link symlinks.]) |
AC_DEFINE(CAN_HARDLINK_SYMLINK, 1, [Define to 1 if link() can hard-link symlinks.]) |
Line 707 AC_CACHE_CHECK([whether link() can hard-link special f
|
Line 1027 AC_CACHE_CHECK([whether link() can hard-link special f
|
#if HAVE_UNISTD_H |
#if HAVE_UNISTD_H |
# include <unistd.h> |
# include <unistd.h> |
#endif |
#endif |
|
#ifdef HAVE_SYS_STAT_H |
|
#include <sys/stat.h> |
|
#endif |
#include <stdlib.h> |
#include <stdlib.h> |
#include <errno.h> |
#include <errno.h> |
#define FILENAME "conftest.fifi" |
#define FILENAME "conftest.fifi" |
main() { | int main(void) { |
unlink(FILENAME); |
unlink(FILENAME); |
if (mkfifo(FILENAME, 0777) < 0) abort(); |
if (mkfifo(FILENAME, 0777) < 0) abort(); |
unlink(FILENAME "2"); |
unlink(FILENAME "2"); |
if (link(FILENAME, FILENAME "2") < 0) exit(1); | if (link(FILENAME, FILENAME "2") < 0) return 1; |
exit(0); | return 0; |
}]])],[rsync_cv_can_hardlink_special=yes],[rsync_cv_can_hardlink_special=no],[rsync_cv_can_hardlink_special=no])]) |
}]])],[rsync_cv_can_hardlink_special=yes],[rsync_cv_can_hardlink_special=no],[rsync_cv_can_hardlink_special=no])]) |
if test $rsync_cv_can_hardlink_special = yes; then |
if test $rsync_cv_can_hardlink_special = yes; then |
AC_DEFINE(CAN_HARDLINK_SPECIAL, 1, [Define to 1 if link() can hard-link special files.]) |
AC_DEFINE(CAN_HARDLINK_SPECIAL, 1, [Define to 1 if link() can hard-link special files.]) |
fi |
fi |
|
|
|
AC_ARG_ENABLE(slp, [ --disable-slp turn off SLP support, defaults to on]) |
|
AC_ARG_WITH(openslp-libs, [ --with-openslp-libs set directory for OpenSLP library], |
|
LDFLAGS="-L$withval $LDFLAGS" |
|
DSOFLAGS="-L$withval $DSOFLAGS",) |
|
AC_ARG_WITH(openslp-includes, [ --with-openslp-includes set directory for OpenSLP includes], |
|
CFLAGS="-I$withval $CFLAGS" |
|
CXXFLAGS="-I$withval $CXXFLAGS" |
|
CPPFLAGS="-I$withval $CPPFLAGS",) |
|
|
|
LIBSLP="" |
|
SLPOBJ="" |
|
|
|
if test x$enable_slp != xno; then |
|
AC_CHECK_HEADER(slp.h, |
|
AC_CHECK_LIB(slp, SLPOpen, |
|
AC_DEFINE(HAVE_LIBSLP, 1, [Define to 1 for SLP support]) |
|
SLPOBJ="srvreg.o srvloc.o" |
|
LIBSLP="-lslp")) |
|
fi |
|
|
|
AC_SUBST(LIBSLP) |
|
AC_SUBST(SLPOBJ) |
|
|
AC_CACHE_CHECK([for working socketpair],rsync_cv_HAVE_SOCKETPAIR,[ |
AC_CACHE_CHECK([for working socketpair],rsync_cv_HAVE_SOCKETPAIR,[ |
AC_RUN_IFELSE([AC_LANG_SOURCE([[ |
AC_RUN_IFELSE([AC_LANG_SOURCE([[ |
#include <sys/types.h> |
#include <sys/types.h> |
#include <sys/socket.h> |
#include <sys/socket.h> |
|
|
main() { | int main(void) { |
int fd[2]; |
int fd[2]; |
exit((socketpair(AF_UNIX, SOCK_STREAM, 0, fd) != -1) ? 0 : 1); | return (socketpair(AF_UNIX, SOCK_STREAM, 0, fd) != -1) ? 0 : 1; |
}]])],[rsync_cv_HAVE_SOCKETPAIR=yes],[rsync_cv_HAVE_SOCKETPAIR=no],[rsync_cv_HAVE_SOCKETPAIR=cross])]) |
}]])],[rsync_cv_HAVE_SOCKETPAIR=yes],[rsync_cv_HAVE_SOCKETPAIR=no],[rsync_cv_HAVE_SOCKETPAIR=cross])]) |
if test x"$rsync_cv_HAVE_SOCKETPAIR" = x"yes"; then |
if test x"$rsync_cv_HAVE_SOCKETPAIR" = x"yes"; then |
AC_DEFINE(HAVE_SOCKETPAIR, 1, [Define to 1 if you have the "socketpair" function]) |
AC_DEFINE(HAVE_SOCKETPAIR, 1, [Define to 1 if you have the "socketpair" function]) |
Line 793 fi
|
Line 1139 fi
|
AC_CACHE_CHECK([for broken readdir],rsync_cv_HAVE_BROKEN_READDIR,[ |
AC_CACHE_CHECK([for broken readdir],rsync_cv_HAVE_BROKEN_READDIR,[ |
AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <sys/types.h> |
AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <sys/types.h> |
#include <dirent.h> |
#include <dirent.h> |
main() { struct dirent *di; DIR *d = opendir("."); di = readdir(d); | int main(void) { struct dirent *di; DIR *d = opendir("."); di = readdir(d); |
if (di && di->d_name[-2] == '.' && di->d_name[-1] == 0 && |
if (di && di->d_name[-2] == '.' && di->d_name[-1] == 0 && |
di->d_name[0] == 0) exit(0); exit(1);} ]])],[rsync_cv_HAVE_BROKEN_READDIR=yes],[rsync_cv_HAVE_BROKEN_READDIR=no],[rsync_cv_HAVE_BROKEN_READDIR=cross])]) | di->d_name[0] == 0) return 0; return 1;} ]])],[rsync_cv_HAVE_BROKEN_READDIR=yes],[rsync_cv_HAVE_BROKEN_READDIR=no],[rsync_cv_HAVE_BROKEN_READDIR=cross])]) |
if test x"$rsync_cv_HAVE_BROKEN_READDIR" = x"yes"; then |
if test x"$rsync_cv_HAVE_BROKEN_READDIR" = x"yes"; then |
AC_DEFINE(HAVE_BROKEN_READDIR, 1, [Define to 1 if readdir() is broken]) |
AC_DEFINE(HAVE_BROKEN_READDIR, 1, [Define to 1 if readdir() is broken]) |
fi |
fi |
|
|
AC_CACHE_CHECK([for utimbuf],rsync_cv_HAVE_STRUCT_UTIMBUF,[ |
AC_CACHE_CHECK([for utimbuf],rsync_cv_HAVE_STRUCT_UTIMBUF,[ |
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/types.h> |
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/types.h> |
#include <utime.h>]], [[struct utimbuf tbuf; tbuf.actime = 0; tbuf.modtime = 1; exit(utime("foo.c",&tbuf));]])],[rsync_cv_HAVE_STRUCT_UTIMBUF=yes],[rsync_cv_HAVE_STRUCT_UTIMBUF=no])]) | #include <utime.h>]], [[struct utimbuf tbuf; tbuf.actime = 0; tbuf.modtime = 1; return utime("foo.c",&tbuf);]])],[rsync_cv_HAVE_STRUCT_UTIMBUF=yes],[rsync_cv_HAVE_STRUCT_UTIMBUF=no])]) |
if test x"$rsync_cv_HAVE_STRUCT_UTIMBUF" = x"yes"; then |
if test x"$rsync_cv_HAVE_STRUCT_UTIMBUF" = x"yes"; then |
AC_DEFINE(HAVE_STRUCT_UTIMBUF, 1, [Define to 1 if you have the "struct utimbuf" type]) |
AC_DEFINE(HAVE_STRUCT_UTIMBUF, 1, [Define to 1 if you have the "struct utimbuf" type]) |
fi |
fi |
|
|
AC_CACHE_CHECK([if gettimeofday takes tz argument],rsync_cv_HAVE_GETTIMEOFDAY_TZ,[ |
AC_CACHE_CHECK([if gettimeofday takes tz argument],rsync_cv_HAVE_GETTIMEOFDAY_TZ,[ |
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/time.h> |
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/time.h> |
#include <unistd.h>]], [[struct timeval tv; exit(gettimeofday(&tv, NULL));]])],[rsync_cv_HAVE_GETTIMEOFDAY_TZ=yes],[rsync_cv_HAVE_GETTIMEOFDAY_TZ=no])]) | #include <unistd.h>]], [[struct timeval tv; return gettimeofday(&tv, NULL);]])],[rsync_cv_HAVE_GETTIMEOFDAY_TZ=yes],[rsync_cv_HAVE_GETTIMEOFDAY_TZ=no])]) |
if test x"$rsync_cv_HAVE_GETTIMEOFDAY_TZ" != x"no"; then |
if test x"$rsync_cv_HAVE_GETTIMEOFDAY_TZ" != x"no"; then |
AC_DEFINE(HAVE_GETTIMEOFDAY_TZ, 1, [Define to 1 if gettimeofday() takes a time-zone arg]) |
AC_DEFINE(HAVE_GETTIMEOFDAY_TZ, 1, [Define to 1 if gettimeofday() takes a time-zone arg]) |
fi |
fi |
Line 818 AC_CACHE_CHECK([for C99 vsnprintf],rsync_cv_HAVE_C99_V
|
Line 1164 AC_CACHE_CHECK([for C99 vsnprintf],rsync_cv_HAVE_C99_V
|
AC_RUN_IFELSE([AC_LANG_SOURCE([[ |
AC_RUN_IFELSE([AC_LANG_SOURCE([[ |
#include <sys/types.h> |
#include <sys/types.h> |
#include <stdarg.h> |
#include <stdarg.h> |
|
#include <stdio.h> |
|
#include <stdlib.h> |
|
#include <string.h> |
void foo(const char *format, ...) { |
void foo(const char *format, ...) { |
va_list ap; |
va_list ap; |
int len; |
int len; |
char buf[5]; | static char buf[] = "12345678901234567890"; |
|
|
va_start(ap, format); |
va_start(ap, format); |
len = vsnprintf(0, 0, format, ap); |
len = vsnprintf(0, 0, format, ap); |
Line 829 void foo(const char *format, ...) {
|
Line 1178 void foo(const char *format, ...) {
|
if (len != 5) exit(1); |
if (len != 5) exit(1); |
|
|
if (snprintf(buf, 3, "hello") != 5 || strcmp(buf, "he") != 0) exit(1); |
if (snprintf(buf, 3, "hello") != 5 || strcmp(buf, "he") != 0) exit(1); |
|
|
exit(0); |
|
} |
} |
main() { foo("hello"); } | int main(void) { foo("hello"); return 0; } |
]])],[rsync_cv_HAVE_C99_VSNPRINTF=yes],[rsync_cv_HAVE_C99_VSNPRINTF=no],[rsync_cv_HAVE_C99_VSNPRINTF=cross])]) |
]])],[rsync_cv_HAVE_C99_VSNPRINTF=yes],[rsync_cv_HAVE_C99_VSNPRINTF=no],[rsync_cv_HAVE_C99_VSNPRINTF=cross])]) |
if test x"$rsync_cv_HAVE_C99_VSNPRINTF" = x"yes"; then |
if test x"$rsync_cv_HAVE_C99_VSNPRINTF" = x"yes"; then |
AC_DEFINE(HAVE_C99_VSNPRINTF, 1, [Define to 1 if vsprintf has a C99-compatible return value]) |
AC_DEFINE(HAVE_C99_VSNPRINTF, 1, [Define to 1 if vsprintf has a C99-compatible return value]) |
Line 844 AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <stdlib.h>
|
Line 1191 AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <stdlib.h>
|
#include <sys/types.h> |
#include <sys/types.h> |
#include <sys/stat.h> |
#include <sys/stat.h> |
#include <unistd.h> |
#include <unistd.h> |
main() { | int main(void) { |
struct stat st; |
struct stat st; |
char tpl[20]="/tmp/test.XXXXXX"; |
char tpl[20]="/tmp/test.XXXXXX"; |
int fd = mkstemp(tpl); |
int fd = mkstemp(tpl); |
if (fd == -1) exit(1); | if (fd == -1) return 1; |
unlink(tpl); |
unlink(tpl); |
if (fstat(fd, &st) != 0) exit(1); | if (fstat(fd, &st) != 0) return 1; |
if ((st.st_mode & 0777) != 0600) exit(1); | if ((st.st_mode & 0777) != 0600) return 1; |
exit(0); | return 0; |
}]])],[rsync_cv_HAVE_SECURE_MKSTEMP=yes],[rsync_cv_HAVE_SECURE_MKSTEMP=no],[rsync_cv_HAVE_SECURE_MKSTEMP=cross])]) |
}]])],[rsync_cv_HAVE_SECURE_MKSTEMP=yes],[rsync_cv_HAVE_SECURE_MKSTEMP=no],[rsync_cv_HAVE_SECURE_MKSTEMP=cross])]) |
if test x"$rsync_cv_HAVE_SECURE_MKSTEMP" = x"yes"; then |
if test x"$rsync_cv_HAVE_SECURE_MKSTEMP" = x"yes"; then |
case $host_os in |
case $host_os in |
Line 874 AC_RUN_IFELSE([AC_LANG_SOURCE([[
|
Line 1221 AC_RUN_IFELSE([AC_LANG_SOURCE([[
|
#include <stdio.h> |
#include <stdio.h> |
#include <sys/stat.h> |
#include <sys/stat.h> |
#include <errno.h> |
#include <errno.h> |
main() { int rc, ec; char *fn = "fifo-test"; | #if HAVE_UNISTD_H |
| # include <unistd.h> |
| #endif |
| int main(void) { int rc, ec; char *fn = "fifo-test"; |
unlink(fn); rc = mknod(fn,S_IFIFO,0600); ec = errno; unlink(fn); |
unlink(fn); rc = mknod(fn,S_IFIFO,0600); ec = errno; unlink(fn); |
if (rc) {printf("(%d %d) ",rc,ec); return ec;} |
if (rc) {printf("(%d %d) ",rc,ec); return ec;} |
return 0;}]])],[rsync_cv_MKNOD_CREATES_FIFOS=yes],[rsync_cv_MKNOD_CREATES_FIFOS=no],[rsync_cv_MKNOD_CREATES_FIFOS=cross])]) |
return 0;}]])],[rsync_cv_MKNOD_CREATES_FIFOS=yes],[rsync_cv_MKNOD_CREATES_FIFOS=no],[rsync_cv_MKNOD_CREATES_FIFOS=cross])]) |
Line 887 AC_RUN_IFELSE([AC_LANG_SOURCE([[
|
Line 1237 AC_RUN_IFELSE([AC_LANG_SOURCE([[
|
#include <stdio.h> |
#include <stdio.h> |
#include <sys/stat.h> |
#include <sys/stat.h> |
#include <errno.h> |
#include <errno.h> |
main() { int rc, ec; char *fn = "sock-test"; | #if HAVE_UNISTD_H |
| # include <unistd.h> |
| #endif |
| int main(void) { int rc, ec; char *fn = "sock-test"; |
unlink(fn); rc = mknod(fn,S_IFSOCK,0600); ec = errno; unlink(fn); |
unlink(fn); rc = mknod(fn,S_IFSOCK,0600); ec = errno; unlink(fn); |
if (rc) {printf("(%d %d) ",rc,ec); return ec;} |
if (rc) {printf("(%d %d) ",rc,ec); return ec;} |
return 0;}]])],[rsync_cv_MKNOD_CREATES_SOCKETS=yes],[rsync_cv_MKNOD_CREATES_SOCKETS=no],[rsync_cv_MKNOD_CREATES_SOCKETS=cross])]) |
return 0;}]])],[rsync_cv_MKNOD_CREATES_SOCKETS=yes],[rsync_cv_MKNOD_CREATES_SOCKETS=no],[rsync_cv_MKNOD_CREATES_SOCKETS=cross])]) |
Line 901 fi
|
Line 1254 fi
|
AC_CACHE_CHECK([whether -c -o works],rsync_cv_DASHC_WORKS_WITH_DASHO,[ |
AC_CACHE_CHECK([whether -c -o works],rsync_cv_DASHC_WORKS_WITH_DASHO,[ |
rm -rf conftest* |
rm -rf conftest* |
cat > conftest.$ac_ext <<EOF |
cat > conftest.$ac_ext <<EOF |
int main() { return 0; } | int main(void) { return 0; } |
EOF |
EOF |
${CC-cc} -c -o conftest..o conftest.$ac_ext |
${CC-cc} -c -o conftest..o conftest.$ac_ext |
if test -f conftest..o; then |
if test -f conftest..o; then |
Line 928 AC_SUBST(BUILD_POPT)
|
Line 1281 AC_SUBST(BUILD_POPT)
|
AC_SUBST(BUILD_ZLIB) |
AC_SUBST(BUILD_ZLIB) |
AC_SUBST(MAKE_MAN) |
AC_SUBST(MAKE_MAN) |
|
|
AC_PATH_PROG([STUNNEL], [stunnel], [stunnel], [$PATH$PATH_SEPARATOR/usr/sbin$PATH_SEPARATOR/sbin]) |
|
AC_PATH_PROG([STUNNEL4], [stunnel4], [$STUNNEL], [$PATH$PATH_SEPARATOR/usr/sbin$PATH_SEPARATOR/sbin]) |
|
|
|
AC_CHECK_FUNCS(_acl __acl _facl __facl) |
AC_CHECK_FUNCS(_acl __acl _facl __facl) |
################################################# |
################################################# |
# check for ACL support |
# check for ACL support |
Line 948 else
|
Line 1298 else
|
AC_DEFINE(HAVE_UNIXWARE_ACLS, 1, [true if you have UnixWare ACLs]) |
AC_DEFINE(HAVE_UNIXWARE_ACLS, 1, [true if you have UnixWare ACLs]) |
AC_DEFINE(SUPPORT_ACLS, 1, [Define to 1 to add support for ACLs]) |
AC_DEFINE(SUPPORT_ACLS, 1, [Define to 1 to add support for ACLs]) |
;; |
;; |
solaris*|*cygwin*) | solaris*) |
AC_MSG_RESULT(Using solaris ACLs) |
AC_MSG_RESULT(Using solaris ACLs) |
AC_DEFINE(HAVE_SOLARIS_ACLS, 1, [true if you have solaris ACLs]) |
AC_DEFINE(HAVE_SOLARIS_ACLS, 1, [true if you have solaris ACLs]) |
AC_DEFINE(SUPPORT_ACLS, 1) |
AC_DEFINE(SUPPORT_ACLS, 1) |
;; |
;; |
*hpux*) |
|
AC_MSG_RESULT(Using HPUX ACLs) |
|
AC_DEFINE(HAVE_HPUX_ACLS, 1, [true if you have HPUX ACLs]) |
|
AC_DEFINE(SUPPORT_ACLS, 1) |
|
;; |
|
*irix*) |
*irix*) |
AC_MSG_RESULT(Using IRIX ACLs) |
AC_MSG_RESULT(Using IRIX ACLs) |
AC_DEFINE(HAVE_IRIX_ACLS, 1, [true if you have IRIX ACLs]) |
AC_DEFINE(HAVE_IRIX_ACLS, 1, [true if you have IRIX ACLs]) |
Line 979 else
|
Line 1324 else
|
AC_DEFINE(HAVE_OSX_ACLS, 1, [true if you have Mac OS X ACLs]) |
AC_DEFINE(HAVE_OSX_ACLS, 1, [true if you have Mac OS X ACLs]) |
AC_DEFINE(SUPPORT_ACLS, 1) |
AC_DEFINE(SUPPORT_ACLS, 1) |
;; |
;; |
|
*hpux*|*nsk*) |
|
AC_MSG_RESULT(Using HPUX ACLs) |
|
AC_DEFINE(HAVE_HPUX_ACLS, 1, [true if you have HPUX ACLs]) |
|
AC_DEFINE(SUPPORT_ACLS, 1) |
|
;; |
*) |
*) |
AC_MSG_RESULT(running tests:) |
AC_MSG_RESULT(running tests:) |
AC_CHECK_LIB(acl,acl_get_file) |
AC_CHECK_LIB(acl,acl_get_file) |
Line 1022 if test x"$enable_xattr_support" = x"no"; then
|
Line 1372 if test x"$enable_xattr_support" = x"no"; then
|
AC_MSG_RESULT(no) |
AC_MSG_RESULT(no) |
else |
else |
case "$host_os" in |
case "$host_os" in |
*linux*|*netbsd*) | *linux*|*netbsd*|*cygwin*) |
AC_MSG_RESULT(Using Linux xattrs) |
AC_MSG_RESULT(Using Linux xattrs) |
AC_DEFINE(HAVE_LINUX_XATTRS, 1, [True if you have Linux xattrs (or equivalent)]) |
AC_DEFINE(HAVE_LINUX_XATTRS, 1, [True if you have Linux xattrs (or equivalent)]) |
AC_DEFINE(SUPPORT_XATTRS, 1) |
AC_DEFINE(SUPPORT_XATTRS, 1) |
Line 1068 if test x"$enable_acl_support" = x"no" -o x"$enable_xa
|
Line 1418 if test x"$enable_acl_support" = x"no" -o x"$enable_xa
|
fi |
fi |
fi |
fi |
|
|
|
AC_MSG_CHECKING([whether to include mysql DB support]) |
|
AC_ARG_ENABLE(mysql, |
|
AC_HELP_STRING([--disable-mysql], |
|
[disable mysql DB support])) |
|
|
|
if test x"$enable_mysql" = x"no"; then |
|
AC_MSG_RESULT(no) |
|
else |
|
AC_MSG_RESULT([yes]) |
|
AC_CHECK_PROG(MYSQL_CONFIG, mysql_config, 1, 0) |
|
if test x$MYSQL_CONFIG = x1; then |
|
AC_MSG_CHECKING(for mysql version >= 4) |
|
mysql_version=`mysql_config --version` |
|
mysql_major_version=`echo $mysql_version | sed 's/\..*//'` |
|
if test $mysql_major_version -lt 4; then |
|
AC_MSG_RESULT(no.. skipping MySQL) |
|
else |
|
AC_MSG_RESULT(yes) |
|
|
|
MYSQL_CFLAGS=`mysql_config --cflags` |
|
MYSQL_LIBS=`mysql_config --libs` |
|
|
|
CPPFLAGS="$CPPFLAGS $MYSQL_CFLAGS" |
|
LIBS="$MYSQL_LIBS $LIBS" |
|
|
|
AC_CHECK_LIB(mysqlclient, mysql_init) |
|
fi |
|
fi |
|
fi |
|
|
|
AC_MSG_CHECKING([whether to include sqlite DB support]) |
|
AC_ARG_ENABLE(sqlite, |
|
AC_HELP_STRING([--disable-sqlite], |
|
[disable sqlite DB support])) |
|
|
|
if test x"$enable_sqlite" = x"no"; then |
|
AC_MSG_RESULT(no) |
|
else |
|
AC_CHECK_LIB(sqlite3, sqlite3_open) |
|
AC_CHECK_FUNCS(sqlite3_open_v2 sqlite3_prepare_v2) |
|
fi |
|
|
case "$CC" in |
case "$CC" in |
' checker'*|checker*) |
' checker'*|checker*) |
AC_DEFINE(FORCE_FD_ZERO_MEMSET, 1, [Used to make "checker" understand that FD_ZERO() clears memory.]) |
AC_DEFINE(FORCE_FD_ZERO_MEMSET, 1, [Used to make "checker" understand that FD_ZERO() clears memory.]) |
Line 1078 AC_CONFIG_FILES([Makefile lib/dummy zlib/dummy popt/du
|
Line 1470 AC_CONFIG_FILES([Makefile lib/dummy zlib/dummy popt/du
|
AC_OUTPUT |
AC_OUTPUT |
|
|
AC_MSG_RESULT() |
AC_MSG_RESULT() |
AC_MSG_RESULT([ rsync ${RSYNC_VERSION} configuration successful]) | AC_MSG_RESULT([ rsync $PACKAGE_VERSION configuration successful]) |
AC_MSG_RESULT() |
AC_MSG_RESULT() |
if test x$HAVE_YODL2MAN != x1; then |
|
AC_MSG_RESULT([ Note that yodl2man was not found, so pre-existing manpage files will be]) |
|
AC_MSG_RESULT([ used w/o change (if available) -- no .yo file changes will be used.]) |
|
AC_MSG_RESULT() |
|
fi |
|