# Makefile.am # Obvious program stuff. bin_PROGRAMS = tmux CLEANFILES = tmux.1.mdoc tmux.1.man # Distribution tarball options. EXTRA_DIST = \ CHANGES FAQ README TODO COPYING example_tmux.conf compat/*.[ch] \ osdep-*.c mdoc2man.awk tmux.1 dist-hook: grep "^#enable_debug=" configure # Preprocessor flags. AM_CPPFLAGS += @XOPEN_DEFINES@ -DTMUX_CONF="\"$(sysconfdir)/tmux.conf\"" # glibc as usual does things ass-backwards and hides useful things by default, # so everyone has to add this. if IS_GLIBC AM_CFLAGS += -D_GNU_SOURCE endif # Set flags for gcc. if IS_GCC AM_CFLAGS += -std=gnu99 -O2 if IS_DEBUG AM_CFLAGS += -g AM_CFLAGS += -Wno-long-long -Wall -W -Wformat=2 AM_CFLAGS += -Wmissing-prototypes -Wstrict-prototypes -Wmissing-declarations AM_CFLAGS += -Wwrite-strings -Wshadow -Wpointer-arith -Wsign-compare AM_CFLAGS += -Wundef -Wbad-function-cast -Winline -Wcast-align AM_CFLAGS += -Wdeclaration-after-statement -Wno-pointer-sign -Wno-attributes AM_CPPFLAGS += -DDEBUG endif if IS_COVERAGE AM_CFLAGS += -g -O0 --coverage AM_LDFLAGS += --coverage endif if IS_PROFILE AM_CFLAGS += -g -O0 -pg AM_LDFLAGS += -pg endif AM_CPPFLAGS += -iquote. endif # Set flags for Solaris. if IS_SUNOS if IS_GCC AM_CPPFLAGS += -D_XPG6 -D__EXTENSIONS__ -D_POSIX_PTHREAD_SEMANTICS else AM_CPPFLAGS += -D_XPG4_2 -D__EXTENSIONS__ -D_POSIX_PTHREAD_SEMANTICS endif endif # Set flags for Sun CC. if IS_SUNCC AM_CFLAGS += -erroff=E_EMPTY_DECLARATION endif # Set _LINUX_SOURCE_COMPAT for AIX for malloc(0). if IS_AIX DEFS += -D_LINUX_SOURCE_COMPAT=1 endif # Set flags for NetBSD. if IS_NETBSD AM_CPPFLAGS += -D_OPENBSD_SOURCE endif # List of sources. dist_tmux_SOURCES = \ alerts.c \ arguments.c \ attributes.c \ cfg.c \ client.c \ cmd-attach-session.c \ cmd-bind-key.c \ cmd-break-pane.c \ cmd-capture-pane.c \ cmd-choose-buffer.c \ cmd-choose-client.c \ cmd-choose-tree.c \ cmd-clear-history.c \ cmd-command-prompt.c \ cmd-confirm-before.c \ cmd-copy-mode.c \ cmd-detach-client.c \ cmd-display-message.c \ cmd-display-panes.c \ cmd-find-window.c \ cmd-find.c \ cmd-if-shell.c \ cmd-join-pane.c \ cmd-kill-pane.c \ cmd-kill-server.c \ cmd-kill-session.c \ cmd-kill-window.c \ cmd-list-buffers.c \ cmd-list-clients.c \ cmd-list-keys.c \ cmd-list-panes.c \ cmd-list-sessions.c \ cmd-list-windows.c \ cmd-list.c \ cmd-load-buffer.c \ cmd-lock-server.c \ cmd-move-window.c \ cmd-new-session.c \ cmd-new-window.c \ cmd-paste-buffer.c \ cmd-pipe-pane.c \ cmd-queue.c \ cmd-refresh-client.c \ cmd-rename-session.c \ cmd-rename-window.c \ cmd-resize-pane.c \ cmd-respawn-pane.c \ cmd-respawn-window.c \ cmd-rotate-window.c \ cmd-run-shell.c \ cmd-save-buffer.c \ cmd-select-layout.c \ cmd-select-pane.c \ cmd-select-window.c \ cmd-send-keys.c \ cmd-set-buffer.c \ cmd-set-environment.c \ cmd-set-hook.c \ cmd-set-option.c \ cmd-show-environment.c \ cmd-show-messages.c \ cmd-show-options.c \ cmd-source-file.c \ cmd-split-window.c \ cmd-string.c \ cmd-swap-pane.c \ cmd-swap-window.c \ cmd-switch-client.c \ cmd-unbind-key.c \ cmd-wait-for.c \ cmd.c \ colour.c \ compat.h \ control-notify.c \ control.c \ environ.c \ format.c \ grid-view.c \ grid.c \ hooks.c \ input-keys.c \ input.c \ job.c \ key-bindings.c \ key-string.c \ layout-custom.c \ layout-set.c \ layout.c \ log.c \ mode-key.c \ names.c \ notify.c \ options-table.c \ options.c \ paste.c \ proc.c \ pty.c \ resize.c \ screen-redraw.c \ screen-write.c \ screen.c \ server-client.c \ server-fn.c \ server.c \ session.c \ signal.c \ status.c \ style.c \ tmux.c \ tmux.h \ tty-acs.c \ tty-keys.c \ tty-term.c \ tty.c \ utf8.c \ window-choose.c \ window-clock.c \ window-copy.c \ window.c \ xmalloc.c \ xmalloc.h \ xterm-keys.c nodist_tmux_SOURCES = osdep-@PLATFORM@.c # Add compat file for utf8proc. if HAVE_UTF8PROC nodist_tmux_SOURCES += compat/utf8proc.c endif # Add compat for missing or broken functions. if NO_FORKPTY nodist_tmux_SOURCES += compat/forkpty-@PLATFORM@.c endif if NO_IMSG nodist_tmux_SOURCES += compat/imsg.c compat/imsg-buffer.c endif if NO_CLOSEFROM nodist_tmux_SOURCES += compat/closefrom.c endif if NO_DAEMON nodist_tmux_SOURCES += compat/daemon.c endif if NO_GETPROGNAME nodist_tmux_SOURCES += compat/getprogname.c endif if NO_SETPROCTITLE nodist_tmux_SOURCES += compat/setproctitle.c endif if NO_SETENV nodist_tmux_SOURCES += compat/setenv.c endif if NO_STRLCAT nodist_tmux_SOURCES += compat/strlcat.c endif if NO_STRLCPY nodist_tmux_SOURCES += compat/strlcpy.c endif if NO_ASPRINTF nodist_tmux_SOURCES += compat/asprintf.c endif if NO_FGETLN nodist_tmux_SOURCES += compat/fgetln.c endif if NO_FPARSELN nodist_tmux_SOURCES += compat/fparseln.c endif if NO_GETOPT nodist_tmux_SOURCES += compat/getopt.c endif if NO_STRCASESTR nodist_tmux_SOURCES += compat/strcasestr.c endif if NO_STRSEP nodist_tmux_SOURCES += compat/strsep.c endif if NO_VIS nodist_tmux_SOURCES += compat/vis.c compat/unvis.c endif if NO_STRTONUM nodist_tmux_SOURCES += compat/strtonum.c endif if NO_B64_NTOP nodist_tmux_SOURCES += compat/base64.c endif if NO_CFMAKERAW nodist_tmux_SOURCES += compat/cfmakeraw.c endif if NO_REALLOCARRAY nodist_tmux_SOURCES += compat/reallocarray.c endif # Install tmux.1 in the right format. install-exec-hook: if test x@MANFORMAT@ = xmdoc; then \ sed -e "s|@SYSCONFDIR@|$(sysconfdir)|g" $(srcdir)/tmux.1 \ >$(srcdir)/tmux.1.mdoc; \ else \ sed -e "s|@SYSCONFDIR@|$(sysconfdir)|g" $(srcdir)/tmux.1| \ $(AWK) -f$(srcdir)/mdoc2man.awk >$(srcdir)/tmux.1.man; \ fi $(mkdir_p) $(DESTDIR)$(mandir)/man1 $(INSTALL_DATA) $(srcdir)/tmux.1.@MANFORMAT@ \ $(DESTDIR)$(mandir)/man1/tmux.1