File: Makefile.in

package info (click to toggle)
brltty 6.8-4
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 35,776 kB
  • sloc: ansic: 150,447; java: 13,484; sh: 9,667; xml: 5,702; tcl: 2,634; makefile: 2,328; awk: 713; lisp: 366; python: 321; ml: 301
file content (115 lines) | stat: -rw-r--r-- 3,066 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
###############################################################################
# libbrlapi - A library providing access to braille terminals for applications.
#
# Copyright (C) 2006-2025 by
#   Samuel Thibault <Samuel.Thibault@ens-lyon.org>
#   Sébastien Hinderer <Sebastien.Hinderer@ens-lyon.org>
#
# libbrlapi comes with ABSOLUTELY NO WARRANTY.
#
# This is free software, placed under the terms of the
# GNU Lesser General Public License, as published by the Free Software
# Foundation; either version 2.1 of the License, or (at your option) any
# later version. Please see the file LICENSE-LGPL for details.
#
# Web Page: http://brltty.app/
#
# This software is maintained by Dave Mielke <dave@mielke.cc>.
###############################################################################

include $(SRC_TOP)bindings.mk

JAVA_OK = @JAVA_OK@
JAVAC = @JAVAC@
JAVADOC = @JAVADOC@
JAR = @JAR@

JAVA_JAR = @JAVA_JAR@
JAVA_JAR_DIR = @JAVA_JAR_DIR@
JAVA_JAR_DESTDIR = $(INSTALL_ROOT)

JAVA_JNI = @JAVA_JNI@
JAVA_JNI_DIR = @JAVA_JNI_DIR@
JAVA_JNI_HDR = @JAVA_JNI_HDR@
JAVA_JNI_INC = @JAVA_JNI_INC@
JAVA_JNI_FLAGS = @JAVA_JNI_FLAGS@
JAVA_JNI_DESTDIR = $(INSTALL_ROOT)

all: jar jni doc

JAVA_SOURCES = Constants.java $(SRC_DIR)/*.java $(SRC_DIR)/*/*.java

JAVA_JNI_FILE = $(LIB_PFX)$(API_NAME)_java.$(LIB_EXT)
jni: $(JAVA_JNI_FILE)

$(JAVA_JNI_FILE): bindings.$O | $(API_NAME)
	$(MKLIB:<name>=$(JAVA_JNI_FILE).$(API_VERSION)) $@ bindings.$O $(API_LDFLAGS)

bindings.$O:
	$(CC) $(LIBCFLAGS) $(JAVA_JNI_FLAGS) -o $@ -c $(SRC_DIR)/bindings.c

JAVA_JAR_FILE = $(API_NAME).jar
jar: $(JAVA_JAR_FILE)

$(JAVA_JAR_FILE): classes.made
	$(JAR) cfm $@ $(SRC_DIR)/manifest -C classes .

JAVAC_LINT_OPTIONS = cast,deprecation,fallthrough,finally,overrides,rawtypes,unchecked

classes.made: $(JAVA_SOURCES)
	$(INSTALL_DIRECTORY) classes
	$(JAVAC) -Xlint:$(JAVAC_LINT_OPTIONS) -d classes -classpath . $^
	touch $@

Constants.java: $(CONSTANTS_DEPENDENCIES)
	$(AWK) $(CONSTANTS_ARGUMENTS) >$@

doc: doc.made

doc.made: $(JAVA_SOURCES)
	$(INSTALL_DIRECTORY) doc
	$(JAVADOC) -quiet -d doc -Xdoclint:none -author -notimestamp -version -use $^
	touch $@

clean::
	-rm -f Constants.java classes.made $(JAVA_JAR_FILE) $(JAVA_JNI_FILE)
	-rm -f -r classes
	-rm -f doc.made
	-rm -f -r doc

install: install-jar install-jni

install-jar: install-jar-$(JAVA_JAR)

install-jar-yes: jar
	$(INSTALL_DIRECTORY) $(JAVA_JAR_DESTDIR)$(JAVA_JAR_DIR)
	$(INSTALL) $(JAVA_JAR_FILE) $(JAVA_JAR_DESTDIR)$(JAVA_JAR_DIR)

install-jar-no:
	@echo jar not installed

install-jni: install-jni-$(JAVA_JNI)

install-jni-yes: jni
	$(INSTALL_DIRECTORY) $(JAVA_JNI_DESTDIR)$(JAVA_JNI_DIR)
	$(INSTALL) $(JAVA_JNI_FILE) $(JAVA_JNI_DESTDIR)$(JAVA_JNI_DIR)

install-jni-no:
	@echo jni not installed

uninstall: uninstall-jar uninstall-jni

uninstall-jar: uninstall-jar-$(JAVA_JAR)

uninstall-jar-yes:
	-rm -f -- $(JAVA_JAR_DESTDIR)$(JAVA_JAR_DIR)/$(JAVA_JAR_FILE)

uninstall-jar-no:

uninstall-jni: uninstall-jni-$(JAVA_JNI)

uninstall-jni-yes:
	-rm -f -- $(JAVA_JNI_DESTDIR)$(JAVA_JNI_DIR)/$(JAVA_JNI_FILE)

uninstall-jni-no: