# -*- Makefile -*-
#####################
# Macro Definitions #
#####################
LUA_VER	= 5.1
LUA	= lua$(LUA_VER)
CXX 	= g++
LIMEOBJ ?= ../includes/main.o
OBJS 	= interface.o $(LIMEOBJ)
RM 	= /bin/rm -f

CXXFLAGS = -fPIC -W -Wall \
   $(shell pkg-config --cflags lua$(LUA_VER)) \
   $(MY_CXXFLAGS)

LIBS = $(shell pkg-config --libs lua$(LUA_VER))

##############################
# Basic Compile Instructions #
##############################

all: $(NAME)

# generated c-code from lua
lua_code.h: $(SRC) bin2c.lua Makefile
	$(LUA) bin2c.lua $(SRC) > $@

interface.o: interface.cc lua_code.h interface.hh

$(NAME): $(OBJS)
	$(CXX) -shared $(OBJS) $(LIBS) -o $(NAME) $(CHECK_CHEAT)
	@echo Finished

clean:
	@echo "Cleaning..."
	$(RM) $(OBJS) *~ lua_code.h \#*\#

distclean: clean
	$(RM) $(NAME) prologin.tgz

tar:
	tar cvzf prologin.tgz *.{cc,hh,lua}
