Fix: build jni libs with openjdk >= 10
[lttng-ust.git] / liblttng-ust-java-agent / java / lttng-ust-agent-common / Makefile.am
1 JAVAROOT = .
2
3 pkgpath = org/lttng/ust/agent
4
5 jarfile_version = 1.0.0
6 jarfile_manifest = $(srcdir)/Manifest.txt
7 jarfile_symlink = lttng-ust-agent-common.jar
8 jarfile = lttng-ust-agent-common-$(jarfile_version).jar
9
10 jardir = $(datadir)/java
11 jnioutdir = ../../jni/common
12
13 dist_noinst_JAVA = $(pkgpath)/AbstractLttngAgent.java \
14 $(pkgpath)/ILttngAgent.java \
15 $(pkgpath)/ILttngHandler.java \
16 $(pkgpath)/LTTngAgent.java \
17 $(pkgpath)/client/ILttngTcpClientListener.java \
18 $(pkgpath)/client/SessiondCommand.java \
19 $(pkgpath)/client/LttngAgentResponse.java \
20 $(pkgpath)/client/LttngTcpSessiondClient.java \
21 $(pkgpath)/client/SessiondCommandHeader.java \
22 $(pkgpath)/client/SessiondDisableAppContextCommand.java \
23 $(pkgpath)/client/SessiondDisableEventCommand.java \
24 $(pkgpath)/client/SessiondEnableAppContextCommand.java \
25 $(pkgpath)/client/SessiondEnableEventCommand.java \
26 $(pkgpath)/client/SessiondListLoggersCommand.java \
27 $(pkgpath)/context/LttngContextApi.java \
28 $(pkgpath)/context/ContextInfoManager.java \
29 $(pkgpath)/context/ContextInfoSerializer.java \
30 $(pkgpath)/context/IContextInfoRetriever.java \
31 $(pkgpath)/filter/FilterChangeNotifier.java \
32 $(pkgpath)/filter/IFilterChangeListener.java \
33 $(pkgpath)/session/EventRule.java \
34 $(pkgpath)/session/LogLevelSelector.java \
35 $(pkgpath)/utils/LttngUstAgentLogger.java
36
37
38 dist_noinst_DATA = $(jarfile_manifest)
39
40 jar_DATA = $(jarfile)
41
42 classes = $(pkgpath)/*.class \
43 $(pkgpath)/client/*.class \
44 $(pkgpath)/context/*.class \
45 $(pkgpath)/filter/*.class \
46 $(pkgpath)/session/*.class \
47 $(pkgpath)/utils/*.class
48
49 $(jarfile): classnoinst.stamp
50 $(JAR) cfm $(JARFLAGS) $@ $(jarfile_manifest) $(classes) && rm -f $(jarfile_symlink) && $(LN_S) $@ $(jarfile_symlink)
51
52 if !HAVE_JAVAH
53 # If we don't have javah, assume we are running openjdk >= 10 and use javac
54 # to generate the jni header file.
55 AM_JAVACFLAGS = -h $(jnioutdir)
56 else
57 context-jni-header.stamp: $(dist_noinst_JAVA)
58 $(JAVAH) -classpath $(CLASSPATH):$(srcdir) -d $(jnioutdir) $(JAVAHFLAGS) org.lttng.ust.agent.context.LttngContextApi && \
59 echo "Context API JNI header generated" > context-jni-header.stamp
60
61 all-local: context-jni-header.stamp
62 endif
63
64 install-data-hook:
65 cd $(DESTDIR)/$(jardir) && rm -f $(jarfile_symlink) && $(LN_S) $(jarfile) $(jarfile_symlink)
66
67 uninstall-hook:
68 cd $(DESTDIR)/$(jardir) && rm -f $(jarfile_symlink)
69
70 CLEANFILES = $(jarfile) $(pkgpath)/*.class \
71 $(pkgpath)/client/*.class \
72 $(pkgpath)/context/*.class \
73 $(pkgpath)/filter/*.class \
74 $(pkgpath)/session/*.class \
75 $(pkgpath)/utils/*.class \
76 $(juljniout)/org_lttng_ust_agent_context_LttngContextApi.h
This page took 0.031028 seconds and 4 git commands to generate.