]>
Commit | Line | Data |
---|---|---|
39aebbc3 | 1 | # Top level -*- makefile -*- fragment for the GNU compiler for the Java(TM) |
377029eb | 2 | # language. |
44b49c15 | 3 | # Copyright (C) 1996, 1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. |
377029eb | 4 | |
7d82ed5e | 5 | #This file is part of GCC. |
377029eb | 6 | |
7d82ed5e | 7 | #GCC is free software; you can redistribute it and/or modify |
377029eb | 8 | #it under the terms of the GNU General Public License as published by |
9 | #the Free Software Foundation; either version 2, or (at your option) | |
10 | #any later version. | |
11 | ||
7d82ed5e | 12 | #GCC is distributed in the hope that it will be useful, |
377029eb | 13 | #but WITHOUT ANY WARRANTY; without even the implied warranty of |
14 | #MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
15 | #GNU General Public License for more details. | |
16 | ||
17 | #You should have received a copy of the GNU General Public License | |
7d82ed5e | 18 | #along with GCC; see the file COPYING. If not, write to |
377029eb | 19 | #the Free Software Foundation, 59 Temple Place - Suite 330, |
20 | #Boston, MA 02111-1307, USA. | |
21 | ||
22 | #Java and all Java-based marks are trademarks or registered trademarks | |
23 | #of Sun Microsystems, Inc. in the United States and other countries. | |
24 | #The Free Software Foundation is independent of Sun Microsystems, Inc. | |
25 | ||
26 | # This file provides the language dependent support in the main Makefile. | |
27 | # Each language makefile fragment must provide the following targets: | |
28 | # | |
29 | # foo.all.build, foo.all.cross, foo.start.encap, foo.rest.encap, | |
e9d2d60f | 30 | # foo.install-normal, foo.install-common, foo.install-man, |
98fb2ff8 | 31 | # foo.uninstall, |
80e909c6 | 32 | # foo.mostlyclean, foo.clean, foo.distclean, |
377029eb | 33 | # foo.maintainer-clean, foo.stage1, foo.stage2, foo.stage3, foo.stage4 |
34 | # | |
35 | # where `foo' is the name of the language. | |
36 | # | |
37 | # It should also provide rules for: | |
38 | # | |
39 | # - making any compiler driver (eg: g++) | |
40 | # - the compiler proper (eg: jc1) | |
41 | # - define the names for selecting the language in LANGUAGES. | |
377029eb | 42 | |
43 | # Actual names to use when installing a native compiler. | |
88a86c80 | 44 | JAVA_INSTALL_NAME := $(shell echo gcj|sed '$(program_transform_name)') |
45 | JAVA_TARGET_INSTALL_NAME := $(target_noncanonical)-$(shell echo gcj|sed '$(program_transform_name)') | |
46 | GCJH_TARGET_INSTALL_NAME := $(target_noncanonical)-$(shell echo gcjh|sed '$(program_transform_name)') | |
377029eb | 47 | |
f2a133b9 | 48 | GCJ = gcj |
49 | ||
377029eb | 50 | # Define the names for selecting java in LANGUAGES. |
f357ac87 | 51 | java: jc1$(exeext) $(GCJ)$(exeext) jvgenmain$(exeext) \ |
52 | gcjh$(exeext) jv-scan$(exeext) jcf-dump$(exeext) | |
377029eb | 53 | |
1d936ee2 | 54 | # Define the name of target independent tools to be installed in $(bindir) |
377029eb | 55 | # Names are subject to changes |
56 | JAVA_TARGET_INDEPENDENT_BIN_TOOLS = gcjh jv-scan jcf-dump | |
57 | ||
58 | # Tell GNU make to ignore these if they exist. | |
59 | .PHONY: java | |
60 | ||
805e22b2 | 61 | jvspec.o: $(srcdir)/java/jvspec.c $(SYSTEM_H) coretypes.h $(TM_H) \ |
62 | $(GCC_H) $(CONFIG_H) | |
70dd042b | 63 | (SHLIB_LINK='$(SHLIB_LINK)' \ |
64 | SHLIB_MULTILIB='$(SHLIB_MULTILIB)'; \ | |
21f20ef7 | 65 | $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(DRIVER_DEFINES) \ |
31fa4557 | 66 | $(INCLUDES) $(srcdir)/java/jvspec.c $(OUTPUT_OPTION)) |
377029eb | 67 | |
377029eb | 68 | # Create the compiler driver for $(GCJ). |
cdf76fe2 | 69 | $(GCJ)$(exeext): gcc.o jvspec.o version.o \ |
435f2113 | 70 | prefix.o intl.o $(LIBDEPS) $(EXTRA_GCC_OBJS) |
cdf76fe2 | 71 | $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ gcc.o jvspec.o prefix.o intl.o \ |
a632e6e3 | 72 | version.o $(EXTRA_GCC_OBJS) $(LIBS) |
377029eb | 73 | |
74 | # Create a version of the $(GCJ) driver which calls the cross-compiler. | |
75 | $(GCJ)-cross$(exeext): $(GCJ)$(exeext) | |
76 | -rm -f $(GCJ)-cross$(exeext) | |
77 | cp $(GCJ)$(exeext) $(GCJ)-cross$(exeext) | |
78 | ||
a6b4c5a9 | 79 | java.srcextra: java/parse.c java/parse-scan.c |
80 | -cp -p $^ $(srcdir)/java | |
377029eb | 81 | |
a6b4c5a9 | 82 | java/parse.c: java/parse.y |
83 | -$(BISON) -t --name-prefix=java_ $(BISONFLAGS) -o $@ $< | |
84 | ||
85 | java/parse-scan.c: java/parse-scan.y | |
86 | -$(BISON) -t $(BISONFLAGS) -o $@ $< | |
f357ac87 | 87 | |
88 | $(srcdir)/java/keyword.h: $(srcdir)/java/keyword.gperf | |
89 | (cd $(srcdir)/java || exit 1; \ | |
b76d41d7 | 90 | gperf -L ANSI-C -C -F ', 0' -p -t -j1 -i 1 -g -o -N java_keyword -k1,4,$$ \ |
635826d3 | 91 | keyword.gperf > k$$$$.h || { \ |
f357ac87 | 92 | echo "Please update gperf from ftp://ftp.gnu.org/pub/gnu/gperf/" >&2; \ |
93 | rm -f k$$$$.h; \ | |
635826d3 | 94 | exit 1; } ; \ |
95 | mv -f k$$$$.h keyword.h) | |
f357ac87 | 96 | |
1f3233d1 | 97 | gt-java-class.h gt-java-constants.h gt-java-decl.h : s-gtype ; @true |
98 | gt-java-expr.h gt-java-jcf-parse.h gt-java-jcf-write.h : s-gtype ; @true | |
99 | gt-java-lang.h gt-java-mangle.h gt-java-parse.h : s-gtype ; @true | |
caa8fa37 | 100 | gt-java-builtins.h gtype-java.h gt-java-resource.h : s-gtype ; @true |
1f3233d1 | 101 | |
f357ac87 | 102 | # Executables built by this Makefile: |
103 | JAVA_OBJS = java/parse.o java/class.o java/decl.o java/expr.o \ | |
104 | java/constants.o java/lang.o java/typeck.o java/except.o java/verify.o \ | |
11a5ddb6 | 105 | java/zextract.o java/jcf-io.o java/win32-host.o java/jcf-parse.o java/mangle.o \ |
3272db82 | 106 | java/mangle_name.o java/builtins.o java/resource.o \ |
f357ac87 | 107 | java/jcf-write.o java/buffer.o java/check-init.o java/jcf-depend.o \ |
4ee9c684 | 108 | java/jcf-path.o java/xref.o java/boehm.o java/java-gimplify.o mkdeps.o |
f357ac87 | 109 | |
110 | GCJH_OBJS = java/gjavah.o java/jcf-io.o java/jcf-depend.o java/jcf-path.o \ | |
44b49c15 | 111 | java/win32-host.o java/zextract.o version.o mkdeps.o errors.o ggc-none.o \ |
112 | intl.o | |
f357ac87 | 113 | |
44b49c15 | 114 | JVSCAN_OBJS = java/parse-scan.o java/jv-scan.o version.o intl.o |
f357ac87 | 115 | |
116 | JCFDUMP_OBJS = java/jcf-dump.o java/jcf-io.o java/jcf-depend.o java/jcf-path.o \ | |
44b49c15 | 117 | java/win32-host.o java/zextract.o errors.o version.o mkdeps.o ggc-none.o intl.o |
f357ac87 | 118 | |
44b49c15 | 119 | JVGENMAIN_OBJS = java/jvgenmain.o java/mangle_name.o errors.o intl.o |
f357ac87 | 120 | |
121 | # Use loose warnings for this front end. | |
aa73c668 | 122 | java-warn = $(WERROR) |
a179eb24 | 123 | # String length warnings |
124 | jvspec.o-warn = -Wno-error | |
f357ac87 | 125 | |
126 | jc1$(exeext): $(JAVA_OBJS) $(BACKEND) $(LIBDEPS) | |
127 | rm -f $@ | |
128 | $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ \ | |
049898ae | 129 | $(JAVA_OBJS) $(BACKEND) $(ZLIB) $(LIBICONV) $(LIBS) |
f357ac87 | 130 | |
131 | gcjh$(exeext): $(GCJH_OBJS) $(LIBDEPS) | |
132 | rm -f $@ | |
133 | $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ $(GCJH_OBJS) $(ZLIB) $(LIBS) | |
134 | ||
135 | jv-scan$(exeext): $(JVSCAN_OBJS) $(LIBDEPS) | |
136 | rm -f $@ | |
049898ae | 137 | $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ $(JVSCAN_OBJS) $(LIBICONV) $(LIBS) |
f357ac87 | 138 | |
139 | jcf-dump$(exeext): $(JCFDUMP_OBJS) $(LIBDEPS) | |
140 | rm -f $@ | |
96b74343 | 141 | $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ $(JCFDUMP_OBJS) \ |
142 | $(ZLIB) $(LDEXP_LIB) $(LIBS) | |
f357ac87 | 143 | |
144 | jvgenmain$(exeext): $(JVGENMAIN_OBJS) $(LIBDEPS) | |
145 | rm -f $@ | |
146 | $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ $(JVGENMAIN_OBJS) $(LIBS) | |
0a976abb | 147 | |
b3edd3bc | 148 | #\f |
377029eb | 149 | # Build hooks: |
150 | ||
07990746 | 151 | java.all.build: $(GCJ)$(exeext) |
152 | java.all.cross: $(GCJ)-cross$(exeext) | |
377029eb | 153 | java.start.encap: $(GCJ)$(exeext) |
07990746 | 154 | java.rest.encap: |
377029eb | 155 | |
9575349c | 156 | |
157 | java.tags: force | |
39aebbc3 | 158 | cd $(srcdir)/java; etags -o TAGS.sub *.y *.c *.h --language=none \ |
159 | --regex='/DEFTREECODE [(]\([A-Z_]+\)/\1/' java-tree.def; \ | |
160 | etags --include TAGS.sub --include ../TAGS.sub | |
161 | ||
9575349c | 162 | |
ca6eabd1 | 163 | java.info: doc/gcj.info |
164 | ||
165 | java.srcinfo: doc/gcj.info | |
166 | -cp -p $^ $(srcdir)/doc | |
167 | ||
168 | dvi:: doc/gcj.dvi | |
169 | JAVA_MANFILES = doc/gcj.1 doc/gcjh.1 doc/jv-scan.1 doc/jcf-dump.1 doc/gij.1 \ | |
170 | doc/jv-convert.1 doc/rmic.1 doc/rmiregistry.1 | |
171 | ||
172 | java.man: $(JAVA_MANFILES) | |
173 | ||
174 | java.srcman: $(JAVA_MANFILES) | |
175 | -cp -p $^ $(srcdir)/doc | |
377029eb | 176 | |
71a3866b | 177 | check-java : |
178 | ||
377029eb | 179 | # Install hooks: |
180 | # jc1, gcj, jvgenmain, and gcjh are installed elsewhere as part | |
181 | # of $(COMPILERS). | |
182 | ||
183 | # Nothing to do here. | |
184 | java.install-normal: | |
185 | ||
d396849a | 186 | # Install gcj as well as the target-independent tools. |
187 | # For a native build, we special-case gcjh and also install | |
188 | # its explicitly-prefixed variant. This allows us to write | |
189 | # portable makefiles for both cross builds (where gcjh *must* | |
190 | # be explicitly prefixed) and native builds. | |
414d46fe | 191 | java.install-common: installdirs |
377029eb | 192 | -if [ -f $(GCJ)$(exeext) ]; then \ |
994974c8 | 193 | rm -f $(DESTDIR)$(bindir)/$(JAVA_INSTALL_NAME)$(exeext); \ |
194 | $(INSTALL_PROGRAM) $(GCJ)$(exeext) $(DESTDIR)$(bindir)/$(JAVA_INSTALL_NAME)$(exeext); \ | |
195 | chmod a+x $(DESTDIR)$(bindir)/$(JAVA_INSTALL_NAME)$(exeext); \ | |
377029eb | 196 | if [ -f $(GCJ)-cross$(exeext) ]; then \ |
994974c8 | 197 | true; \ |
377029eb | 198 | else \ |
df2f867d | 199 | rm -f $(DESTDIR)$(bindir)/$(JAVA_TARGET_INSTALL_NAME)$(exeext); \ |
200 | ( cd $(DESTDIR)$(bindir) && \ | |
201 | $(LN) $(JAVA_INSTALL_NAME)$(exeext) $(JAVA_TARGET_INSTALL_NAME)$(exeext) ); \ | |
377029eb | 202 | fi ; \ |
203 | fi ; \ | |
204 | for tool in $(JAVA_TARGET_INDEPENDENT_BIN_TOOLS); do \ | |
cc9ad22c | 205 | tool_transformed_name=`echo $$tool|sed '$(program_transform_name)'`; \ |
377029eb | 206 | if [ -f $$tool$(exeext) ]; then \ |
df2f867d | 207 | rm -f $(DESTDIR)$(bindir)/$$tool_transformed_name$(exeext); \ |
208 | $(INSTALL_PROGRAM) $$tool$(exeext) $(DESTDIR)$(bindir)/$$tool_transformed_name$(exeext); \ | |
209 | chmod a+x $(DESTDIR)$(bindir)/$$tool_transformed_name$(exeext); \ | |
d396849a | 210 | if [ $$tool = gcjh ]; then \ |
211 | rm -f $(DESTDIR)$(bindir)/$(GCJH_TARGET_INSTALL_NAME)$(exeext); \ | |
212 | ( cd $(DESTDIR)$(bindir) && \ | |
213 | $(LN) $$tool_transformed_name$(exeext) $(GCJH_TARGET_INSTALL_NAME)$(exeext) ); \ | |
214 | fi; \ | |
377029eb | 215 | fi ; \ |
216 | done | |
217 | ||
218 | java.install-man: | |
219 | ||
220 | java.uninstall: | |
df2f867d | 221 | -rm -rf $(DESTDIR)$(bindir)/$(JAVA_INSTALL_NAME)$(exeext) |
df2f867d | 222 | -rm -rf $(DESTDIR)$(man1dir)/$(JAVA_INSTALL_NAME)$(man1ext) |
df2f867d | 223 | -rm -rf $(DESTDIR)$(man1dir)/gcjh$(man1ext) |
224 | -rm -rf $(DESTDIR)$(man1dir)/jv-scan$(man1ext) | |
225 | -rm -rf $(DESTDIR)$(man1dir)/jcf-dump$(man1ext) | |
226 | -rm -rf $(DESTDIR)$(man1dir)/gij$(man1ext) | |
227 | -rm -rf $(DESTDIR)$(man1dir)/jv-convert$(man1ext) | |
377029eb | 228 | |
e9d2d60f | 229 | install-info:: $(DESTDIR)$(infodir)/gcj.info |
377029eb | 230 | |
b3edd3bc | 231 | #\f |
377029eb | 232 | # Clean hooks: |
233 | # A lot of the ancillary files are deleted by the main makefile. | |
234 | # We just have to delete files specific to us. | |
235 | ||
236 | java.mostlyclean: | |
a6b4c5a9 | 237 | -rm -f java/parse.c java/parse-scan.c |
377029eb | 238 | -rm -f java/*$(objext) $(DEMANGLER_PROG) |
d5a37d75 | 239 | -rm -f java/*$(coverageexts) |
cff6c72c | 240 | -rm -f jc1$(exeext) $(GCJ)$(exeext) jvgenmain$(exeext) gcjh$(exeext) jv-scan$(exeext) jcf-dump$(exeext) s-java |
377029eb | 241 | java.clean: |
242 | java.distclean: | |
243 | -rm -f java/config.status java/Makefile | |
a6b4c5a9 | 244 | -rm -f java/parse.output java/y.tab.c |
377029eb | 245 | java.maintainer-clean: |
d80ce059 | 246 | -rm -f $(docobjdir)/gcj.1 $(docobjdir)/gcjh.1 |
247 | -rm -f $(docobjdir)/jv-scan.1 $(docobjdir)/jcf-dump.1 | |
248 | -rm -f $(docobjdir)/gij.1 | |
249 | -rm -f $(docobjdir)/jv-convert.1 | |
250 | -rm -f $(docobjdir)/rmic.1 | |
251 | -rm -f $(docobjdir)/rmiregistry.1 | |
b3edd3bc | 252 | #\f |
377029eb | 253 | # Stage hooks: |
254 | # The main makefile has already created stage?/java. | |
255 | ||
d6648392 | 256 | java.stage1: stage1-start |
377029eb | 257 | -mv java/*$(objext) stage1/java |
d6648392 | 258 | java.stage2: stage2-start |
377029eb | 259 | -mv java/*$(objext) stage2/java |
d6648392 | 260 | java.stage3: stage3-start |
377029eb | 261 | -mv java/*$(objext) stage3/java |
d6648392 | 262 | java.stage4: stage4-start |
377029eb | 263 | -mv java/*$(objext) stage4/java |
ef3bb540 | 264 | java.stageprofile: stageprofile-start |
265 | -mv java/*$(objext) stageprofile/java | |
266 | java.stagefeedback: stageprofile-start | |
267 | -mv java/*$(objext) stagefeedback/java | |
f357ac87 | 268 | |
269 | #\f | |
270 | # .o:.h dependencies. | |
1f3233d1 | 271 | JAVA_TREE_H = $(TREE_H) $(HASHTAB_H) java/java-tree.h java/java-tree.def |
230a30d2 | 272 | JAVA_LEX_C = java/lex.c java/keyword.h java/chartables.h |
f357ac87 | 273 | |
805e22b2 | 274 | java/jcf-dump.o: $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(JAVA_TREE_H) \ |
275 | java/jcf-dump.c java/jcf-reader.c java/jcf.h java/javaop.h java/javaop.def \ | |
44b49c15 | 276 | version.h $(GGC_H) intl.h |
805e22b2 | 277 | java/gjavah.o: $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(JAVA_TREE_H) \ |
44b49c15 | 278 | java/gjavah.c java/jcf-reader.c java/jcf.h java/javaop.h version.h $(GGC_H) \ |
279 | intl.h | |
805e22b2 | 280 | java/boehm.o: java/boehm.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \ |
281 | $(TREE_H) $(JAVA_TREE_H) java/parse.h toplev.h | |
282 | java/buffer.o: java/buffer.c $(CONFIG_H) java/buffer.h $(SYSTEM_H) coretypes.h \ | |
283 | $(TM_H) toplev.h | |
284 | java/builtins.o: java/builtins.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \ | |
15425f91 | 285 | $(JAVA_TREE_H) $(GGC_H) flags.h langhooks.h gt-java-builtins.h |
805e22b2 | 286 | java/check-init.o: java/check-init.c $(CONFIG_H) $(JAVA_TREE_H) $(SYSTEM_H) \ |
287 | coretypes.h $(TM_H) toplev.h | |
288 | java/class.o: java/class.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \ | |
289 | $(JAVA_TREE_H) $(RTL_H) java/jcf.h java/parse.h toplev.h output.h $(GGC_H) \ | |
290 | $(TARGET_H) function.h gt-java-class.h | |
f357ac87 | 291 | java/constants.o: java/constants.c $(CONFIG_H) $(JAVA_TREE_H) java/jcf.h \ |
805e22b2 | 292 | toplev.h $(SYSTEM_H) coretypes.h $(TM_H) $(GGC_H) gt-java-constants.h |
d8fc4d0b | 293 | java/decl.o: java/decl.c $(CONFIG_H) $(JAVA_TREE_H) $(RTL_H) java/jcf.h \ |
805e22b2 | 294 | toplev.h flags.h $(SYSTEM_H) coretypes.h $(TM_H) function.h expr.h \ |
82ac3699 | 295 | libfuncs.h except.h java/java-except.h $(GGC_H) real.h gt-java-decl.h \ |
296 | target.h | |
f357ac87 | 297 | java/except.o: java/except.c $(CONFIG_H) $(JAVA_TREE_H) java/jcf.h real.h \ |
298 | $(RTL_H) java/javaop.h java/java-opcodes.h except.h java/java-except.h \ | |
805e22b2 | 299 | toplev.h $(SYSTEM_H) coretypes.h $(TM_H) function.h |
f357ac87 | 300 | java/expr.o: java/expr.c $(CONFIG_H) $(JAVA_TREE_H) java/jcf.h real.h \ |
301 | $(RTL_H) $(EXPR_H) java/javaop.h java/java-opcodes.h except.h \ | |
302 | java/java-except.h java/java-except.h java/parse.h toplev.h \ | |
82ac3699 | 303 | $(SYSTEM_H) coretypes.h $(TM_H) $(GGC_H) gt-java-expr.h target.h |
805e22b2 | 304 | java/jcf-depend.o: java/jcf-depend.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \ |
305 | $(TM_H) java/jcf.h | |
f357ac87 | 306 | java/jcf-parse.o: java/jcf-parse.c $(CONFIG_H) $(JAVA_TREE_H) flags.h \ |
805e22b2 | 307 | input.h java/java-except.h $(SYSTEM_H) coretypes.h $(TM_H) toplev.h \ |
aec26802 | 308 | java/parse.h $(GGC_H) debug.h real.h gt-java-jcf-parse.h $(TM_P_H) |
f357ac87 | 309 | java/jcf-write.o: java/jcf-write.c $(CONFIG_H) $(JAVA_TREE_H) java/jcf.h \ |
e2be9c57 | 310 | $(RTL_H) java/java-opcodes.h java/parse.h java/buffer.h $(SYSTEM_H) \ |
102d5407 | 311 | coretypes.h $(TM_H) toplev.h $(GGC_H) gt-java-jcf-write.h $(TM_P_H) |
805e22b2 | 312 | java/jv-scan.o: java/jv-scan.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \ |
44b49c15 | 313 | version.h intl.h |
805e22b2 | 314 | java/jvgenmain.o: java/jvgenmain.c $(CONFIG_H) $(JAVA_TREE_H) $(SYSTEM_H) \ |
44b49c15 | 315 | coretypes.h $(TM_H) intl.h |
f357ac87 | 316 | java/lang.o: java/lang.c $(CONFIG_H) $(JAVA_TREE_H) java/jcf.h input.h \ |
805e22b2 | 317 | toplev.h $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) $(EXPR_H) diagnostic.h \ |
3272db82 | 318 | langhooks.h $(LANGHOOKS_DEF_H) gt-java-lang.h opts.h options.h |
e2be9c57 | 319 | java/mangle.o: java/mangle.c $(CONFIG_H) java/jcf.h $(JAVA_TREE_H) $(SYSTEM_H) \ |
805e22b2 | 320 | coretypes.h $(TM_H) toplev.h $(GGC_H) gt-java-mangle.h |
0f11c7c6 | 321 | java/mangle_name.o: java/mangle_name.c $(CONFIG_H) java/jcf.h $(JAVA_TREE_H) \ |
805e22b2 | 322 | $(SYSTEM_H) coretypes.h $(TM_H) toplev.h $(GGC_H) |
caa8fa37 | 323 | java/resource.o: java/resource.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \ |
324 | $(JAVA_TREE_H) $(RTL_H) java/jcf.h java/parse.h toplev.h output.h $(GGC_H) \ | |
79b5531a | 325 | $(TARGET_H) function.h gt-java-resource.h expr.h |
f357ac87 | 326 | java/typeck.o: java/typeck.c $(CONFIG_H) $(JAVA_TREE_H) java/jcf.h \ |
805e22b2 | 327 | java/convert.h toplev.h $(SYSTEM_H) coretypes.h $(TM_H) $(GGC_H) real.h |
a1b2d596 | 328 | java/win32-host.o: java/win32-host.c $(CONFIG_H) $(SYSTEM_H) java/jcf.h |
f357ac87 | 329 | java/verify.o: java/verify.c $(CONFIG_H) $(JAVA_TREE_H) java/jcf.h \ |
805e22b2 | 330 | java/javaop.h java/java-opcodes.h java/java-except.h toplev.h $(SYSTEM_H) \ |
331 | coretypes.h $(TM_H) | |
f357ac87 | 332 | java/xref.o: java/xref.c java/xref.h $(CONFIG_H) $(JAVA_TREE_H) toplev.h \ |
805e22b2 | 333 | $(SYSTEM_H) coretypes.h $(TM_H) |
334 | java/zextract.o: java/zextract.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \ | |
335 | java/zipfile.h | |
4ee9c684 | 336 | java/java-gimplify.o: java/java-gimplify.c $(CONFIG_H) $(SYSTEM_H) \ |
337 | coretypes.h $(TM_H) $(JAVA_TREE_H) tree-simple.h toplev.h | |
338 | ||
a6b4c5a9 | 339 | java/parse-scan.o: java/parse-scan.c $(CONFIG_H) $(SYSTEM_H) \ |
d80ce059 | 340 | coretypes.h $(TM_H) toplev.h $(JAVA_LEX_C) java/parse.h java/lex.h input.h |
a6b4c5a9 | 341 | java/parse.o: java/parse.c java/jcf-reader.c $(CONFIG_H) $(SYSTEM_H) \ |
d80ce059 | 342 | coretypes.h $(TM_H) function.h $(JAVA_TREE_H) $(JAVA_LEX_C) java/parse.h \ |
82ac3699 | 343 | java/lex.h input.h $(GGC_H) debug.h gt-java-parse.h gtype-java.h target.h |
d80ce059 | 344 | |
f357ac87 | 345 | # jcf-io.o needs $(ZLIBINC) added to cflags. |
805e22b2 | 346 | java/jcf-io.o: java/jcf-io.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \ |
347 | $(JAVA_TREE_H) | |
f357ac87 | 348 | $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $(ZLIBINC) \ |
349 | $(srcdir)/java/jcf-io.c $(OUTPUT_OPTION) | |
350 | ||
351 | # jcf-path.o needs a -D. | |
805e22b2 | 352 | java/jcf-path.o: java/jcf-path.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \ |
d80ce059 | 353 | java/jcf.h |
f357ac87 | 354 | $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \ |
57cfdaca | 355 | -DLIBGCJ_ZIP_FILE='"$(datadir)/java/libgcj-$(version).jar"' \ |
7a80ddca | 356 | -DDEFAULT_TARGET_VERSION=\"$(version)\" \ |
f357ac87 | 357 | $(srcdir)/java/jcf-path.c $(OUTPUT_OPTION) |
358 | ||
d80ce059 | 359 | # jcf-tree-inline.o needs a -D. |
360 | java/java-tree-inline.o: tree-inline.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \ | |
361 | $(TM_H) $(TREE_H) $(RTL_H) expr.h flags.h params.h input.h insn-config.h \ | |
362 | $(INTEGRATE_H) $(VARRAY_H) $(HASHTAB_H) $(SPLAY_TREE_H) toplev.h \ | |
363 | langhooks.h $(C_COMMON_H) $(srcdir)/tree-inline.h | |
364 | $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \ | |
365 | -DINLINER_FOR_JAVA=1 \ | |
366 | $(srcdir)/tree-inline.c -o $@ | |
367 | ||
f33dfe15 | 368 | # Documentation |
ca6eabd1 | 369 | doc/gcj.info: java/gcj.texi $(docdir)/include/fdl.texi \ |
370 | $(docdir)/include/gpl.texi $(docdir)/include/gcc-common.texi | |
f33dfe15 | 371 | if test "x$(BUILD_INFO)" = xinfo; then \ |
1e94fc11 | 372 | rm -f doc/gcj.info*; \ |
373 | $(MAKEINFO) $(MAKEINFOFLAGS) -I $(docdir)/include -o $@ $<; \ | |
f33dfe15 | 374 | else true; fi |
375 | ||
ca6eabd1 | 376 | doc/gcj.dvi: java/gcj.texi $(docdir)/include/fdl.texi \ |
377 | $(docdir)/include/gpl.texi $(docdir)/include/gcc-common.texi | |
b5a57562 | 378 | $(TEXI2DVI) -I $(abs_docdir)/include -o $@ $< |
1e94fc11 | 379 | |
380 | .INTERMEDIATE: gcj.pod gcjh.pod jv-scan.pod jcf-dump.pod gij.pod \ | |
381 | jv-convert.pod rmic.pod rmiregistry.pod | |
382 | ||
383 | gcj.pod: java/gcj.texi | |
384 | -$(TEXI2POD) -D gcj < $< > $@ | |
385 | gcjh.pod: java/gcj.texi | |
386 | -$(TEXI2POD) -D gcjh < $< > $@ | |
387 | jv-scan.pod: java/gcj.texi | |
388 | -$(TEXI2POD) -D jv-scan < $< > $@ | |
389 | jcf-dump.pod: java/gcj.texi | |
390 | -$(TEXI2POD) -D jcf-dump < $< > $@ | |
391 | gij.pod: java/gcj.texi | |
392 | -$(TEXI2POD) -D gij < $< > $@ | |
393 | jv-convert.pod: java/gcj.texi | |
394 | -$(TEXI2POD) -D jv-convert < $< > $@ | |
395 | rmic.pod: java/gcj.texi | |
396 | -$(TEXI2POD) -D rmic < $< > $@ | |
397 | rmiregistry.pod: java/gcj.texi | |
398 | -$(TEXI2POD) -D rmiregistry < $< > $@ | |
3c73c0d9 | 399 | |
4380309c | 400 | # Install the man pages. |
ca6eabd1 | 401 | java.install-man: installdirs \ |
17bc5448 | 402 | $(DESTDIR)$(man1dir)/$(JAVA_INSTALL_NAME)$(man1ext) \ |
403 | $(JAVA_TARGET_INDEPENDENT_BIN_TOOLS:%=doc/%.1) \ | |
404 | doc/gij.1 doc/jv-convert.1 doc/rmic.1 doc/rmiregistry.1 | |
3be1b7b4 | 405 | for tool in $(JAVA_TARGET_INDEPENDENT_BIN_TOOLS) \ |
406 | gij jv-convert rmic rmiregistry ; do \ | |
407 | tool_transformed_name=`echo $$tool|sed '$(program_transform_name)'`; \ | |
408 | man_name=$(DESTDIR)$(man1dir)/$${tool_transformed_name}$(man1ext); \ | |
409 | rm -f $$man_name ; \ | |
410 | $(INSTALL_DATA) doc/$${tool}.1 $$man_name; \ | |
411 | chmod a-x $$man_name ; \ | |
412 | done | |
ca6eabd1 | 413 | |
414 | $(DESTDIR)$(man1dir)/$(JAVA_INSTALL_NAME)$(man1ext): doc/gcj.1 | |
415 | -rm -f $@ | |
416 | -$(INSTALL_DATA) $< $@ | |
417 | -chmod a-x $@ |