aboutsummaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorNicholas Marriott <nicholas.marriott@gmail.com>2007-07-09 19:04:12 +0000
committerNicholas Marriott <nicholas.marriott@gmail.com>2007-07-09 19:04:12 +0000
commita41ece5ff0d3ce7a0b7d987baa9759f8a012b48b (patch)
tree95adfffa5b036fe4c593254efd2b32aa03696b34 /Makefile
parent2905e0ef10926ab6f538598228a71e40844a8be6 (diff)
downloadrtmux-a41ece5ff0d3ce7a0b7d987baa9759f8a012b48b.tar.gz
rtmux-a41ece5ff0d3ce7a0b7d987baa9759f8a012b48b.tar.bz2
rtmux-a41ece5ff0d3ce7a0b7d987baa9759f8a012b48b.zip
Initial import to CVS. Basic functions are working, albeit with a couple of showstopper memory bugs and many missing features. Detaching, reattaching, creating new sessions, listing sessions work acceptably for using with shells. Simple curses programs (top, systat, tetris) and more complicated ones (mutt, emacs) that don't require scrolling regions (ESC[r) mostly work fine (including mutt, emacs). No status bar yet and no key remapping or other customisation.
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile65
1 files changed, 65 insertions, 0 deletions
diff --git a/Makefile b/Makefile
new file mode 100644
index 00000000..60f38ac3
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,65 @@
+# $Id: Makefile,v 1.1.1.1 2007-07-09 19:03:33 nicm Exp $
+
+.SUFFIXES: .c .o .y .l .h
+.PHONY: clean
+
+PROG= tmux
+VERSION= 0.1
+
+OS!= uname
+REL!= uname -r
+DATE!= date +%Y%m%d-%H%M
+
+SRCS= tmux.c server.c buffer.c buffer-poll.c xmalloc.c input.c screen.c \
+ window.c session.c local.c log.c command.c
+HDRS= tmux.h
+
+LEX= lex
+YACC= yacc -d
+
+CC= cc
+INCDIRS+= -I. -I- -I/usr/local/include
+CFLAGS+= -DBUILD="\"$(VERSION) ($(DATE))\""
+CFLAGS+= -g -ggdb -DDEBUG
+#CFLAGS+= -pedantic -std=c99
+#CFLAGS+= -Wredundant-decls -Wdisabled-optimization -Wendif-labels
+CFLAGS+= -Wno-long-long -Wall -W -Wnested-externs -Wformat=2
+CFLAGS+= -Wmissing-prototypes -Wstrict-prototypes -Wmissing-declarations
+CFLAGS+= -Wwrite-strings -Wshadow -Wpointer-arith -Wcast-qual -Wsign-compare
+CFLAGS+= -Wundef -Wshadow -Wbad-function-cast -Winline -Wcast-align
+
+PREFIX?= /usr/local
+INSTALLBIN= install -g bin -o root -m 555
+INSTALLMAN= install -g bin -o root -m 444
+
+LDFLAGS+= -L/usr/local/lib
+LIBS+= -lutil -lncurses
+
+OBJS= ${SRCS:S/.c/.o/:S/.y/.o/:S/.l/.o/}
+
+CLEANFILES= ${PROG} *.o .depend *~ ${PROG}.core *.log
+
+.c.o:
+ ${CC} ${CFLAGS} ${INCDIRS} -c ${.IMPSRC} -o ${.TARGET}
+
+.l.o:
+ ${LEX} ${.IMPSRC}
+ ${CC} ${CFLAGS} ${INCDIRS} -c lex.yy.c -o ${.TARGET}
+
+.y.o:
+ ${YACC} ${.IMPSRC}
+ ${CC} ${CFLAGS} ${INCDIRS} -c y.tab.c -o ${.TARGET}
+
+all: .depend ${PROG}
+
+${PROG}: ${OBJS}
+ ${CC} ${LDFLAGS} -o ${PROG} ${LIBS} ${OBJS}
+
+.depend: ${HDRS}
+ -mkdep ${CFLAGS} ${INCDIRS} ${SRCS:M*.c}
+
+depend:
+ mkdep ${CFLAGS} ${INCDIRS} ${SRCS:M*.c}
+
+clean:
+ rm -f ${CLEANFILES}