3 # Obvious program stuff.
5 CLEANFILES = tmux.1.mdoc tmux.1.man cmd-parse.c
7 # Distribution tarball options.
9 CHANGES README README.ja COPYING example_tmux.conf \
10 osdep-*.c mdoc2man.awk tmux.1
11 dist_EXTRA_tmux_SOURCES = compat/*.[ch]
14 AM_CPPFLAGS += @XOPEN_DEFINES@ \
15 -DTMUX_VERSION='"@VERSION@"' \
16 -DTMUX_CONF='"$(sysconfdir)/tmux.conf:~/.tmux.conf:$$XDG_CONFIG_HOME/tmux/tmux.conf:~/.config/tmux/tmux.conf"' \
17 -DTMUX_LOCK_CMD='"@DEFAULT_LOCK_CMD@"' \
18 -DTMUX_TERM='"@DEFAULT_TERM@"'
20 # Additional object files.
25 AM_CFLAGS += -std=gnu99 -O2
28 AM_CFLAGS += -Wno-long-long -Wall -W -Wformat=2
29 AM_CFLAGS += -Wmissing-prototypes -Wstrict-prototypes -Wmissing-declarations
30 AM_CFLAGS += -Wwrite-strings -Wshadow -Wpointer-arith -Wsign-compare
31 AM_CFLAGS += -Wundef -Wbad-function-cast -Winline -Wcast-align
32 AM_CFLAGS += -Wdeclaration-after-statement -Wno-pointer-sign -Wno-attributes
33 AM_CFLAGS += -Wno-unused-result -Wno-format-y2k
35 AM_CFLAGS += -Wno-deprecated-declarations -Wno-cast-align
37 AM_CPPFLAGS += -DDEBUG
39 AM_CPPFLAGS += -iquote.
42 # Set flags for Solaris.
45 AM_CPPFLAGS += -D_XPG6
47 AM_CPPFLAGS += -D_XPG4_2
51 # Set flags for Sun CC.
53 AM_CFLAGS += -erroff=E_EMPTY_DECLARATION
56 # Set _LINUX_SOURCE_COMPAT for AIX for malloc(0).
58 AM_CPPFLAGS += -D_LINUX_SOURCE_COMPAT=1
61 # Set flags for NetBSD.
63 AM_CPPFLAGS += -D_OPENBSD_SOURCE
66 # Set flags for Haiku.
68 AM_CPPFLAGS += -D_BSD_SOURCE
78 cmd-attach-session.c \
83 cmd-command-prompt.c \
84 cmd-confirm-before.c \
88 cmd-display-message.c \
102 cmd-list-sessions.c \
113 cmd-refresh-client.c \
114 cmd-rename-session.c \
115 cmd-rename-window.c \
117 cmd-resize-window.c \
119 cmd-respawn-window.c \
120 cmd-rotate-window.c \
123 cmd-select-layout.c \
125 cmd-select-window.c \
127 cmd-server-access.c \
129 cmd-set-environment.c \
131 cmd-show-environment.c \
132 cmd-show-messages.c \
134 cmd-show-prompt-history.c \
139 cmd-switch-client.c \
204 nodist_tmux_SOURCES = osdep-@PLATFORM@.c
206 # Add compat file for forkpty.
208 nodist_tmux_SOURCES += compat/forkpty-@PLATFORM@.c
211 # Add compat file for systemd.
213 nodist_tmux_SOURCES += compat/systemd.c
216 # Add compat file for utf8proc.
218 nodist_tmux_SOURCES += compat/utf8proc.c
221 # Enable sixel support.
223 dist_tmux_SOURCES += image.c image-sixel.c
227 check_PROGRAMS = fuzz/input-fuzzer
228 fuzz_input_fuzzer_LDFLAGS = $(FUZZING_LIBS)
229 fuzz_input_fuzzer_LDADD = $(LDADD) $(tmux_OBJECTS)
232 # Install tmux.1 in the right format.
234 if test x@MANFORMAT@ = xmdoc; then \
235 sed -e "s|@SYSCONFDIR@|$(sysconfdir)|g" $(srcdir)/tmux.1 \
236 >$(srcdir)/tmux.1.mdoc; \
238 sed -e "s|@SYSCONFDIR@|$(sysconfdir)|g" $(srcdir)/tmux.1| \
239 $(AWK) -f $(srcdir)/mdoc2man.awk >$(srcdir)/tmux.1.man; \
241 $(mkdir_p) $(DESTDIR)$(mandir)/man1
242 $(INSTALL_DATA) $(srcdir)/tmux.1.@MANFORMAT@ \
243 $(DESTDIR)$(mandir)/man1/tmux.1