|  | #!/bin/sh | 
|  | # $Id: configure,v 1.46 2009-11-26 09:19:04 nicm Exp $ | 
|  | # | 
|  | # Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net> | 
|  | # | 
|  | # Permission to use, copy, modify, and distribute this software for any | 
|  | # purpose with or without fee is hereby granted, provided that the above | 
|  | # copyright notice and this permission notice appear in all copies. | 
|  | # | 
|  | # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES | 
|  | # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF | 
|  | # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR | 
|  | # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES | 
|  | # WHATSOEVER RESULTING FROM LOSS OF MIND, USE, DATA OR PROFITS, WHETHER | 
|  | # IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING | 
|  | # OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | 
|  | # | 
|  |  | 
|  | TMUX_PLATFORM=${TMUX_PLATFORM:-`uname -s`} | 
|  |  | 
|  | CONFIG_H=config.h | 
|  | rm -f $CONFIG_H | 
|  | echo "/* $TMUX_PLATFORM */" >$CONFIG_H | 
|  |  | 
|  | CONFIG_MK=config.mk | 
|  | rm -f $CONFIG_MK | 
|  | echo "# $TMUX_PLATFORM" >$CONFIG_MK | 
|  |  | 
|  | cat <<EOF >>$CONFIG_H | 
|  | #undef HAVE_ASPRINTF | 
|  | #undef HAVE_BROKEN_CMSG_FIRSTHDR | 
|  | #undef HAVE_BROKEN_CURSES_H | 
|  | #undef HAVE_BROKEN_KQUEUE | 
|  | #undef HAVE_BROKEN_POLL | 
|  | #undef HAVE_BZERO | 
|  | #undef HAVE_CRYPT_H | 
|  | #undef HAVE_DAEMON | 
|  | #undef HAVE_FGETLN | 
|  | #undef HAVE_FORKPTY | 
|  | #undef HAVE_GETOPT | 
|  | #undef HAVE_IMSG | 
|  | #undef HAVE_LIBUTIL_H | 
|  | #undef HAVE_PATHS_H | 
|  | #undef HAVE_PROGNAME | 
|  | #undef HAVE_PTY_H | 
|  | #undef HAVE_QUEUE_H | 
|  | #undef HAVE_SETPROCTITLE | 
|  | #undef HAVE_STRCASESTR | 
|  | #undef HAVE_STRLCAT | 
|  | #undef HAVE_STRLCPY | 
|  | #undef HAVE_STRSEP | 
|  | #undef HAVE_STRTONUM | 
|  | #undef HAVE_TREE_H | 
|  | #undef HAVE_UTIL_H | 
|  | #undef HAVE_U_INT | 
|  | #undef HAVE_VIS | 
|  | EOF | 
|  |  | 
|  | case $TMUX_PLATFORM in | 
|  | # ------------------------------------------------------------------------------ | 
|  | OpenBSD) | 
|  | cat <<EOF >>$CONFIG_H | 
|  | #define HAVE_ASPRINTF | 
|  | #define HAVE_BITSTRING_H | 
|  | #define HAVE_BZERO | 
|  | #define HAVE_DAEMON | 
|  | #define HAVE_FGETLN | 
|  | #define HAVE_FORKPTY | 
|  | #define HAVE_GETOPT | 
|  | #define HAVE_PATHS_H | 
|  | #define HAVE_PROGNAME | 
|  | #define HAVE_QUEUE_H | 
|  | #define HAVE_SETPROCTITLE | 
|  | #define HAVE_STRCASESTR | 
|  | #define HAVE_STRLCAT | 
|  | #define HAVE_STRLCPY | 
|  | #define HAVE_STRSEP | 
|  | #define HAVE_STRTONUM | 
|  | #define HAVE_TREE_H | 
|  | #define HAVE_UTIL_H | 
|  | #define HAVE_U_INT | 
|  | #define HAVE_VIS | 
|  | EOF | 
|  | cat <<EOF >>$CONFIG_MK | 
|  | LIBS+= -lcurses -lutil -levent | 
|  | SRCS+= osdep-openbsd.c \ | 
|  | compat/imsg-buffer.c \ | 
|  | compat/imsg.c | 
|  | EOF | 
|  | ;; | 
|  | # ------------------------------------------------------------------------------ | 
|  | Linux) | 
|  | cat <<EOF >>$CONFIG_H | 
|  | #define HAVE_ASPRINTF | 
|  | #define HAVE_BZERO | 
|  | #define HAVE_DAEMON | 
|  | #define HAVE_FORKPTY | 
|  | #define HAVE_PATHS_H | 
|  | #define HAVE_PROGNAME | 
|  | #define HAVE_PTY_H | 
|  | #define HAVE_STRCASESTR | 
|  | #define HAVE_STRSEP | 
|  | #define HAVE_U_INT | 
|  | EOF | 
|  | cat <<EOF >>$CONFIG_MK | 
|  | CFLAGS+= -std=c99 -D_GNU_SOURCE -D_POSIX_SOURCE | 
|  | LIBS+= -lncurses -lcrypt -lutil -levent | 
|  | SRCS+= osdep-linux.c \ | 
|  | compat/fgetln.c \ | 
|  | compat/strlcat.c \ | 
|  | compat/strlcpy.c \ | 
|  | compat/strtonum.c \ | 
|  | compat/getopt.c \ | 
|  | compat/vis.c \ | 
|  | compat/unvis.c \ | 
|  | compat/imsg-buffer.c \ | 
|  | compat/imsg.c | 
|  | EOF | 
|  | ;; | 
|  | # ------------------------------------------------------------------------------ | 
|  | AIX) | 
|  | cat <<EOF >>$CONFIG_H | 
|  | #define HAVE_BZERO | 
|  | #define HAVE_DAEMON | 
|  | EOF | 
|  | cat <<EOF >>$CONFIG_MK | 
|  | LIBS+= -lcurses -levent | 
|  | SRCS+= osdep-unknown.c \ | 
|  | compat/asprintf.c \ | 
|  | compat/daemon.c \ | 
|  | compat/forkpty-aix.c \ | 
|  | compat/strcasestr.c \ | 
|  | compat/strlcat.c \ | 
|  | compat/strlcpy.c \ | 
|  | compat/strsep.c \ | 
|  | compat/strtonum.c \ | 
|  | compat/fgetln.c \ | 
|  | compat/getopt.c \ | 
|  | compat/vis.c \ | 
|  | compat/unvis.c \ | 
|  | compat/imsg-buffer.c \ | 
|  | compat/imsg.c | 
|  | EOF | 
|  | ;; | 
|  | # ------------------------------------------------------------------------------ | 
|  | SunOS) | 
|  | cat <<EOF >>$CONFIG_H | 
|  | #define HAVE_CRYPT_H | 
|  | #define HAVE_STRLCAT | 
|  | #define HAVE_STRLCPY | 
|  | EOF | 
|  | cat <<EOF >>$CONFIG_MK | 
|  | CFLAGS+= -D_XPG4_2 -D__EXTENSIONS__ -D_POSIX_PTHREAD_SEMANTICS | 
|  | LIBS+= -lcurses -lsocket -lnsl -levent | 
|  | SRCS+= osdep-sunos.c \ | 
|  | compat/asprintf.c \ | 
|  | compat/daemon.c \ | 
|  | compat/fgetln.c \ | 
|  | compat/forkpty-sunos.c \ | 
|  | compat/getopt.c \ | 
|  | compat/strcasestr.c \ | 
|  | compat/strsep.c \ | 
|  | compat/strtonum.c \ | 
|  | compat/vis.c \ | 
|  | compat/unvis.c \ | 
|  | compat/imsg-buffer.c \ | 
|  | compat/imsg.c | 
|  | EOF | 
|  | ;; | 
|  | # ------------------------------------------------------------------------------ | 
|  | Darwin) | 
|  | cat <<EOF >>$CONFIG_H | 
|  | #define HAVE_ASPRINTF | 
|  | #define HAVE_BROKEN_CMSG_FIRSTHDR | 
|  | #define HAVE_BROKEN_KQUEUE | 
|  | #define HAVE_BROKEN_POLL | 
|  | #define HAVE_BZERO | 
|  | #define HAVE_DAEMON | 
|  | #define HAVE_FGETLN | 
|  | #define HAVE_FORKPTY | 
|  | #define HAVE_GETOPT | 
|  | #define HAVE_PATHS_H | 
|  | #define HAVE_PROGNAME | 
|  | #define HAVE_STRCASESTR | 
|  | #define HAVE_STRLCAT | 
|  | #define HAVE_STRLCPY | 
|  | #define HAVE_STRSEP | 
|  | #define HAVE_UTIL_H | 
|  | #define HAVE_U_INT | 
|  | EOF | 
|  | cat <<EOF >>$CONFIG_MK | 
|  | LIBS+= -lcurses -levent | 
|  | SRCS+= osdep-darwin.c \ | 
|  | compat/strtonum.c \ | 
|  | compat/vis.c \ | 
|  | compat/unvis.c \ | 
|  | compat/imsg-buffer.c \ | 
|  | compat/imsg.c | 
|  | EOF | 
|  | ;; | 
|  | # ------------------------------------------------------------------------------ | 
|  | FreeBSD|DragonFly) | 
|  | cat <<EOF >>$CONFIG_H | 
|  | #define HAVE_ASPRINTF | 
|  | #define HAVE_BZERO | 
|  | #define HAVE_DAEMON | 
|  | #define HAVE_FGETLN | 
|  | #define HAVE_FORKPTY | 
|  | #define HAVE_GETOPT | 
|  | #define HAVE_LIBUTIL_H | 
|  | #define HAVE_PATHS_H | 
|  | #define HAVE_PROGNAME | 
|  | #define HAVE_SETPROCTITLE | 
|  | #define HAVE_STRCASESTR | 
|  | #define HAVE_STRLCAT | 
|  | #define HAVE_STRLCPY | 
|  | #define HAVE_STRTONUM | 
|  | #define HAVE_STRSEP | 
|  | #define HAVE_U_INT | 
|  | EOF | 
|  | cat <<EOF >>$CONFIG_MK | 
|  | LIBS+= -lcurses -lcrypt -lutil -levent | 
|  | SRCS+= osdep-freebsd.c \ | 
|  | compat/vis.c \ | 
|  | compat/unvis.c \ | 
|  | compat/imsg-buffer.c \ | 
|  | compat/imsg.c | 
|  | EOF | 
|  | ;; | 
|  | # ------------------------------------------------------------------------------ | 
|  | NetBSD) | 
|  | cat <<EOF >>$CONFIG_H | 
|  | #define HAVE_ASPRINTF | 
|  | #define HAVE_BROKEN_CURSES_H | 
|  | #define HAVE_BZERO | 
|  | #define HAVE_DAEMON | 
|  | #define HAVE_FGETLN | 
|  | #define HAVE_FORKPTY | 
|  | #define HAVE_GETOPT | 
|  | #define HAVE_PATHS_H | 
|  | #define HAVE_PROGNAME | 
|  | #define HAVE_SETPROCTITLE | 
|  | #define HAVE_STRCASESTR | 
|  | #define HAVE_STRLCAT | 
|  | #define HAVE_STRLCPY | 
|  | #define HAVE_STRSEP | 
|  | #define HAVE_UTIL_H | 
|  | #define HAVE_U_INT | 
|  | EOF | 
|  | cat <<EOF >>$CONFIG_MK | 
|  | CPPFLAGS+= -I/usr/pkg/include | 
|  | LDFLAGS+= -L/usr/pkg/lib | 
|  | LIBS+= -lncurses -lcrypt -lutil -levent | 
|  | SRCS+= osdep-netbsd.c \ | 
|  | compat/strtonum.c \ | 
|  | compat/vis.c \ | 
|  | compat/unvis.c \ | 
|  | compat/imsg-buffer.c \ | 
|  | compat/imsg.c | 
|  | EOF | 
|  | ;; | 
|  | # ------------------------------------------------------------------------------ | 
|  | *) | 
|  | echo Unable to configure for $TMUX_PLATFORM | 
|  | exit 1 | 
|  | esac | 
|  |  | 
|  | echo Configured for $TMUX_PLATFORM | 
|  | exit 0 |