Build system: implement REUSE with SPDX identifiers
[lttng-ust.git] / src / lib / lttng-ust-java / Makefile.am
1 # SPDX-FileCopyrightText: 2023 EfficiOS, Inc
2 #
3 # SPDX-License-Identifier: LGPL-2.1-only
4
5 JAVAROOT = .build
6 jarfile = liblttng-ust-java.jar
7 jardir = $(datadir)/java
8 pkgpath = org/lttng/ust
9
10 dist_noinst_JAVA = $(pkgpath)/LTTngUst.java
11 jar_DATA = $(jarfile)
12
13 AM_CPPFLAGS += -I$(builddir) -I$(srcdir) $(JNI_CPPFLAGS)
14
15 lib_LTLIBRARIES = liblttng-ust-java.la
16 liblttng_ust_java_la_SOURCES = LTTngUst.c lttng_ust_java.h
17
18 # Generated by javac / javah
19 nodist_liblttng_ust_java_la_SOURCES = org_lttng_ust_LTTngUst.h
20
21 # Explicit dependency to ensure the header is generated before the
22 # C file is built.
23 LTTngUst.lo: org_lttng_ust_LTTngUst.h
24
25 liblttng_ust_java_la_LIBADD = -lc \
26 $(top_builddir)/src/lib/lttng-ust/liblttng-ust.la
27
28 $(jarfile): classnoinst.stamp
29 $(JAR) cf $(JARFLAGS) $@ -C $(JAVAROOT) $(pkgpath)/LTTngUst.class
30
31 # Ensure the javaroot directory is created before the Java class files are built.
32 $(pkgpath)/LTTngUst.java: $(JAVAROOT)
33 $(JAVAROOT):
34 -test -d $(JAVAROOT) || mkdir $(JAVAROOT)
35
36 if !HAVE_JAVAH
37 # If we don't have javah, assume we are running openjdk >= 10 and use javac
38 # to generate the jni header file.
39 AM_JAVACFLAGS = -h .
40
41 # The header file will be generated by javac when building the Java class
42 # files, add a dependency on the stamp file to ensure proper ordering.
43 org_lttng_ust_LTTngUst.h: classnoinst.stamp
44 else
45 org_lttng_ust_LTTngUst.h:
46 $(JAVAH) -classpath $(srcdir) $(JAVAHFLAGS) org.lttng.ust.LTTngUst
47 endif
48
49 EXTRA_DIST = README
50
51 CLEANFILES = $(jarfile) org_lttng_ust_LTTngUst.h
52
53 clean-local:
54 -rm -rf $(JAVAROOT)
This page took 0.030207 seconds and 4 git commands to generate.