You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
235 lines
6.6 KiB
Plaintext
235 lines
6.6 KiB
Plaintext
dnl Compile in the exec prefix to help kstddirs in finding dynamic libs
|
|
AC_DEFINE_UNQUOTED(__KDE_EXECPREFIX, "$exec_prefix", [execprefix or NONE if not set, for libloading])
|
|
|
|
dnl Compile in kde_bindir to safely find tdesu_stub.
|
|
if test "$exec_prefix" = "NONE"; then
|
|
bindir_str="\"$prefix/bin\""
|
|
else
|
|
bindir_str="\"$exec_prefix/bin\""
|
|
fi
|
|
AC_DEFINE_UNQUOTED(__TDE_BINDIR, $bindir_str, [TDE bindir])
|
|
|
|
dnl tests for openpty support
|
|
AC_MSG_CHECKING(whether we can use openpty)
|
|
AC_ARG_ENABLE(openpty,
|
|
[ --disable-openpty disable openpty (UNIX98 terminals) support [default=enabled]],
|
|
[ac_use_openpty=$enableval], [ac_use_openpty=yes])
|
|
if test "$ac_use_openpty" = "yes"; then
|
|
kde_safe_LIBS=$LIBS
|
|
LIBS="$LIBS $LIBUTIL"
|
|
AC_TRY_RUN([
|
|
#include <pty.h>
|
|
|
|
int main(int argc, char* argv) {
|
|
int master_fd, slave_fd;
|
|
int result;
|
|
|
|
result = openpty(&master_fd, &slave_fd, 0, 0, 0);
|
|
|
|
return 0;
|
|
}
|
|
], [ac_use_openpty="yes"], [ac_use_openpty="no"])
|
|
LIBS=$kde_safe_LIBS
|
|
fi
|
|
if test "$ac_use_openpty" = "yes"; then
|
|
AC_DEFINE(HAVE_OPENPTY, 1, [Defines whether we can use the openpty() function])
|
|
AC_MSG_RESULT(yes)
|
|
else
|
|
AC_MSG_RESULT(no)
|
|
fi
|
|
|
|
dnl -------
|
|
dnl Test for libidn (IDNA support)
|
|
dnl -------
|
|
|
|
AC_ARG_WITH(libidn,
|
|
[AC_HELP_STRING(--with-libidn,
|
|
[enable support for libidn @<:@default=check@:>@])],
|
|
[], with_libidn=check)
|
|
LIB_IDN=
|
|
if test "x$with_libidn" != xno; then
|
|
AC_CHECK_HEADERS([idna.h punycode.h stringprep.h])
|
|
KDE_CHECK_LIB(idn, idna_to_ascii_4i, [
|
|
AC_DEFINE_UNQUOTED(HAVE_LIBIDN, 1, [Defined if you have libidn in your system])
|
|
LIB_IDN=-lidn
|
|
])
|
|
if test "x$with_libidn" != xcheck && test -z "$LIB_IDN"; then
|
|
AC_MSG_ERROR([--with-libidn was given, but test for libidn failed])
|
|
fi
|
|
fi
|
|
AC_SUBST(LIB_IDN)
|
|
|
|
dnl --------
|
|
dnl KNetwork extra configuration
|
|
dnl --------
|
|
|
|
netincludes="#include <sys/types.h>
|
|
#include <sys/socket.h>
|
|
#include <netdb.h>"
|
|
|
|
kde_safe_LIBS="$LIBS"
|
|
LIBS="$LIBS $all_libraries $X_EXTRA_LIBS"
|
|
AC_CHECK_FUNCS([inet_ntop inet_pton getpeername getsockname getsockopt gethostbyname2_r gethostbyname_r gethostbyname2 if_nametoindex getprotobyname_r getservbyname_r getservbyport_r])
|
|
LIBS="$kde_safe_LIBS"
|
|
|
|
dnl
|
|
dnl Some systems, like OpenBSD 3.6, have getservbyname_r but don't declare it
|
|
dnl
|
|
if test "x$ac_cv_func_getservbyname_r" = "xyes"; then
|
|
|
|
AC_CHECK_DECLS([getservbyname_r],,,[$netincludes])
|
|
|
|
fi
|
|
|
|
KDE_CHECK_HEADERS([netinet/in.h net/if.h],,,[$netincludes])
|
|
KDE_CHECK_HEADERS([sys/filio.h])
|
|
AC_CHECK_FUNCS([usleep poll madvise])
|
|
|
|
dnl Check for struct addrinfo
|
|
AC_CHECK_TYPES([struct addrinfo],,,[$netincludes])
|
|
|
|
kde_safe_LIBS="$LIBS"
|
|
LIBS="$LIBS $LIBSOCKET"
|
|
AC_CHECK_FUNCS([getaddrinfo],
|
|
[
|
|
dnl Even though we now know that getaddrinfo is there, make sure getnameinfo is there too
|
|
kde_gai_ok=true
|
|
AC_CHECK_FUNCS([freeaddrinfo getnameinfo gai_strerror], : ,
|
|
[
|
|
kde_gai_ok=false
|
|
AC_DEFINE(HAVE_BROKEN_GETADDRINFO, 1, [Define if getaddrinfo is broken and should be replaced])
|
|
AC_DEFINE(GETADDRINFO_RETURNS_UNIX, 1, [Define if getaddrinfo returns AF_UNIX sockets])
|
|
break
|
|
])
|
|
|
|
AC_MSG_CHECKING([if getaddrinfo works using numeric service with null host])
|
|
dnl On AIX (4.3), getaddrinfo returns NULL if the hint
|
|
dnl is AF_INET/SOCK_STREAM/AI_PASSIVE.
|
|
dnl The error code reports "Host not found".
|
|
dnl It only seems to return non-NULL if the port is known (eg. in
|
|
dnl /etc/services).
|
|
AC_TRY_RUN(dnl
|
|
[
|
|
#include <sys/types.h>
|
|
#include <sys/socket.h>
|
|
#include <netdb.h>
|
|
#include <string.h>
|
|
int main()
|
|
{
|
|
struct addrinfo hint, *res;
|
|
int err;
|
|
memset(&hint, 0, sizeof(hint));
|
|
hint.ai_family = AF_INET;
|
|
hint.ai_protocol = 0;
|
|
hint.ai_socktype = SOCK_STREAM;
|
|
hint.ai_flags = AI_PASSIVE;
|
|
err = getaddrinfo(0, "18300", &hint, &res); /* kxmlrpc tries this */
|
|
if (err != 0 || res == 0 || res->ai_family != AF_INET)
|
|
return 1;
|
|
return 0;
|
|
}
|
|
],
|
|
[
|
|
AC_MSG_RESULT(yes)
|
|
],
|
|
[
|
|
AC_MSG_RESULT(no)
|
|
AC_DEFINE(HAVE_BROKEN_GETADDRINFO, 1, [Define if getaddrinfo is broken and should be replaced])
|
|
],
|
|
[
|
|
AC_MSG_RESULT(cross compiling. We hope so)
|
|
])
|
|
]
|
|
)
|
|
LIBS="$kde_safe_LIBS"
|
|
|
|
AC_CHECK_MEMBERS([struct sockaddr.sa_len],,,[#include <sys/socket.h>])
|
|
AC_CHECK_TYPES([struct sockaddr_in6],
|
|
[AC_CHECK_MEMBERS([struct sockaddr_in6.sin6_scope_id],,,[#include <netinet/in.h>])],,
|
|
[#include <sys/types.h>
|
|
#include <netinet/in.h>])
|
|
|
|
AC_MSG_CHECKING([for GLIBC function backtrace])
|
|
AC_TRY_LINK(dnl
|
|
[
|
|
#include <execinfo.h>
|
|
],
|
|
[
|
|
void* trace[256];
|
|
backtrace(trace, 256);
|
|
],
|
|
[
|
|
AC_DEFINE(HAVE_BACKTRACE, 1, [Define if execinfo.h exists and defines backtrace (GLIBC >= 2.1)])
|
|
AC_MSG_RESULT(yes)
|
|
],
|
|
AC_MSG_RESULT(no)
|
|
)
|
|
|
|
AC_CHECK_HEADERS(sys/mount.h)
|
|
|
|
dnl AC_OUTPUT(tdecore/tde-config.cpp)
|
|
|
|
AM_CONFIG_HEADER(tdecore/kdemacros.h)
|
|
|
|
SVGICONS=
|
|
|
|
AC_ARG_WITH(libart,
|
|
[AC_HELP_STRING(--with-libart,
|
|
[enable support for libart @<:@default=check@:>@])],
|
|
[], with_libart=check)
|
|
|
|
if test "x$with_libart" != xno; then
|
|
KDE_FIND_PATH(libart2-config, LIBART_CONFIG, [${prefix}/bin ${exec_prefix}/bin], [
|
|
AC_MSG_WARN([Could not find libart anywhere, check http://www.levien.com/libart/])
|
|
])
|
|
|
|
if test -n "$LIBART_CONFIG"; then
|
|
vers=`$LIBART_CONFIG --version 2>/dev/null | awk 'BEGIN { FS = "."; } { printf "%d", ($1 * 1000 + $2) * 1000 + $3;}'`
|
|
if test -n "$vers" && test "$vers" -ge 2003008
|
|
then
|
|
LIBART_LIBS="`$LIBART_CONFIG --libs`"
|
|
LIBART_RPATH=
|
|
for args in $LIBART_LIBS; do
|
|
case $args in
|
|
-L/usr/lib) ;;
|
|
-L*)
|
|
LIBART_RPATH="$LIBART_RPATH $args"
|
|
;;
|
|
esac
|
|
done
|
|
LIBART_RPATH=`echo $LIBART_RPATH | sed -e "s/-L/-R/g"`
|
|
LIBART_CFLAGS="`$LIBART_CONFIG --cflags`"
|
|
SVGICONS=svgicons
|
|
|
|
AC_DEFINE_UNQUOTED(HAVE_LIBART, 1, [Defines if your system has the libart library])
|
|
else
|
|
AC_MSG_WARN([You need at least libart 2.3.8])
|
|
fi
|
|
fi
|
|
if test "x$with_libart" != xcheck && test -z "$LIBART_LIBS"; then
|
|
AC_MSG_ERROR([--with-libart was given, but test for libart failed])
|
|
fi
|
|
fi
|
|
|
|
|
|
AC_SUBST(LIBART_LIBS)
|
|
AC_SUBST(LIBART_CFLAGS)
|
|
AC_SUBST(LIBART_RPATH)
|
|
AM_CONDITIONAL(include_SVGICONS, test -n "$SVGICONS")
|
|
|
|
AC_CHECK_HEADERS([sys/stropts.h sys/select.h libutil.h util.h termios.h pty.h termio.h])
|
|
AC_MSG_CHECKING([for revoke(tty) in unistd.h])
|
|
AC_TRY_LINK(dnl
|
|
[
|
|
#include <unistd.h>
|
|
],
|
|
[
|
|
revoke("/dev/tty");
|
|
],
|
|
[
|
|
AC_DEFINE(HAVE_REVOKE, 1, [Define if revoke(tty) is present in unistd.h])
|
|
AC_MSG_RESULT(yes)
|
|
],
|
|
AC_MSG_RESULT(no)
|
|
)
|