# $Id: Makefile,v 1.9 2004/12/15 14:35:31 tomas Exp $

T = servlet

include ../../config

DIST_DIR= ../../$(PKG)/launcher/$T
MT= t_$T.lua
ML= $T.lua
T_WEB_XML= WEB-INF/t_web.xml
WEB_XML= WEB-INF/web.xml

SERVLET_SRC= WEB-INF/src
SERVLET_LIB= WEB-INF/lib
SERVLET_BUILD= WEB-INF/classes

JAVAC= $(JAVA_HOME)/bin/javac
JAR= $(JAVA_HOME)/bin/jar

LUAJAVA_JAR= $(SERVLET_LIB)/luajava-1.0b4.jar
SERVLET_JAR= $(CATALINA_HOME)/common/lib/servlet-api.jar
LOG4J_JAR= $(SERVLET_LIB)/log4j-1.2.9.jar
COMPILEOPT= -d $(SERVLET_BUILD) -classpath $(LUAJAVA_JAR):$(SERVLET_JAR):$(LOG4J_JAR)

ALLPACKAGES= org/keplerproject/cgilua/servlet
SUBDIRS= addprefix $(SERVLET_SRC), $(ALLPACKAGES)
SOURCEDIRS= $(SERVLET_SRC)/$(ALLPACKAGES)
SOURCEFILES = $(addsuffix /*.java, $(SOURCEDIRS))
JARSDIR= .
JARNAME = cgilua-$(VERSION).jar

servlet: jar $(WEB_XML) $(ML)

$(ML): $(MT)
	sed -e "s|LUA_DIR|$(LUA_DIR)|" -e "s|LUA_LIBDIR|$(LUA_LIBDIR)|" -e "s|LIB_EXT|$(LIB_EXT)|g" < $(MT) > $(ML)

$(WEB_XML): $(T_WEB_XML)
	sed -e "s|CGILUA_DIR|$(CGILUA_DIR)|" < $(T_WEB_XML) > $@

jar:
	rm -rf $(SERVLET_BUILD)
	mkdir $(SERVLET_BUILD)
	for i in $(SUBDIRS);  \
	do ( $(JAVAC) $(COMPILEOPT) $(SOURCEFILES) ) done
	$(JAR) -cvf $(JARSDIR)/$(JARNAME) -C $(SERVLET_BUILD) .

clean:
	rm -rf $(SERVLET_BUILD)
	rm -f $(JARSDIR)/$(JARNAME)
	rm -f $(WEB_XML)
	rm -f $(ML)

dist dist_dir:
	mkdir -p $(DIST_DIR)
	mkdir -p $(DIST_DIR)/WEB-INF/src
	mkdir -p $(DIST_DIR)/WEB-INF/lib
	cp $(SOURCEFILES) $(DIST_DIR)/WEB-INF/src
	cp $(T_WEB_XML) $(DIST_DIR)/WEB-INF
	cp $(MT) Makefile build.xml $(DIST_DIR)

