mirror of
https://github.com/tmate-io/tmate
synced 2020-11-18 19:53:50 -08:00
backtrace(3) and execinfo.h are GNU extensions and may or may not be available, and they may be provided via libexecinfo. Fix detection of libexecinfo and allow building without any support of backtrace, in which case we let kernel create core dump. Fixes #116 #117
617 lines
14 KiB
Plaintext
617 lines
14 KiB
Plaintext
# configure.ac
|
|
|
|
AC_INIT(tmate, 2.2.1)
|
|
|
|
AC_CONFIG_AUX_DIR(etc)
|
|
AM_INIT_AUTOMAKE([foreign subdir-objects])
|
|
|
|
AC_CANONICAL_HOST
|
|
|
|
# When CFLAGS isn't set at this stage and gcc is detected by the macro below,
|
|
# autoconf will automatically use CFLAGS="-O2 -g". Prevent that by using an
|
|
# empty default.
|
|
: ${CFLAGS=""}
|
|
|
|
# Set up the compiler in two different ways and say yes we may want to install.
|
|
AC_PROG_CC
|
|
AM_PROG_CC_C_O
|
|
AC_PROG_CPP
|
|
AC_PROG_EGREP
|
|
AC_PROG_INSTALL
|
|
PKG_PROG_PKG_CONFIG
|
|
|
|
# Default tmux.conf goes in /etc not ${prefix}/etc.
|
|
test "$sysconfdir" = '${prefix}/etc' && sysconfdir=/etc
|
|
|
|
# Is this --enable-debug?
|
|
found_debug=yes
|
|
AC_ARG_ENABLE(
|
|
debug,
|
|
AC_HELP_STRING(--enable-debug, enable debug build flags),
|
|
found_debug=$enable_debug
|
|
)
|
|
AM_CONDITIONAL(IS_DEBUG, test "x$found_debug" = xyes)
|
|
|
|
# Is this --enable-coverage?
|
|
AC_ARG_ENABLE(
|
|
coverage,
|
|
AC_HELP_STRING(--enable-coverage, enable coverage build flags),
|
|
found_coverage=$enable_coverage
|
|
)
|
|
AM_CONDITIONAL(IS_COVERAGE, test "x$found_coverage" = xyes)
|
|
|
|
# Is this a static build?
|
|
AC_ARG_ENABLE(
|
|
static,
|
|
AC_HELP_STRING(--enable-static, create a static build),
|
|
found_static=$enable_static
|
|
)
|
|
if test "x$found_static" = xyes; then
|
|
PKG_CONFIG="pkg-config --static"
|
|
|
|
CFLAGS="$CFLAGS -flto"
|
|
LDFLAGS="$LDFLAGS -flto"
|
|
|
|
PKG_CHECK_MODULES([ZLIB], [zlib], [
|
|
CPPFLAGS="$ZLIB_CFLAGS $CPPFLAGS"
|
|
LIBS="$ZLIB_LIBS $LIBS"
|
|
])
|
|
|
|
PKG_CHECK_MODULES([LIBCRYPTO], [libcrypto], [
|
|
CPPFLAGS="$LIBCRYPTO_CFLAGS $CPPFLAGS"
|
|
LIBS="$LIBCRYPTO_LIBS $LIBS"
|
|
])
|
|
# See more static settings below... (search for found_static)
|
|
fi
|
|
|
|
# Is this gcc?
|
|
AM_CONDITIONAL(IS_GCC, test "x$GCC" = xyes)
|
|
|
|
# Is this Sun CC?
|
|
AC_EGREP_CPP(
|
|
yes,
|
|
[
|
|
#ifdef __SUNPRO_C
|
|
yes
|
|
#endif
|
|
],
|
|
found_suncc=yes,
|
|
found_suncc=no
|
|
)
|
|
AM_CONDITIONAL(IS_SUNCC, test "x$found_suncc" = xyes)
|
|
|
|
# Is this glibc?
|
|
AC_MSG_CHECKING(for glibc)
|
|
AC_EGREP_CPP(
|
|
yes,
|
|
[
|
|
#include <features.h>
|
|
#ifdef __GLIBC__
|
|
yes
|
|
#endif
|
|
],
|
|
found_glibc=yes,
|
|
found_glibc=no
|
|
)
|
|
AM_CONDITIONAL(IS_GLIBC, test "x$found_glibc" = xyes)
|
|
AC_MSG_RESULT($found_glibc)
|
|
|
|
# Check for various headers. Alternatives included from compat.h.
|
|
AC_CHECK_HEADERS(
|
|
[ \
|
|
bitstring.h \
|
|
curses.h \
|
|
dirent.h \
|
|
execinfo.h \
|
|
fcntl.h \
|
|
inttypes.h \
|
|
libutil.h \
|
|
ncurses.h \
|
|
ndir.h \
|
|
paths.h \
|
|
pty.h \
|
|
stdint.h \
|
|
sys/dir.h \
|
|
sys/ndir.h \
|
|
sys/tree.h \
|
|
term.h \
|
|
util.h \
|
|
]
|
|
)
|
|
|
|
# Look for library needed for flock.
|
|
AC_SEARCH_LIBS(flock, bsd)
|
|
|
|
# Look for library needed for backtrace
|
|
AC_SEARCH_LIBS(backtrace, execinfo)
|
|
|
|
# Check for some functions that are replaced or omitted.
|
|
AC_CHECK_FUNCS(
|
|
[ \
|
|
backtrace \
|
|
dirfd \
|
|
flock \
|
|
setproctitle \
|
|
sysconf \
|
|
cfmakeraw \
|
|
]
|
|
)
|
|
|
|
# Look for clock_gettime. Must come before event_init.
|
|
AC_SEARCH_LIBS(clock_gettime, rt)
|
|
|
|
# Look for libevent.
|
|
PKG_CHECK_MODULES(
|
|
LIBEVENT,
|
|
libevent,
|
|
[
|
|
CPPFLAGS="$LIBEVENT_CFLAGS $CPPFLAGS"
|
|
LIBS="$LIBEVENT_LIBS $LIBS"
|
|
found_libevent=yes
|
|
],
|
|
[
|
|
AC_SEARCH_LIBS(
|
|
event_init,
|
|
[event event-1.4 event2],
|
|
found_libevent=yes,
|
|
found_libevent=no
|
|
)
|
|
]
|
|
)
|
|
if test "x$found_libevent" = xno; then
|
|
AC_MSG_ERROR("libevent not found")
|
|
fi
|
|
|
|
# Look for ncurses
|
|
PKG_CHECK_MODULES(
|
|
LIBNCURSES,
|
|
ncurses,
|
|
[
|
|
CPPFLAGS="$LIBNCURSES_CFLAGS $CPPFLAGS"
|
|
LIBS="$LIBNCURSES_LIBS $LIBS"
|
|
found_curses=yes
|
|
],
|
|
[
|
|
AC_SEARCH_LIBS(
|
|
setupterm,
|
|
[ncurses curses terminfo],
|
|
found_curses=yes,
|
|
found_curses=no
|
|
)
|
|
]
|
|
)
|
|
if test "x$found_curses" = xno; then
|
|
AC_MSG_ERROR("curses not found")
|
|
fi
|
|
|
|
# Look for utempter.
|
|
AC_CHECK_HEADER(utempter.h, found_utempter=yes, found_utempter=no)
|
|
if test "x$found_utempter" = xyes; then
|
|
AC_SEARCH_LIBS(
|
|
utempter_add_record,
|
|
utempter,
|
|
found_utempter=yes,
|
|
found_utempter=no
|
|
)
|
|
if test "x$found_utempter" = xyes; then
|
|
AC_DEFINE(HAVE_UTEMPTER)
|
|
fi
|
|
fi
|
|
|
|
PKG_CHECK_MODULES(
|
|
MSGPACK,
|
|
msgpack >= 1.1.0,
|
|
[
|
|
CPPFLAGS="$MSGPACK_CFLAGS $CPPFLAGS"
|
|
LIBS="$MSGPACK_LIBS $LIBS"
|
|
found_msgpack=yes
|
|
],
|
|
found_msgpack=no
|
|
)
|
|
if test "x$found_msgpack" = xno; then
|
|
AC_MSG_ERROR("msgpack >= 1.1.0 not found")
|
|
fi
|
|
|
|
PKG_CHECK_MODULES(
|
|
LIBSSH,
|
|
libssh >= 0.6.0,
|
|
[
|
|
CPPFLAGS="$LIBSSH_CFLAGS $CPPFLAGS"
|
|
LIBS="$LIBSSH_LIBS $LIBS"
|
|
found_libssh=yes
|
|
],
|
|
found_libssh=no
|
|
)
|
|
if test "x$found_libssh" = xno; then
|
|
AC_MSG_ERROR("libssh >= 0.6.0 not found")
|
|
fi
|
|
|
|
# Check for b64_ntop.
|
|
AC_MSG_CHECKING(for b64_ntop)
|
|
AC_TRY_LINK(
|
|
[
|
|
#include <sys/types.h>
|
|
#include <netinet/in.h>
|
|
#include <resolv.h>
|
|
],
|
|
[b64_ntop(NULL, 0, NULL, 0);],
|
|
found_b64_ntop=yes,
|
|
found_b64_ntop=no
|
|
)
|
|
if test "x$found_b64_ntop" = xno; then
|
|
AC_MSG_RESULT(no)
|
|
|
|
AC_MSG_CHECKING(for b64_ntop with -lresolv)
|
|
LIBS="$LIBS -lresolv"
|
|
AC_TRY_LINK(
|
|
[
|
|
#include <sys/types.h>
|
|
#include <netinet/in.h>
|
|
#include <resolv.h>
|
|
],
|
|
[b64_ntop(NULL, 0, NULL, 0);],
|
|
found_b64_ntop=yes,
|
|
found_b64_ntop=no
|
|
)
|
|
if test "x$found_b64_ntop" = xno; then
|
|
AC_MSG_RESULT(no)
|
|
fi
|
|
fi
|
|
if test "x$found_b64_ntop" = xyes; then
|
|
AC_DEFINE(HAVE_B64_NTOP)
|
|
AC_MSG_RESULT(yes)
|
|
fi
|
|
AM_CONDITIONAL(NO_B64_NTOP, [test "x$found_b64_ntop" = xno])
|
|
|
|
# Look for networking libraries.
|
|
AC_SEARCH_LIBS(inet_ntoa, nsl)
|
|
AC_SEARCH_LIBS(socket, socket)
|
|
AC_CHECK_LIB(xnet, socket)
|
|
|
|
# Check for CMSG_DATA. Some platforms require _XOPEN_SOURCE_EXTENDED (for
|
|
# example see xopen_networking(7) on HP-UX).
|
|
XOPEN_DEFINES=
|
|
AC_MSG_CHECKING(for CMSG_DATA)
|
|
AC_EGREP_CPP(
|
|
yes,
|
|
[
|
|
#include <sys/socket.h>
|
|
#ifdef CMSG_DATA
|
|
yes
|
|
#endif
|
|
],
|
|
found_cmsg_data=yes,
|
|
found_cmsg_data=no
|
|
)
|
|
AC_MSG_RESULT($found_cmsg_data)
|
|
if test "x$found_cmsg_data" = xno; then
|
|
AC_MSG_CHECKING(if CMSG_DATA needs _XOPEN_SOURCE_EXTENDED)
|
|
AC_EGREP_CPP(
|
|
yes,
|
|
[
|
|
#define _XOPEN_SOURCE 1
|
|
#define _XOPEN_SOURCE_EXTENDED 1
|
|
#include <sys/socket.h>
|
|
#ifdef CMSG_DATA
|
|
yes
|
|
#endif
|
|
],
|
|
found_cmsg_data=yes,
|
|
found_cmsg_data=no
|
|
)
|
|
AC_MSG_RESULT($found_cmsg_data)
|
|
if test "x$found_cmsg_data" = xyes; then
|
|
XOPEN_DEFINES="-D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED"
|
|
else
|
|
AC_MSG_ERROR("CMSG_DATA not found")
|
|
fi
|
|
fi
|
|
AC_SUBST(XOPEN_DEFINES)
|
|
|
|
# Look for imsg in libutil. compat/imsg.c is linked by Makefile.am if missing.
|
|
AC_SEARCH_LIBS(imsg_init, util, found_imsg_init=yes, found_imsg_init=no)
|
|
if test "x$found_imsg_init" = xyes; then
|
|
AC_DEFINE(HAVE_IMSG)
|
|
fi
|
|
AM_CONDITIONAL(NO_IMSG, [test "x$found_imsg_init" = xno])
|
|
|
|
# Look for forkpty in libutil. compat/forkpty-*.c is linked if not found.
|
|
AC_SEARCH_LIBS(forkpty, util, found_forkpty=yes, found_forkpty=no)
|
|
if test "x$found_forkpty" = xyes; then
|
|
AC_DEFINE(HAVE_FORKPTY)
|
|
fi
|
|
AM_CONDITIONAL(NO_FORKPTY, [test "x$found_forkpty" = xno])
|
|
|
|
# Look for closefrom, compat/closefrom.c used if missing.
|
|
AC_CHECK_FUNC(closefrom, found_closefrom=yes, found_closefrom=no)
|
|
if test "x$found_closefrom" = xyes; then
|
|
AC_DEFINE(HAVE_CLOSEFROM)
|
|
fi
|
|
AM_CONDITIONAL(NO_CLOSEFROM, [test "x$found_closefrom" = xno])
|
|
|
|
# Look for daemon, compat/daemon.c used if missing.
|
|
AC_CHECK_FUNC(daemon, found_daemon=yes, found_daemon=no)
|
|
if test "x$found_daemon" = xyes; then
|
|
AC_DEFINE(HAVE_DAEMON)
|
|
fi
|
|
AM_CONDITIONAL(NO_DAEMON, [test "x$found_daemon" = xno])
|
|
|
|
# Look for setenv, compat/setenv.c used if missing.
|
|
AC_CHECK_FUNC(setenv, found_setenv=yes, found_setenv=no)
|
|
if test "x$found_setenv" = xyes; then
|
|
AC_DEFINE(HAVE_SETENV)
|
|
fi
|
|
AM_CONDITIONAL(NO_SETENV, [test "x$found_setenv" = xno])
|
|
|
|
# Look for strlcpy, compat/strlcpy.c used if missing.
|
|
AC_CHECK_FUNC(strlcpy, found_strlcpy=yes, found_strlcpy=no)
|
|
if test "x$found_strlcpy" = xyes; then
|
|
AC_DEFINE(HAVE_STRLCPY)
|
|
fi
|
|
AM_CONDITIONAL(NO_STRLCPY, [test "x$found_strlcpy" = xno])
|
|
|
|
# Look for strlcat, compat/strlcat.c used if missing.
|
|
AC_CHECK_FUNC(strlcat, found_strlcat=yes, found_strlcat=no)
|
|
if test "x$found_strlcat" = xyes; then
|
|
AC_DEFINE(HAVE_STRLCAT)
|
|
fi
|
|
AM_CONDITIONAL(NO_STRLCAT, [test "x$found_strlcat" = xno])
|
|
|
|
# Look for asprintf, compat/asprintf.c used if missing.
|
|
AC_CHECK_FUNC(asprintf, found_asprintf=yes, found_asprintf=no)
|
|
if test "x$found_asprintf" = xyes; then
|
|
AC_DEFINE(HAVE_ASPRINTF)
|
|
fi
|
|
AM_CONDITIONAL(NO_ASPRINTF, [test "x$found_asprintf" = xno])
|
|
|
|
# Look for fgetln, compat/fgetln.c used if missing.
|
|
AC_CHECK_FUNC(fgetln, found_fgetln=yes, found_fgetln=no)
|
|
if test "x$found_fgetln" = xyes; then
|
|
AC_DEFINE(HAVE_FGETLN)
|
|
fi
|
|
AM_CONDITIONAL(NO_FGETLN, [test "x$found_fgetln" = xno])
|
|
|
|
# Look for fparseln, compat/fparseln.c used if missing.
|
|
AC_CHECK_FUNC(fparseln, found_fparseln=yes, found_fparseln=no)
|
|
if test "x$found_fparseln" = xyes; then
|
|
AC_DEFINE(HAVE_FPARSELN)
|
|
fi
|
|
AM_CONDITIONAL(NO_FPARSELN, [test "x$found_fparseln" = xno])
|
|
|
|
# Look for strcasestr, compat/strcasestr.c used if missing.
|
|
AC_CHECK_FUNC(strcasestr, found_strcasestr=yes, found_strcasestr=no)
|
|
if test "x$found_strcasestr" = xyes; then
|
|
AC_DEFINE(HAVE_STRCASESTR)
|
|
fi
|
|
AM_CONDITIONAL(NO_STRCASESTR, [test "x$found_strcasestr" = xno])
|
|
|
|
# Look for strsep, compat/strsep.c used if missing.
|
|
AC_CHECK_FUNC(strsep, found_strsep=yes, found_strsep=no)
|
|
if test "x$found_strsep" = xyes; then
|
|
AC_DEFINE(HAVE_STRSEP)
|
|
fi
|
|
AM_CONDITIONAL(NO_STRSEP, [test "x$found_strsep" = xno])
|
|
|
|
# Look for strtonum, compat/strtonum.c used if missing.
|
|
AC_CHECK_FUNC(strtonum, found_strtonum=yes, found_strtonum=no)
|
|
if test "x$found_strtonum" = xyes; then
|
|
AC_DEFINE(HAVE_STRTONUM)
|
|
fi
|
|
AM_CONDITIONAL(NO_STRTONUM, [test "x$found_strtonum" = xno])
|
|
|
|
# Look for stravis, compat/{vis,unvis}.c used if missing.
|
|
AC_CHECK_FUNC(stravis, found_stravis=yes, found_stravis=no)
|
|
if test "x$found_stravis" = xyes; then
|
|
AC_MSG_CHECKING(if strnvis is broken)
|
|
AC_EGREP_HEADER([strnvis\(char \*, const char \*, size_t, int\)],
|
|
vis.h,
|
|
AC_MSG_RESULT(no),
|
|
[found_stravis=no])
|
|
if test "x$found_stravis" = xno; then
|
|
AC_MSG_RESULT(yes)
|
|
fi
|
|
fi
|
|
if test "x$found_stravis" = xyes; then
|
|
AC_DEFINE(HAVE_VIS)
|
|
fi
|
|
AM_CONDITIONAL(NO_VIS, [test "x$found_stravis" = xno])
|
|
|
|
# Look for cfmakeraw, compat/cfmakeraw.c used if missing.
|
|
AC_CHECK_FUNC(cfmakeraw, found_cfmakeraw=yes, found_cfmakeraw=no)
|
|
if test "x$found_cfmakeraw" = xyes; then
|
|
AC_DEFINE(HAVE_CFMAKERAW)
|
|
fi
|
|
AM_CONDITIONAL(NO_CFMAKERAW, [test "x$found_cfmakeraw" = xno])
|
|
|
|
# Look for openat, compat/openat.c used if missing.
|
|
AC_CHECK_FUNC(openat, found_openat=yes, found_openat=no)
|
|
if test "x$found_openat" = xyes; then
|
|
AC_DEFINE(HAVE_OPENAT)
|
|
fi
|
|
AM_CONDITIONAL(NO_OPENAT, [test "x$found_openat" = xno])
|
|
|
|
# Look for reallocarray, compat/reallocarray.c used if missing.
|
|
AC_CHECK_FUNC(reallocarray, found_reallocarray=yes, found_reallocarray=no)
|
|
if test "x$found_reallocarray" = xyes; then
|
|
AC_DEFINE(HAVE_REALLOCARRAY)
|
|
fi
|
|
AM_CONDITIONAL(NO_REALLOCARRAY, [test "x$found_reallocarray" = xno])
|
|
|
|
# Look for getopt. glibc's getopt does not enforce argument order and the ways
|
|
# of making it do so are stupid, so just use our own instead.
|
|
AC_CHECK_FUNC(getopt, found_getopt=yes, found_getopt=no)
|
|
if test "x$found_getopt" != xno; then
|
|
AC_CHECK_DECLS(
|
|
[optarg, optind, optreset],
|
|
,
|
|
found_getopt=no,
|
|
[
|
|
#include <unistd.h>
|
|
]
|
|
)
|
|
if test "x$found_getopt" != xno; then
|
|
AC_MSG_CHECKING(if system getopt should be avoided)
|
|
if test "x$found_glibc" = xyes; then
|
|
found_getopt=no
|
|
AC_MSG_RESULT(yes)
|
|
else
|
|
AC_MSG_RESULT(no)
|
|
AC_DEFINE(HAVE_GETOPT)
|
|
fi
|
|
fi
|
|
fi
|
|
AM_CONDITIONAL(NO_GETOPT, [test "x$found_getopt" = xno])
|
|
|
|
if test "x$found_static" = xyes; then
|
|
# libc and libdl should be dynamically linked.
|
|
# but we want to lower our requirements for libc's version.
|
|
# so we extract some symobls and add them here
|
|
if test `uname -m` = x86_64; then
|
|
LIBS="compat/memcpy.o -Wl,--wrap=memcpy $LIBS"
|
|
fi
|
|
LIBS="compat/clock_gettime.o libc/fdelt_chk.o $LIBS"
|
|
LIBS="-Wl,-Bstatic ${LIBS/-ldl/} -Wl,-Bdynamic -ldl"
|
|
fi
|
|
|
|
# Check for BSD-style integer types.
|
|
AC_MSG_CHECKING(for BSD-style unsigned types)
|
|
AC_COMPILE_IFELSE([AC_LANG_SOURCE(
|
|
[
|
|
#include <sys/types.h>
|
|
#ifdef HAVE_STDINT_H
|
|
#include <stdint.h>
|
|
#else
|
|
#include <inttypes.h>
|
|
#endif
|
|
int main(void)
|
|
{ u_int8_t u8; u_int16_t u16; u_int32_t u32; u_int64_t u64; }
|
|
])],
|
|
[AC_DEFINE(HAVE_BSD_TYPES) AC_MSG_RESULT(yes)],
|
|
AC_MSG_RESULT(no)
|
|
)
|
|
|
|
# Look for a suitable queue.h.
|
|
AC_CHECK_DECL(
|
|
TAILQ_PREV,
|
|
found_queue_h=yes,
|
|
found_queue_h=no,
|
|
[#include <sys/queue.h>]
|
|
)
|
|
AC_CHECK_DECL(
|
|
TAILQ_REPLACE,
|
|
,
|
|
found_queue_h=no,
|
|
[#include <sys/queue.h>]
|
|
)
|
|
if test "x$found_queue_h" = xyes; then
|
|
AC_DEFINE(HAVE_QUEUE_H)
|
|
fi
|
|
|
|
# Look for __progname.
|
|
AC_MSG_CHECKING(for __progname)
|
|
AC_LINK_IFELSE([AC_LANG_SOURCE(
|
|
[
|
|
#include <stdio.h>
|
|
#include <stdlib.h>
|
|
extern char *__progname;
|
|
int main(void) {
|
|
const char *cp = __progname;
|
|
printf("%s\n", cp);
|
|
exit(0);
|
|
}
|
|
])],
|
|
[AC_DEFINE(HAVE___PROGNAME) AC_MSG_RESULT(yes)],
|
|
AC_MSG_RESULT(no)
|
|
)
|
|
|
|
# Look for fcntl(F_CLOSEM).
|
|
AC_CHECK_DECL(
|
|
F_CLOSEM,
|
|
AC_DEFINE(HAVE_FCNTL_CLOSEM),
|
|
,
|
|
[#include <fcntl.h>]
|
|
)
|
|
|
|
# Look for /proc/$$.
|
|
AC_MSG_CHECKING(for /proc/\$\$)
|
|
if test -d /proc/$$; then
|
|
AC_DEFINE(HAVE_PROC_PID)
|
|
AC_MSG_RESULT(yes)
|
|
else
|
|
AC_MSG_RESULT(no)
|
|
fi
|
|
|
|
# Man page defaults to mdoc.
|
|
MANFORMAT=mdoc
|
|
AC_SUBST(MANFORMAT)
|
|
|
|
# Figure out the platform for osdep-*.c and forkpty-*.c.
|
|
AC_MSG_CHECKING(platform)
|
|
case "$host_os" in
|
|
*aix*)
|
|
AC_MSG_RESULT(aix)
|
|
PLATFORM=aix
|
|
;;
|
|
*darwin*)
|
|
AC_MSG_RESULT(darwin)
|
|
AC_DEFINE(BROKEN_CMSG_FIRSTHDR)
|
|
PLATFORM=darwin
|
|
;;
|
|
*dragonfly*)
|
|
AC_MSG_RESULT(dragonfly)
|
|
PLATFORM=dragonfly
|
|
;;
|
|
*linux*)
|
|
AC_MSG_RESULT(linux)
|
|
PLATFORM=linux
|
|
AC_DEFINE(IS_LINUX)
|
|
;;
|
|
*freebsd*)
|
|
AC_MSG_RESULT(freebsd)
|
|
PLATFORM=freebsd
|
|
;;
|
|
*netbsd*)
|
|
AC_MSG_RESULT(netbsd)
|
|
PLATFORM=netbsd
|
|
;;
|
|
*openbsd*)
|
|
AC_MSG_RESULT(openbsd)
|
|
PLATFORM=openbsd
|
|
;;
|
|
*sunos*)
|
|
AC_MSG_RESULT(sunos)
|
|
PLATFORM=sunos
|
|
;;
|
|
*solaris*)
|
|
AC_MSG_RESULT(sunos)
|
|
PLATFORM=sunos
|
|
MANFORMAT=man
|
|
;;
|
|
*hpux*)
|
|
AC_MSG_RESULT(hpux)
|
|
PLATFORM=hpux
|
|
;;
|
|
*cygwin*)
|
|
AC_MSG_RESULT(cygwin)
|
|
PLATFORM=cygwin
|
|
;;
|
|
*)
|
|
AC_MSG_RESULT(unknown)
|
|
PLATFORM=unknown
|
|
;;
|
|
esac
|
|
AC_SUBST(PLATFORM)
|
|
AM_CONDITIONAL(IS_AIX, test "x$PLATFORM" = xaix)
|
|
AM_CONDITIONAL(IS_DARWIN, test "x$PLATFORM" = xdarwin)
|
|
AM_CONDITIONAL(IS_DRAGONFLY, test "x$PLATFORM" = xdragonfly)
|
|
AM_CONDITIONAL(IS_LINUX, test "x$PLATFORM" = xlinux)
|
|
AM_CONDITIONAL(IS_FREEBSD, test "x$PLATFORM" = xfreebsd)
|
|
AM_CONDITIONAL(IS_NETBSD, test "x$PLATFORM" = xnetbsd)
|
|
AM_CONDITIONAL(IS_OPENBSD, test "x$PLATFORM" = xopenbsd)
|
|
AM_CONDITIONAL(IS_SUNOS, test "x$PLATFORM" = xsunos)
|
|
AM_CONDITIONAL(IS_HPUX, test "x$PLATFORM" = xhpux)
|
|
AM_CONDITIONAL(IS_UNKNOWN, test "x$PLATFORM" = xunknown)
|
|
|
|
# autoconf should create a Makefile.
|
|
AC_OUTPUT(Makefile)
|