3 pkgpath = org/lttng/ust/agent
4 pkgpath_old = org/lttng/ust/jul
6 jarfile_version = 1.0.0
7 jarfile_manifest = $(srcdir)/$(pkgpath)/Manifest.txt
8 jarfile_symlink = liblttng-ust-agent.jar
9 jarfile = liblttng-ust-agent-$(jarfile_version).jar
11 jarfile_old = liblttng-ust-jul.jar
13 jardir = $(datadir)/java
15 juljniout = ../jni/jul
16 log4jjniout = ../jni/log4j
18 dist_noinst_JAVA = $(pkgpath)/LTTngAgent.java \
19 $(pkgpath)/LTTngSessiondCmd2_6.java \
20 $(pkgpath)/LTTngTCPSessiondClient.java \
21 $(pkgpath)/LogFramework.java \
22 $(pkgpath)/LogFrameworkSkeleton.java \
23 $(pkgpath)/jul/LTTngJUL.java \
24 $(pkgpath)/jul/LTTngLogHandler.java \
25 $(pkgpath_old)/LTTngAgent.java
27 dist_noinst_DATA = $(jarfile_manifest)
29 jar_DATA = $(jarfile) $(jarfile_old)
32 classes = $(pkgpath)/*.class
34 if BUILD_JAVA_AGENT_WITH_JUL
35 dist_noinst_JAVA += $(pkgpath)/jul/LTTngJUL.java \
36 $(pkgpath)/jul/LTTngLogHandler.java
37 stamp += jul-jni-header.stamp
38 classes += $(pkgpath)/jul/*.class
41 if BUILD_JAVA_AGENT_WITH_LOG4J
42 dist_noinst_JAVA += $(pkgpath)/log4j/LTTngLog4j.java \
43 $(pkgpath)/log4j/LTTngLogAppender.java
44 stamp += log4j-jni-header.stamp
45 classes += $(pkgpath)/log4j/*.class
48 $(jarfile): classnoinst.stamp
49 $(JAR) cfm $(JARFLAGS) $@ $(jarfile_manifest) $(classes) && rm -f $(jarfile_symlink) && $(LN_S) $@ $(jarfile_symlink)
51 $(jarfile_old): classnoinst.stamp
52 $(JAR) cf $(JARFLAGS) $@ $(pkgpath)/*.class \
53 $(pkgpath)/jul/*.class $(pkgpath_old)/*.class
55 jul-jni-header.stamp: $(dist_noinst_JAVA)
56 $(JAVAH) -classpath $(CLASSPATH):$(srcdir) -d $(juljniout) $(JAVAHFLAGS) org.lttng.ust.agent.jul.LTTngLogHandler && \
57 echo "JUL JNI header generated" > jul-jni-header.stamp
59 log4j-jni-header.stamp: $(dist_noinst_JAVA)
60 $(JAVAH) -classpath $(CLASSPATH):$(srcdir) -d $(log4jjniout) $(JAVAHFLAGS) org.lttng.ust.agent.log4j.LTTngLogAppender && \
61 echo "Log4j JNI header generated" > log4j-jni-header.stamp
66 cd $(DESTDIR)/$(jardir) && rm -f $(jarfile_symlink) && $(LN_S) $(jarfile) $(jarfile_symlink)
69 cd $(DESTDIR)/$(jardir) && rm -f $(jarfile_symlink)
71 CLEANFILES = $(jarfile) $(jarfile_old) $(pkgpath)/*.class $(pkgpath_old)/*.class $(pkgpath)/jul/*.class \
72 $(pkgpath)/log4j/*.class jul-jni-header.stamp log4j-jni-header.stamp \
73 $(juljniout)/org_lttng_ust_agent_jul_LTTngLogHandler.h \
74 $(log4jjniout)/org_lttng_ust_agent_log4j_LTTngLogAppender.h