added some cleanup code on child exit to ensure friendly shutdown of sockets
[OpenSRF.git] / src / java / Makefile
1 JAVAC=javac -J-Xmx256m
2 JAVA=java -Xmx256m 
3 JAVA_LIBDIR = .lib
4 JAVA_LIBS = .:$(OSRF_JAVA_DEPSDIR)/$(WSTX):$(OSRF_JAVA_DEPSDIR)/$(STAX):$(OSRF_JAVA_DEPSDIR)/$(MEMCACHE):$(OSRF_JAVA_DEPSDIR)/$(JSON)
5 JAVA_SRC = \
6         org/opensrf/net/xmpp/*.java \
7         org/opensrf/util/*.java \
8         org/opensrf/*.java \
9         org/opensrf/test/*.java 
10
11 #------------------------------------------------------------------
12
13 all:    verify_deps dirs jar
14
15 verify_deps:
16         @if [ ! -e "$(OSRF_JAVA_DEPSDIR)/$(WSTX)" ]; then echo -e "\nmissing dependency $(WSTX)!\n" && exit 1; fi
17         @if [ ! -e "$(OSRF_JAVA_DEPSDIR)/$(STAX)" ]; then echo -e "\nmissing dependency $(STAX)!\n" && exit 1; fi
18         @if [ ! -e "$(OSRF_JAVA_DEPSDIR)/$(MEMCACHE)" ]; then echo -e "\nmissing dependency $(MEMCACHE)!\n" && exit 1; fi
19         @if [ ! -e "$(OSRF_JAVA_DEPSDIR)/$(JSON)" ]; then echo -e "\nmissing dependency $(JSON)!\n" && exit 1; fi
20
21 dirs:
22         mkdir -p $(JAVA_LIBDIR)
23
24 opensrf:
25         $(JAVAC) -d $(JAVA_LIBDIR) -cp $(JAVA_LIBS) $(JAVA_SRC) 2>&1 
26
27 jar:    opensrf
28         rm -f opensrf.jar
29         jar cf opensrf.jar -C $(JAVA_LIBDIR) org
30
31 # only prints the first 30 lines of errors
32 slim:
33         mkdir -p $(JAVA_LIBDIR)
34         $(JAVAC) -d $(JAVA_LIBDIR) -cp $(JAVA_LIBS) $(JAVA_SRC) 2>&1 | head -n 30
35         @echo -e "\nTruncating at 30 lines"
36
37 check:
38         mkdir -p $(JAVA_LIBDIR)
39         $(JAVAC) -Xlint:unchecked -d $(JAVA_LIBDIR) -cp $(JAVA_LIBS) $(JAVA_SRC) 2>&1 | head -n 30
40         @echo -e "\nTruncating at 30 lines"
41
42 run:
43         $(JAVA) -cp $(JAVA_LIBS):opensrf.jar $(JAVA_EXE) $(JAVA_ARGS)
44
45 docs:
46         find . -name *.java > files;
47         javadoc -classpath $(JAVA_LIBS) -d doc @files;
48         rm files;
49
50 install:
51         mkdir -p $(LIBDIR)/java
52         cp opensrf.jar $(LIBDIR)/java
53
54 clean:  
55         rm -fr opensrf.jar $(JAVA_LIBDIR)
56
57 dep_clean:
58         rm -rf deps
59
60