# $NetBSD: Makefile,v 1.12 2014/07/24 15:11:09 christos Exp $

.include <bsd.own.mk>

SRCDIR=		${NETBSDSRCDIR}/external/bsd/tmux/dist
.PATH:		${SRCDIR}
.PATH:		${SRCDIR}/compat

BINDIR=		/usr/bin
PROG=		tmux
MAN=		tmux.1

WARNS?=	4

SRCS=		arguments.c
SRCS+=		attributes.c
SRCS+=		cfg.c
SRCS+=		client.c
SRCS+=		clock.c
SRCS+=		cmd-attach-session.c
SRCS+=		cmd-bind-key.c
SRCS+=		cmd-break-pane.c
SRCS+=		cmd-capture-pane.c
SRCS+=		cmd-choose-buffer.c
SRCS+=		cmd-choose-client.c
SRCS+=		cmd-choose-list.c
SRCS+=		cmd-choose-tree.c
SRCS+=		cmd-clear-history.c
SRCS+=		cmd-clock-mode.c
SRCS+=		cmd-command-prompt.c
SRCS+=		cmd-confirm-before.c
SRCS+=		cmd-copy-mode.c
SRCS+=		cmd-delete-buffer.c
SRCS+=		cmd-detach-client.c
SRCS+=		cmd-display-message.c
SRCS+=		cmd-display-panes.c
SRCS+=		cmd-find-window.c
SRCS+=		cmd-has-session.c
SRCS+=		cmd-if-shell.c
SRCS+=		cmd-join-pane.c
SRCS+=		cmd-kill-pane.c
SRCS+=		cmd-kill-server.c
SRCS+=		cmd-kill-session.c
SRCS+=		cmd-kill-window.c
SRCS+=		cmd-link-window.c
SRCS+=		cmd-list-buffers.c
SRCS+=		cmd-list-clients.c
SRCS+=		cmd-list-commands.c
SRCS+=		cmd-list-keys.c
SRCS+=		cmd-list-panes.c
SRCS+=		cmd-list-sessions.c
SRCS+=		cmd-list-windows.c
SRCS+=		cmd-list.c
SRCS+=		cmd-load-buffer.c
SRCS+=		cmd-lock-server.c
SRCS+=		cmd-move-window.c
SRCS+=		cmd-new-session.c
SRCS+=		cmd-new-window.c
SRCS+=		cmd-paste-buffer.c
SRCS+=		cmd-pipe-pane.c
SRCS+=		cmd-queue.c
SRCS+=		cmd-refresh-client.c
SRCS+=		cmd-rename-session.c
SRCS+=		cmd-rename-window.c
SRCS+=		cmd-resize-pane.c
SRCS+=		cmd-respawn-pane.c
SRCS+=		cmd-respawn-window.c
SRCS+=		cmd-rotate-window.c
SRCS+=		cmd-run-shell.c
SRCS+=		cmd-save-buffer.c
SRCS+=		cmd-select-layout.c
SRCS+=		cmd-select-pane.c
SRCS+=		cmd-select-window.c
SRCS+=		cmd-send-keys.c
SRCS+=		cmd-set-buffer.c
SRCS+=		cmd-set-environment.c
SRCS+=		cmd-set-option.c
SRCS+=		cmd-show-environment.c
SRCS+=		cmd-show-messages.c
SRCS+=		cmd-show-options.c
SRCS+=		cmd-source-file.c
SRCS+=		cmd-split-window.c
SRCS+=		cmd-string.c
SRCS+=		cmd-suspend-client.c
SRCS+=		cmd-swap-pane.c
SRCS+=		cmd-swap-window.c
SRCS+=		cmd-switch-client.c
SRCS+=		cmd-unbind-key.c
SRCS+=		cmd-unlink-window.c
SRCS+=		cmd-wait-for.c
SRCS+=		cmd.c
SRCS+=		colour.c
SRCS+=		control-notify.c
SRCS+=		control.c
SRCS+=		environ.c
SRCS+=		format.c
SRCS+=		grid-cell.c
SRCS+=		grid-view.c
SRCS+=		grid.c
SRCS+=		input-keys.c
SRCS+=		input.c
SRCS+=		job.c
SRCS+=		key-bindings.c
SRCS+=		key-string.c
SRCS+=		layout-custom.c
SRCS+=		layout-set.c
SRCS+=		layout.c
SRCS+=		log.c
SRCS+=		mode-key.c
SRCS+=		names.c
SRCS+=		notify.c
SRCS+=		options.c
SRCS+=		options-table.c
SRCS+=		osdep-netbsd.c
SRCS+=		paste.c
SRCS+=		resize.c
SRCS+=		screen-redraw.c
SRCS+=		screen-write.c
SRCS+=		screen.c
SRCS+=		server-client.c
SRCS+=		server-fn.c
SRCS+=		server-window.c
SRCS+=		server.c
SRCS+=		session.c
SRCS+=		signal.c
SRCS+=		status.c
SRCS+=		style.c
SRCS+=		tmux.c
SRCS+=		tty-acs.c
SRCS+=		tty-keys.c
SRCS+=		tty-term.c
SRCS+=		tty.c
SRCS+=		utf8.c
SRCS+=		window-choose.c
SRCS+=		window-clock.c
SRCS+=		window-copy.c
SRCS+=		window.c
SRCS+=		xmalloc.c
SRCS+=		xterm-keys.c
SRCS+=		utmp.c

# Files in compat/
#SRCS+=		forkpty-hpux.c
SRCS+=		imsg-buffer.c
SRCS+=		imsg.c
SRCS+=		strtonum.c
#SRCS+=		unvis.c
#SRCS+=		vis.c

CPPFLAGS+=	-I${SRCDIR} -I${.CURDIR}

# The following flags have been extracted from the compiler command-line
# generated by Automake and Autoconf when building tmux under NetBSD.
# Would be nicer to stick this in a config.h file, but the upstream code
# does not use one at this moment.

CPPFLAGS+=	-DHAVE_ASPRINTF=1
CPPFLAGS+=	-DHAVE_B64_NTOP=1
CPPFLAGS+=	-DHAVE_BITSTRING_H=1
CPPFLAGS+=	-DHAVE_BSD_TYPES=1
CPPFLAGS+=	-DHAVE_BZERO=1
CPPFLAGS+=	-DHAVE_CFMAKERAW=1
CPPFLAGS+=	-DHAVE_CLOSEFROM=1
CPPFLAGS+=	-DHAVE_CURSES_H=1
CPPFLAGS+=	-DHAVE_DAEMON=1
CPPFLAGS+=	-DHAVE_DECL_OPTARG=1
CPPFLAGS+=	-DHAVE_DECL_OPTIND=1
CPPFLAGS+=	-DHAVE_DECL_OPTRESET=1
CPPFLAGS+=	-DHAVE_DIRENT_H=1
CPPFLAGS+=	-DHAVE_DIRFD=1
CPPFLAGS+=	-DHAVE_FCNTL_CLOSEM=1
CPPFLAGS+=	-DHAVE_FCNTL_H=1
CPPFLAGS+=	-DHAVE_FGETLN=1
CPPFLAGS+=	-DHAVE_FORKPTY=1
CPPFLAGS+=	-DHAVE_GETOPT=1
CPPFLAGS+=	-DHAVE_INTTYPES_H=1
CPPFLAGS+=	-DHAVE_LIBRT=1
CPPFLAGS+=	-DHAVE_MEMORY_H=1
CPPFLAGS+=	-DHAVE_OPENAT=1
CPPFLAGS+=	-DHAVE_PATHS_H=1
CPPFLAGS+=	-DHAVE_PROC_PID=1
CPPFLAGS+=	-DHAVE_QUEUE_H=1
CPPFLAGS+=	-DHAVE_SETENV=1
CPPFLAGS+=	-DHAVE_SETPROCTITLE=1
CPPFLAGS+=	-DHAVE_STDINT_H=1
CPPFLAGS+=	-DHAVE_STDLIB_H=1
CPPFLAGS+=	-DHAVE_STRCASESTR=1
CPPFLAGS+=	-DHAVE_STRINGS_H=1
CPPFLAGS+=	-DHAVE_STRING_H=1
CPPFLAGS+=	-DHAVE_STRLCAT=1
CPPFLAGS+=	-DHAVE_STRLCPY=1
CPPFLAGS+=	-DHAVE_STRSEP=1
CPPFLAGS+=	-DHAVE_SYSCONF=1
CPPFLAGS+=	-DHAVE_SYS_DIR_H=1
CPPFLAGS+=	-DHAVE_SYS_STAT_H=1
CPPFLAGS+=	-DHAVE_SYS_TREE_H=1
CPPFLAGS+=	-DHAVE_SYS_TYPES_H=1
CPPFLAGS+=	-DHAVE_TREE_H=1
CPPFLAGS+=	-DHAVE_TERM_H=1
CPPFLAGS+=	-DHAVE_UNISTD_H=1
CPPFLAGS+=	-DHAVE_UTIL_H=1
CPPFLAGS+=	-DHAVE_VIS=1
CPPFLAGS+=	-DHAVE___PROGNAME=1
CPPFLAGS+=	-DPACKAGE=\"tmux\"
CPPFLAGS+=	-DPACKAGE_BUGREPORT=\"\"
CPPFLAGS+=	-DPACKAGE_NAME=\"tmux\"
CPPFLAGS+=	-DPACKAGE_STRING=\"tmux\ 1.9a\"
CPPFLAGS+=	-DPACKAGE_TARNAME=\"tmux\"
CPPFLAGS+=	-DPACKAGE_URL=\"\"
CPPFLAGS+=	-DPACKAGE_VERSION=\"1.9a\"
CPPFLAGS+=	-DSTDC_HEADERS=1
CPPFLAGS+=	-DSUPPORT_UTMP
CPPFLAGS+=	-DSUPPORT_UTMPX
CPPFLAGS+=	-DTMUX_CONF="\"/etc/tmux.conf\""
CPPFLAGS+=	-DVERSION=\"1.9a\"

LDADD+=		-levent -lterminfo -lutil -lm
DPADD+=		${LIBEVENT} ${LIBTERMINFO} ${LIBUTIL}

COPTS.cmd-display-message.c += -Wno-format-nonliteral
COPTS.cmd-pipe-pane.c += -Wno-format-nonliteral
COPTS.server-client.c += -Wno-format-nonliteral
COPTS.status.c += -Wno-format-nonliteral

.include <bsd.prog.mk>
