# makefile for lcurses library for Lua

# dist location
DISTDIR=$(HOME)/dist
TMP=/tmp

# change these to reflect your Lua installation
LUA=../lua-5.0.2
LUAINC= $(LUA)/include
LUALIB= $(LUA)/lib
LUABIN= $(LUA)/bin
#LUABIN= /mingw/bin

# no need to change anything below here
SHFLAGS= #-fPIC
CFLAGS= $(INCS) $(DEFS) $(WARN) $(SHFLAGS) -O2
DEFS= # -DDEBUG
WARN= -Wall -Werror -ansi #-ansi -pedantic -Wall
INCS= -I$(LUAINC) #-I../curses
LIBS= -L$(LUALIB) -lpanel -lcurses #../curses/panel.a ../curses/pdcurses.a -llualib -llua

MYNAME= curses
MYLIB= l$(MYNAME)

OBJS= $(MYLIB).o

T= $(MYLIB).so

VER=0.1-devel
TARFILE = $(DISTDIR)/$(MYLIB)-$(VER).tar.gz
TARFILES = \
	README Makefile \
	lcurses.c lpanel.c \
	lcurses.html \
	requireso.lua curses.lua curses.panel.lua \
	test.lua \
	cui.lua cui.ctrls.lua testcui.lua \
	firework.lua interp.lua

all: $T

lua: lcurses.c lua.c
	gcc -I. -DDEBUG -g -o lua lua.c lcurses.c -L. -llualib -llua -lpanel -lcurses -lm -ldl

cui: $T
	$(LUABIN)/lua -l$(MYNAME) -l$(MYNAME).panel testcui.lua

test:	$T
	$(LUABIN)/lua -l$(MYNAME) -l$(MYNAME).panel test.lua

$T:	$(OBJS)
	$(CC) $(SHFLAGS) -o $@ -shared $(OBJS) $(LIBS)

lcurses.o: lcurses.c lpanel.c

clean:
	rm -f $(OBJS) $T core core.* a.out

dist:
	@echo 'Exporting...'
	@cvs export -r HEAD -d $(TMP)/$(MYLIB)-$(VER) $(MYLIB)
	@echo 'Compressing...'
	@tar -zcf $(TARFILE) -C $(TMP) $(MYLIB)-$(VER)
	@rm -fr $(TMP)/$(MYLIB)-$(VER)
	@lsum $(TARFILE) $(DISTDIR)/md5sums.txt
	@echo 'Done.'
