summaryrefslogtreecommitdiff
path: root/acinclude.m4
diff options
context:
space:
mode:
Diffstat (limited to 'acinclude.m4')
-rw-r--r--acinclude.m4153
1 files changed, 104 insertions, 49 deletions
diff --git a/acinclude.m4 b/acinclude.m4
index 476d536..7c90c64 100644
--- a/acinclude.m4
+++ b/acinclude.m4
@@ -26,23 +26,25 @@ dnl
AC_DEFUN([SANE_SET_AM_CFLAGS],
[
if test "${ac_cv_c_compiler_gnu}" = "yes"; then
- DEFAULT_CFLAGS="\
+ DEFAULT_WARNINGS="\
-Wall"
EXTRA_WARNINGS="\
-Wextra \
-pedantic"
- for flag in $DEFAULT_CFLAGS; do
+ for flag in $DEFAULT_WARNINGS; do
JAPHAR_GREP_AM_CFLAGS($flag, [ AM_CFLAGS="$AM_CFLAGS $flag" ])
+ JAPHAR_GREP_AM_CXXFLAGS($flag, [ AM_CXXFLAGS="$AM_CXXFLAGS $flag" ])
done
AC_ARG_ENABLE(warnings,
AS_HELP_STRING([--enable-warnings],
[turn on tons of compiler warnings (GCC only)]),
[
- if eval "test x$enable_warnings = xyes"; then
+ if eval "test x$enable_warnings = xyes"; then
for flag in $EXTRA_WARNINGS; do
JAPHAR_GREP_AM_CFLAGS($flag, [ AM_CFLAGS="$AM_CFLAGS $flag" ])
+ JAPHAR_GREP_AM_CXXFLAGS($flag, [ AM_CXXFLAGS="$AM_CXXFLAGS $flag" ])
done
fi
],
@@ -50,6 +52,7 @@ if test "${ac_cv_c_compiler_gnu}" = "yes"; then
# Warnings enabled by default (development)
for flag in $EXTRA_WARNINGS; do
JAPHAR_GREP_AM_CFLAGS($flag, [ AM_CFLAGS="$AM_CFLAGS $flag" ])
+ JAPHAR_GREP_AM_CXXFLAGS($flag, [ AM_CXXFLAGS="$AM_CXXFLAGS $flag" ])
done
fi])
fi # ac_cv_c_compiler_gnu
@@ -97,7 +100,7 @@ AC_DEFUN([SANE_SET_AM_LDFLAGS],
esac
fi
AC_SUBST(STRICT_LDFLAGS)
- case "${host_os}" in
+ case "${host_os}" in
aix*) #enable .so libraries, disable archives
AM_LDFLAGS="$AM_LDFLAGS -Wl,-brtl"
;;
@@ -180,7 +183,7 @@ AC_DEFUN([SANE_CHECK_IEEE1284],
AC_CHECK_HEADER(ieee1284.h, [
AC_CACHE_CHECK([for libieee1284 >= 0.1.5], sane_cv_use_libieee1284, [
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <ieee1284.h>]], [[
- struct parport p; char *buf;
+ struct parport p; char *buf;
ieee1284_nibble_read(&p, 0, buf, 1);
]])],
[sane_cv_use_libieee1284="yes"; IEEE1284_LIBS="-lieee1284"
@@ -234,18 +237,37 @@ AC_DEFUN([SANE_CHECK_PTHREAD],
LIBS="$save_LIBS"
],[ have_pthread=no; use_pthread=no ])
fi
-
- if test $use_pthread = yes ; then
- AC_DEFINE_UNQUOTED(USE_PTHREAD, "$use_pthread",
- [Define if pthreads should be used instead of forked processes.])
+
+ # Based on a similar test for pthread_key_t from the Python project.
+ # See https://bugs.python.org/review/25658/patch/19209/75870
+ AC_MSG_CHECKING(whether pthread_t is integer)
+ AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM([[#include <pthread.h>]], [[pthread_t k; k * 1;]])],
+ [ac_pthread_t_is_integer=yes],
+ [ac_pthread_t_is_integer=no]
+ )
+ AC_MSG_RESULT($ac_pthread_t_is_integer)
+ if test "$ac_pthread_t_is_integer" = yes ; then
+ AC_DEFINE(PTHREAD_T_IS_INTEGER, 1,
+ [Define if pthread_t is integer.])
else
- dnl Reset library in case it was found but we are not going to use it.
- PTHREAD_LIBS=""
+ # Until the sanei_thread implementation is fixed.
+ use_pthread=no
fi
+
if test "$have_pthread" = "yes" ; then
AM_CPPFLAGS="${AM_CPPFLAGS} -D_REENTRANT"
fi
AC_SUBST(PTHREAD_LIBS)
+
+ if test $use_pthread = yes ; then
+ AC_DEFINE_UNQUOTED(USE_PTHREAD, "$use_pthread",
+ [Define if pthreads should be used instead of forked processes.])
+ SANEI_THREAD_LIBS=$PTHREAD_LIBS
+ else
+ SANEI_THREAD_LIBS=""
+ fi
+ AC_SUBST(SANEI_THREAD_LIBS)
AC_MSG_CHECKING([whether to enable pthread support])
AC_MSG_RESULT([$have_pthread])
AC_MSG_CHECKING([whether to use pthread instead of fork])
@@ -257,9 +279,9 @@ AC_DEFUN([SANE_CHECK_PTHREAD],
# GPHOTO2 and dell1600n_net backends.
AC_DEFUN([SANE_CHECK_JPEG],
[
- AC_CHECK_LIB(jpeg,jpeg_start_decompress,
+ AC_CHECK_LIB(jpeg,jpeg_start_decompress,
[
- AC_CHECK_HEADER(jconfig.h,
+ AC_CHECK_HEADER(jconfig.h,
[
AC_MSG_CHECKING([for jpeglib - version >= 61 (6a)])
AC_EGREP_CPP(sane_correct_jpeg_lib_version_found,
@@ -268,7 +290,7 @@ AC_DEFUN([SANE_CHECK_JPEG],
#if JPEG_LIB_VERSION >= 61
sane_correct_jpeg_lib_version_found
#endif
- ], [sane_cv_use_libjpeg="yes"; JPEG_LIBS="-ljpeg";
+ ], [sane_cv_use_libjpeg="yes"; JPEG_LIBS="-ljpeg";
AC_MSG_RESULT(yes)],[AC_MSG_RESULT(no)])
],)
],)
@@ -281,9 +303,9 @@ AC_DEFUN([SANE_CHECK_JPEG],
# Checks for tiff library dell1600n_net backend.
AC_DEFUN([SANE_CHECK_TIFF],
[
- AC_CHECK_LIB(tiff,TIFFFdOpen,
+ AC_CHECK_LIB(tiff,TIFFFdOpen,
[
- AC_CHECK_HEADER(tiffio.h,
+ AC_CHECK_HEADER(tiffio.h,
[sane_cv_use_libtiff="yes"; TIFF_LIBS="-ltiff"],)
],)
AC_SUBST(TIFF_LIBS)
@@ -345,7 +367,7 @@ AC_DEFUN([SANE_CHECK_LOCKING],
fi
if test $use_locking = yes ; then
INSTALL_LOCKPATH=install-lockpath
- AC_DEFINE([ENABLE_LOCKING], 1,
+ AC_DEFINE([ENABLE_LOCKING], 1,
[Define to 1 if device locking should be enabled.])
else
INSTALL_LOCKPATH=
@@ -376,6 +398,20 @@ esac
])
dnl
+dnl JAPHAR_GREP_AM_CXXFLAGS(flag, cmd_if_missing, cmd_if_present)
+dnl
+AC_DEFUN([JAPHAR_GREP_AM_CXXFLAGS],
+[case "$AM_CXXFLAGS" in
+"$1" | "$1 "* | *" $1" | *" $1 "* )
+ ifelse($#, 3, [$3], [:])
+ ;;
+*)
+ $2
+ ;;
+esac
+])
+
+dnl
dnl SANE_CHECK_U_TYPES
dnl
AC_DEFUN([SANE_CHECK_U_TYPES],
@@ -397,13 +433,13 @@ AC_DEFUN([SANE_CHECK_GPHOTO2],
[# If --with-gphoto2=no or --without-gphoto2, disable backend
# as "$with_gphoto2" will be set to "no"])
- # If --with-gphoto2=yes (or not supplied), first check if
+ # If --with-gphoto2=yes (or not supplied), first check if
# pkg-config exists, then use it to check if libgphoto2 is
# present. If all that works, then see if we can actually link
- # a program. And, if that works, then add the -l flags to
- # GPHOTO2_LIBS and any other flags to GPHOTO2_LDFLAGS to pass to
+ # a program. And, if that works, then add the -l flags to
+ # GPHOTO2_LIBS and any other flags to GPHOTO2_LDFLAGS to pass to
# sane-config.
- if test "$with_gphoto2" != "no" ; then
+ if test "$with_gphoto2" != "no" ; then
AC_CHECK_TOOL(HAVE_GPHOTO2, pkg-config, false)
if test ${HAVE_GPHOTO2} != "false" ; then
@@ -427,8 +463,8 @@ AC_DEFUN([SANE_CHECK_GPHOTO2],
HAVE_GPHOTO2=false
fi
if test "${HAVE_GPHOTO2}" = "false"; then
- GPHOTO2_CPPFLAGS=""
- GPHOTO2_LIBS=""
+ GPHOTO2_CPPFLAGS=""
+ GPHOTO2_LIBS=""
else
SANE_EXTRACT_LDFLAGS(GPHOTO2_LIBS, GPHOTO2_LDFLAGS)
if pkg-config --atleast-version=2.5.0 libgphoto2; then
@@ -448,31 +484,31 @@ AC_DEFUN([SANE_CHECK_GPHOTO2],
# Check for ss_family member in struct sockaddr_storage
AC_DEFUN([SANE_CHECK_IPV6],
[
- AC_MSG_CHECKING([whether to enable IPv6])
- AC_ARG_ENABLE(ipv6,
+ AC_MSG_CHECKING([whether to enable IPv6])
+ AC_ARG_ENABLE(ipv6,
AS_HELP_STRING([--disable-ipv6],[disable IPv6 support]),
[ if test "$enableval" = "no" ; then
- AC_MSG_RESULT([no, manually disabled])
- ipv6=no
+ AC_MSG_RESULT([no, manually disabled])
+ ipv6=no
fi
])
if test "$ipv6" != "no" ; then
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
- #define INET6
- #include <sys/types.h>
+ #define INET6
+ #include <sys/types.h>
#include <sys/socket.h> ]], [[
- /* AF_INET6 available check */
- if (socket(AF_INET6, SOCK_STREAM, 0) < 0)
- exit(1);
- else
- exit(0);
+ /* AF_INET6 available check */
+ if (socket(AF_INET6, SOCK_STREAM, 0) < 0)
+ exit(1);
+ else
+ exit(0);
]])],[
- AC_MSG_RESULT(yes)
- AC_DEFINE([ENABLE_IPV6], 1, [Define to 1 if the system supports IPv6])
+ AC_MSG_RESULT(yes)
+ AC_DEFINE([ENABLE_IPV6], 1, [Define to 1 if the system supports IPv6])
ipv6=yes
],[
- AC_MSG_RESULT([no (couldn't compile test program)])
+ AC_MSG_RESULT([no (couldn't compile test program)])
ipv6=no
])
fi
@@ -507,7 +543,7 @@ AC_DEFUN([SANE_CHECK_IPV6],
ipv6=no
])
])
- fi
+ fi
])
#
@@ -527,14 +563,14 @@ for be in ${BACKENDS}; do
case $be in
plustek_pp)
case "$host_os" in
- gnu*)
+ gnu*)
echo "*** $be backend not supported on GNU/Hurd - $DISABLE_MSG"
backend_supported="no"
;;
esac
;;
- dc210|dc240)
+ dc210|dc240|pixma)
if test "${sane_cv_use_libjpeg}" != "yes"; then
echo "*** $be backend requires JPEG library - $DISABLE_MSG"
backend_supported="no"
@@ -548,6 +584,13 @@ for be in ${BACKENDS}; do
fi
;;
+ genesys)
+ if test "${HAVE_CXX11}" != "1"; then
+ echo "*** $be backend requires C++11 support - $DISABLE_MSG"
+ backend_supported="no"
+ fi
+ ;;
+
mustek_pp)
if test "${sane_cv_use_libieee1284}" != "yes" && test "${enable_parport_directio}" != "yes"; then
echo "*** $be backend requires libieee1284 or parport-directio libraries - $DISABLE_MSG"
@@ -555,7 +598,7 @@ for be in ${BACKENDS}; do
fi
;;
- dell1600n_net)
+ dell1600n_net)
if test "${sane_cv_use_libjpeg}" != "yes" || test "${sane_cv_use_libtiff}" != "yes"; then
echo "*** $be backend requires JPEG and TIFF library - $DISABLE_MSG"
backend_supported="no"
@@ -569,6 +612,26 @@ for be in ${BACKENDS}; do
fi
;;
+ escl)
+ if test "x${enable_avahi}" != "xyes"; then
+ echo "*** $be backend requires AVAHI library - $DISABLE_MSG"
+ backend_supported="no"
+ fi
+ if test "x${with_libcurl}" != "xyes"; then
+ echo "*** $be backend requires cURL library - $DISABLE_MSG"
+ backend_supported="no"
+ fi
+ if test "x${have_libxml}" != "xyes"; then
+ echo "*** $be backend requires XML library - $DISABLE_MSG"
+ backend_supported="no"
+ fi
+ # FIXME: Remove when PNG and/or PDF support have been added.
+ if test "x${sane_cv_use_libjpeg}" != "xyes"; then
+ echo "*** $be backend currently requires JPEG library - $DISABLE_MSG"
+ backend_supported="no"
+ fi
+ ;;
+
gphoto2)
if test "${HAVE_GPHOTO2}" != "true" \
|| test "${sane_cv_use_libjpeg}" != "yes"; then
@@ -666,12 +729,6 @@ const char * inet_ntop (int af, const void *src, char *dst, size_t cnt);
int inet_pton (int af, const char *src, void *dst);
#endif
-/* Prototype for isfdtype */
-#ifndef HAVE_ISFDTYPE
-#define isfdtype sanei_isfdtype
-int isfdtype(int fd, int fdtype);
-#endif
-
/* Prototype for sigprocmask */
#ifndef HAVE_SIGPROCMASK
#define sigprocmask sanei_sigprocmask
@@ -724,6 +781,4 @@ void vsyslog(int priority, const char *format, va_list args);
])
])
-m4_include([m4/libtool.m4])
m4_include([m4/byteorder.m4])
-m4_include([m4/stdint.m4])