dnl Ensure that libcitadel is configured with autoconf 2.52 or newer
AC_PREREQ(2.52)
-AC_INIT(libcitadel, 8.10, http://uncensored.citadel.org)
+AC_INIT(libcitadel, 4.8.19, http://uncensored.citadel.org)
AC_CONFIG_SRCDIR(Makefile.in)
AC_CONFIG_AUX_DIR(conftools)
dnl If the API changes incompatibly set LIBAGE back to 0
dnl
-LIBCURRENT=2
-LIBREVISION=2
-LIBAGE=1
+LIBCURRENT=4
+LIBREVISION=819
+LIBAGE=0
sinclude(conftools/libtool.m4)
sinclude(conftools/ac_c_bigendian_cross.m4)
dnl TODO: we might need to check for the actual syntax....
+AC_MSG_CHECKING([whether your system knows about splice()])
+AC_TRY_COMPILE([
+#define _GNU_SOURCE
+#include <unistd.h>
+#include <fcntl.h>
+],
+[
+ ssize_t sent, pipesize;
+ int fd, SplicePipe[2];
+ pipesize = splice(fd, NULL,
+ SplicePipe[1], NULL,
+ 1,
+ SPLICE_F_MORE | SPLICE_F_MOVE|SPLICE_F_NONBLOCK);
+],
+ [
+ ok_splice=yes
+ AC_DEFINE(LINUX_SPLICE, [], [whether we have the linux splice api])
+ AC_MSG_RESULT([yes])
+ ],
+ [
+ ok_splice=no
+ AC_MSG_RESULT([no])
+ ]
+)
+
+AC_MSG_CHECKING([whether your system likes memcpy + HKEY])
+AC_TRY_COMPILE([
+#define _GNU_SOURCE
+#include <ctype.h>
+#include <errno.h>
+#include <string.h>
+#include <unistd.h>
+#include <string.h>
+#include <stdio.h>
+#include <sys/select.h>
+#include <fcntl.h>
+#include <sys/types.h>
+
+#include "lib/libcitadel.h"
+],
+[
+ char foo[22];
+ memcpy(foo, HKEY("foo"));
+
+],
+ [
+
+ AC_MSG_RESULT([yes])
+ ],
+ [
+ AC_DEFINE(UNDEF_MEMCPY, [], [whether we need to undefine memcpy])
+ AC_MSG_RESULT([no])
+ ]
+)
+
+
AC_CHECK_HEADERS(iconv.h)