1 # SPDX-FileCopyrightText: 2023 EfficiOS, Inc
3 # SPDX-License-Identifier: LGPL-2.1-only
6 AM_JAVACFLAGS = -classpath $(CLASSPATH):$(builddir)/../lttng-ust-agent-common/lttng-ust-agent-common.jar
8 pkgpath = org/lttng/ust/agent/log4j
10 jarfile_version = 1.0.0
11 jarfile_manifest = $(srcdir)/Manifest.txt
12 jarfile_symlink = lttng-ust-agent-log4j.jar
13 jarfile = lttng-ust-agent-log4j-$(jarfile_version).jar
15 jardir = $(datadir)/java
17 log4jjniout = ../../jni/log4j
19 dist_noinst_JAVA = $(pkgpath)/LttngLog4jAgent.java \
20 $(pkgpath)/LttngLog4jApi.java \
21 $(pkgpath)/LttngLogAppender.java
23 dist_noinst_DATA = $(jarfile_manifest)
27 stamp = log4j-jni-header.stamp
28 classes = $(pkgpath)/*.class
30 $(jarfile): classnoinst.stamp
31 $(JAR) cfm $(JARFLAGS) $@ $(jarfile_manifest) $(classes) && rm -f $(jarfile_symlink) && $(LN_S) $@ $(jarfile_symlink)
34 # If we don't have javah, assume we are running openjdk >= 10 and use javac
35 # to generate the jni header file.
36 AM_JAVACFLAGS += -h $(log4jjniout)
38 log4j-jni-header.stamp: $(dist_noinst_JAVA)
39 $(JAVAH) -classpath $(CLASSPATH):$(srcdir) -d $(log4jjniout) $(JAVAHFLAGS) org.lttng.ust.agent.log4j.LttngLog4jApi && \
40 echo "Log4j JNI header generated" > log4j-jni-header.stamp
46 cd $(DESTDIR)/$(jardir) && rm -f $(jarfile_symlink) && $(LN_S) $(jarfile) $(jarfile_symlink)
49 cd $(DESTDIR)/$(jardir) && rm -f $(jarfile_symlink)
53 log4j-jni-header.stamp \
54 $(log4jjniout)/org_lttng_ust_agent_log4j_LttngLog4jApi.h