]>
Commit | Line | Data |
---|---|---|
ee9dd372 TT |
1 | ## Process this file with automake to produce Makefile.in. |
2 | ||
3 | AUTOMAKE_OPTIONS = foreign no-installinfo | |
4 | ||
5 | if TESTSUBDIR | |
7af85558 | 6 | SUBDIRS = $(DIRLTDL) testsuite gcj include |
27e934d8 | 7 | else |
7af85558 | 8 | SUBDIRS = $(DIRLTDL) gcj include |
ee9dd372 TT |
9 | endif |
10 | ||
11 | ## ################################################################ | |
12 | ||
13 | ## | |
14 | ## What gets installed, and where. | |
15 | ## | |
16 | ||
b48ed568 TT |
17 | ## Install a library built with a cross compiler in tooldir, not |
18 | ## libdir. | |
19 | if USE_LIBDIR | |
7941ceab | 20 | toolexeclibdir = $(libdir)$(MULTISUBDIR) |
b48ed568 | 21 | else |
ee9dd372 TT |
22 | toolexecdir = $(exec_prefix)/$(target_alias) |
23 | toolexeclibdir = $(toolexecdir)/lib$(MULTISUBDIR) | |
b48ed568 | 24 | endif |
ee9dd372 | 25 | |
fa5b690a | 26 | toolexeclib_LTLIBRARIES = libgcj.la |
f994389b | 27 | toolexeclib_DATA = libgcj.spec |
ee9dd372 TT |
28 | data_DATA = libgcj.zip |
29 | ||
7013e7cd AG |
30 | if NEEDS_DATA_START |
31 | toolexeclib_LIBRARIES = libgcjdata.a | |
32 | libgcjdata_a_SOURCES = libgcjdata.c | |
33 | endif | |
34 | ||
f2646bf2 | 35 | ## For now, only on native systems. FIXME. |
ee9dd372 | 36 | if NATIVE |
58eb6e7c | 37 | bin_PROGRAMS = jv-convert gij |
ee9dd372 TT |
38 | endif |
39 | ||
6c80c45e TT |
40 | bin_SCRIPTS = addr2name.awk |
41 | ||
ee9dd372 TT |
42 | ## ################################################################ |
43 | ||
44 | ## | |
45 | ## Compilers and compilation flags. | |
46 | ## | |
47 | ||
48 | ## CANADIAN is a misnomer. Really we check to see if we must pick up | |
49 | ## the tools from the path. | |
50 | if CANADIAN | |
51 | if NULL_TARGET | |
52 | ## In this case, gcj is found outside the build tree. However, zip is | |
53 | ## found in the build tree. | |
54 | GCJ = gcj | |
55 | ZIP = $(MULTIBUILDTOP)../$(COMPPATH)/zip/zip$(EXEEXT) | |
56 | else | |
57 | GCJ = $(target_alias)-gcj | |
58 | ZIP = zip | |
59 | endif | |
60 | GCJH = gcjh | |
61 | else # CANADIAN | |
62 | ## JAVAC is set to `$(GCJ) -C'. However, JAVAC is run from the srcdir | |
63 | ## (due to problems running it in builddir). In this case the obvious | |
64 | ## definition of GCJ won't work; instead we resort to this ugly | |
65 | ## definition that gives us absolute paths. | |
66 | expanded = `cd $(MULTIBUILDTOP)../$(COMPPATH)/gcc && pwd` | |
67 | GCJ = $(expanded)/gcj$(EXEEXT) -B$(expanded)/ | |
68 | GCJH = $(MULTIBUILDTOP)../$(COMPPATH)/gcc/gcjh$(EXEEXT) | |
69 | ZIP = $(MULTIBUILDTOP)../$(COMPPATH)/zip/zip$(EXEEXT) | |
70 | endif # CANADIAN | |
71 | ||
1f577886 | 72 | GCJCOMPILE = CLASSPATH=$(here) $(LIBTOOL) --mode=compile $(GCJ) -fassume-compiled -L$(here) $(JC1FLAGS) -c |
327f2480 | 73 | GCJLINK = $(LIBTOOL) --mode=link $(GCJ) -L$(here) $(JC1FLAGS) $(LDFLAGS) -o $@ |
89b6698a | 74 | LIBLINK = $(LIBTOOL) --mode=link $(CC) -L$(here) $(JC1FLAGS) $(LDFLAGS) -o $@ |
a3ffcff3 | 75 | |
ee9dd372 TT |
76 | JAVAC = $(GCJ) -C |
77 | ||
78 | EH_COMMON_INCLUDE = @EH_COMMON_INCLUDE@ | |
79 | ||
80 | WARNINGS = -W -Wall | |
0f918fea TT |
81 | ## We need _GNU_SOURCE defined for some Linux builds. It doesn't hurt |
82 | ## to always define it. | |
09acb3e1 TT |
83 | ## Note that we need -fasynchronous-exceptions because gcc is |
84 | ## currently broken with respect to exception handling in leaf | |
85 | ## functions. | |
86 | AM_CXXFLAGS = -fno-rtti -fvtable-thunks -fasynchronous-exceptions \ | |
87 | @LIBGCJ_CXXFLAGS@ @EXCEPTIONSPEC@ $(WARNINGS) -D_GNU_SOURCE | |
ee9dd372 TT |
88 | if USING_GCC |
89 | AM_CFLAGS = @LIBGCJ_CFLAGS@ $(WARNINGS) | |
90 | else | |
91 | AM_CFLAGS = @LIBGCJ_CFLAGS@ | |
92 | endif | |
93 | ||
1f577886 JJ |
94 | JCFLAGS = -g |
95 | JC1FLAGS = -g @LIBGCJ_JAVAFLAGS@ | |
ee9dd372 | 96 | |
d0a844f8 | 97 | LIBFFIINCS = -I$(top_srcdir)/../libffi/include -I$(MULTIBUILDTOP)../libffi/include |
58eb6e7c | 98 | |
27e934d8 | 99 | INCLUDES = -I$(top_srcdir) -Iinclude -I$(top_srcdir)/include \ |
7af85558 | 100 | $(GCINCS) $(THREADINCS) $(INCLTDL) \ |
58eb6e7c | 101 | $(EH_COMMON_INCLUDE) $(ZINCS) $(LIBFFIINCS) |
ee9dd372 TT |
102 | |
103 | ||
104 | ## ################################################################ | |
105 | ||
106 | ## | |
107 | ## How to build libgcj.a and libgcj.zip | |
108 | ## | |
109 | ||
110 | ## Objects from C++ sources in subdirs. | |
a3ffcff3 | 111 | nat_files = $(nat_source_files:.cc=.lo) |
ee9dd372 | 112 | ## Objects from C sources in subdirs. |
a3ffcff3 | 113 | c_files = $(c_source_files:.c=.lo) |
ee9dd372 | 114 | ## Objects from Java sources in subdirs. |
42962a48 TT |
115 | javao_files = $(java_source_files:.java=.lo) \ |
116 | $(built_java_source_files:.java=.lo) | |
ee9dd372 | 117 | |
58eb6e7c AG |
118 | ## Extract the libffi object file names. |
119 | libffi_files = `$(AR) t ../libffi/.libs/libffi.a 2>/dev/null | sed 's/\.o/\.lo/g' | sed 's/^/..\/libffi\//g'` | |
120 | ||
121 | libgcj_la_SOURCES = prims.cc jni.cc exception.cc \ | |
283a159f | 122 | resolve.cc defineclass.cc interpret.cc name-finder.cc |
a3ffcff3 | 123 | EXTRA_libgcj_la_SOURCES = boehm.cc nogc.cc posix-threads.cc no-threads.cc \ |
42962a48 | 124 | $(c_source_files) $(java_source_files) $(built_java_source_files) |
a3ffcff3 | 125 | libgcj_la_DEPENDENCIES = libgcj.zip $(javao_files) $(nat_files) \ |
7af85558 | 126 | $(c_files) $(GCOBJS) $(THREADOBJS) $(LIBLTDL) |
a3ffcff3 | 127 | libgcj_la_LIBADD = $(javao_files) $(nat_files) $(c_files) $(GCOBJS) \ |
7af85558 | 128 | $(THREADOBJS) $(libffi_files) $(LIBLTDL) |
327f2480 | 129 | libgcj_la_LDFLAGS = -rpath $(toolexeclibdir) \ |
a06fcbd4 TT |
130 | ## The mysterious backslash is consumed by make. |
131 | -version-info `grep -v '^\#' $(srcdir)/libtool-version` | |
89b6698a TT |
132 | libgcj_la_LINK = $(LIBLINK) |
133 | ||
ee9dd372 TT |
134 | |
135 | ## Make the .class files depend on the .zip file. This seems | |
136 | ## backwards, but is right. This doesn't catch all the .class files, | |
137 | ## but that is ok, because the ones it fails to pick up are defined in | |
138 | ## a .java file with some other class which is caught. Note that we | |
139 | ## only want to create headers for those files which do not have | |
140 | ## hand-maintained headers. | |
141 | $(java_source_files:.java=.class): libgcj.zip | |
142 | ||
42962a48 TT |
143 | ## FIXME: this isn't really correct. |
144 | $(built_java_source_files:.java=.class): $(built_java_source_files) | |
145 | ## This little nastiness is here so that the backquoted stuff in the | |
146 | ## GCJ definition can be correctly expanded, if required. | |
147 | javac="$(JAVAC)"; \ | |
1f577886 | 148 | $$javac -L$(here) $(JCFLAGS) -classpath $(here):`cd $(srcdir) && /bin/pwd` \ |
42962a48 TT |
149 | -d $(here) $? |
150 | ||
ee9dd372 TT |
151 | ## We have the zip file depend on the java sources and not the class |
152 | ## files, because we don't know the names of all the class files. | |
153 | ## FIXME: this method fails in a peculiar case: if libgcj.zip is | |
154 | ## up-to-date, and foo.class is removed, and bar.java is touched, then | |
155 | ## `make libgcj.zip' will not rebuilt foo.class. That's because | |
156 | ## libgcj.zip is not out-of-date with respect to foo.java. | |
fa5b690a | 157 | libgcj.zip: $(java_source_files) |
42962a48 TT |
158 | ## FIXME: this ought to depend on built_java_source_files, but right |
159 | ## now it can't. Ugly. | |
160 | $(MAKE) $(built_java_source_files:.java=.class) | |
ee9dd372 TT |
161 | ## This little nastiness is here so that the backquoted stuff in the |
162 | ## GCJ definition can be correctly expanded, if required. | |
163 | javac="$(JAVAC)"; cd $(srcdir); \ | |
fad163ed | 164 | $$javac $(JCFLAGS) -classpath $(here):`/bin/pwd` -d $(here) \ |
ee9dd372 TT |
165 | $(subst $(srcdir)/,,$?) |
166 | -@rm -f libgcj.zip | |
167 | ## Note that we explicitly want to include directory information. | |
b6d37991 | 168 | $(ZIP) -r libgcj java gnu -n .class -i '*.class' -i '*/' |
ee9dd372 | 169 | |
fa5b690a | 170 | MOSTLYCLEANFILES = $(javao_files) $(nat_files) $(nat_headers) $(c_files) |
9096b279 TT |
171 | CLEANFILES = libgcj.zip |
172 | ||
173 | clean-local: | |
174 | ## We just remove every .class file that was created. | |
175 | find . -name '*.class' -print | xargs rm -f | |
ee9dd372 TT |
176 | |
177 | SUFFIXES = .class .java .h | |
178 | ||
a3ffcff3 TT |
179 | .class.lo: |
180 | $(GCJCOMPILE) -o $@ $< | |
ee9dd372 | 181 | |
b1133adf KKT |
182 | .java.lo: |
183 | $(GCJCOMPILE) -o $@ $< | |
184 | ||
ee9dd372 TT |
185 | ## This is GNU make specific. For the .o files in subdirs, use a |
186 | ## special rule. The standard automake rule can't be overridden (this | |
187 | ## is a bug in automake), and it also won't put the .o files into | |
188 | ## subdirs. FIXME. | |
a3ffcff3 TT |
189 | $(nat_files): %.lo: %.cc |
190 | $(LTCXXCOMPILE) -c -o $@ $< | |
ee9dd372 | 191 | |
93bc735f | 192 | $(nat_files) $(GCOBJS) $(THREADOBJS) $(libgcj_la_OBJECTS) $(gij_OBJECTS): \ |
a4e44caa | 193 | include/config.h include/java-signal.h $(nat_headers) |
ee9dd372 TT |
194 | |
195 | ## FIXME: GNU make. | |
a3ffcff3 TT |
196 | $(c_files): %.lo: %.c |
197 | $(LTCOMPILE) -c -o $@ $< | |
ee9dd372 TT |
198 | |
199 | $(c_files): java/lang/fdlibm.h java/lang/ieeefp.h java/lang/mprec.h | |
200 | ||
201 | ## FIXME: GNU make. | |
fa5b690a | 202 | $(javao_files): %.lo: %.java |
a3ffcff3 | 203 | $(GCJCOMPILE) -o $@ $< |
ee9dd372 | 204 | |
fa5b690a | 205 | $(javao_files): libgcj.zip |
0c2534d9 | 206 | |
ee9dd372 TT |
207 | ## ################################################################ |
208 | ||
209 | ## | |
210 | ## How to build header files. | |
211 | ## | |
212 | ||
213 | .class.h: | |
214 | ## FIXME: GNU make specific. | |
215 | $(GCJH) -classpath $(top_builddir) $(basename $<) | |
216 | ||
217 | ## Header files used when compiling some of the nat* files. | |
42962a48 | 218 | nat_headers = $(ordinary_java_source_files:.java=.h) \ |
24969f07 | 219 | $(built_java_source_files:.java=.h) \ |
6c80c45e TT |
220 | java/io/ObjectOutputStream$$PutField.h \ |
221 | java/io/ObjectInputStream$$GetField.h | |
ee9dd372 TT |
222 | |
223 | $(nat_headers): libgcj.zip | |
224 | ||
b8c3c4f0 TT |
225 | java/lang/ClassLoader.h: java/lang/ClassLoader.class libgcj.zip |
226 | $(GCJH) -classpath $(top_builddir) \ | |
227 | -friend 'jclass _Jv_FindClass (_Jv_Utf8Const *name, java::lang::ClassLoader *loader);' \ | |
228 | $(basename $<) | |
229 | ||
ee9dd372 | 230 | ## Our internal main program needs to be able to create a FirstThread. |
6cc96432 | 231 | gnu/gcj/runtime/FirstThread.h: gnu/gcj/runtime/FirstThread.class libgcj.zip |
eb4534a6 KKT |
232 | $(GCJH) -classpath $(top_builddir) \ |
233 | -friend 'void JvRunMain (jclass, int, const char **);' \ | |
234 | -friend 'void _Jv_RunMain (const char*, int, const char **);' \ | |
ee9dd372 TT |
235 | $(basename $<) |
236 | ||
aaf0766e TT |
237 | java/lang/Thread.h: java/lang/Thread.class libgcj.zip |
238 | $(GCJH) -classpath $(top_builddir) \ | |
239 | -prepend 'class _Jv_JNIEnv;' \ | |
aaf0766e | 240 | -prepend 'extern "Java" { namespace gnu { namespace gcj { namespace jni { class NativeThread; } } } };' \ |
8e4b9c97 BM |
241 | -prepend '#define _JV_NOT_OWNER 1' \ |
242 | -prepend '#define _JV_INTERRUPTED 2' \ | |
aaf0766e TT |
243 | -friend '_Jv_JNIEnv * _Jv_GetCurrentJNIEnv ();' \ |
244 | -friend 'void _Jv_SetCurrentJNIEnv (_Jv_JNIEnv *env);' \ | |
245 | -friend 'class gnu::gcj::jni::NativeThread;' \ | |
8e4b9c97 BM |
246 | -friend 'int _Jv_CondWait (_Jv_ConditionVariable_t *cv, _Jv_Mutex_t *mu, jlong millis, jint nanos);' \ |
247 | -friend 'int _Jv_CondNotify (_Jv_ConditionVariable_t *cv, _Jv_Mutex_t *mu);' \ | |
248 | -friend 'void _Jv_ThreadInterrupt (_Jv_Thread_t *data);' \ | |
aaf0766e TT |
249 | $(basename $<) |
250 | ||
ee9dd372 TT |
251 | java/lang/String.h: java/lang/String.class libgcj.zip |
252 | $(GCJH) -classpath $(top_builddir) \ | |
253 | -friend 'jchar* _Jv_GetStringChars (jstring str);' \ | |
254 | -friend 'jstring* _Jv_StringFindSlot (jchar*, jint, jint);' \ | |
255 | -friend 'jstring* _Jv_StringGetSlot (jstring);' \ | |
256 | -friend 'jstring _Jv_NewStringUtf8Const (_Jv_Utf8Const* str);' \ | |
257 | -friend 'jstring _Jv_NewStringLatin1 (const char*, jsize);' \ | |
258 | -friend 'jstring _Jv_AllocString (jsize);' \ | |
259 | $(basename $<) | |
260 | ||
0f918fea TT |
261 | java/lang/reflect/Constructor.h: java/lang/reflect/Constructor.class libgcj.zip |
262 | $(GCJH) -classpath $(top_builddir) \ | |
263 | -friend 'jmethodID _Jv_FromReflectedConstructor (java::lang::reflect::Constructor *);' \ | |
264 | -friend 'java::lang::Class;' \ | |
355dff4c | 265 | -friend 'jobject _Jv_JNI_ToReflectedMethod (_Jv_JNIEnv *, jclass, jmethodID, jboolean);' \ |
0f918fea TT |
266 | $(basename $<) |
267 | ||
ee9dd372 TT |
268 | java/lang/reflect/Field.h: java/lang/reflect/Field.class libgcj.zip |
269 | $(GCJH) -classpath $(top_builddir) \ | |
270 | -friend 'jfieldID _Jv_FromReflectedField (java::lang::reflect::Field *);' \ | |
355dff4c | 271 | -friend 'jobject _Jv_JNI_ToReflectedField (_Jv_JNIEnv*, jclass, jfieldID, jboolean);' \ |
ee9dd372 TT |
272 | -friend 'java::lang::Class;' \ |
273 | $(basename $<) | |
274 | ||
275 | java/lang/reflect/Method.h: java/lang/reflect/Method.class libgcj.zip | |
276 | $(GCJH) -classpath $(top_builddir) \ | |
277 | -friend 'jmethodID _Jv_FromReflectedMethod (java::lang::reflect::Method *);' \ | |
278 | -friend 'java::lang::Class;' \ | |
355dff4c | 279 | -friend 'jobject _Jv_JNI_ToReflectedMethod (_Jv_JNIEnv *, jclass, jmethodID, jboolean);' \ |
ee9dd372 TT |
280 | $(basename $<) |
281 | ||
eb4534a6 | 282 | gnu/gcj/runtime/VMClassLoader.h: gnu/gcj/runtime/VMClassLoader.class libgcj.zip |
58eb6e7c AG |
283 | $(GCJH) -classpath $(top_builddir) \ |
284 | -friend 'java::lang::ClassLoader;' \ | |
285 | $(basename $<) | |
286 | ||
6c80c45e TT |
287 | java/io/ObjectInputStream$$GetField.h: java/io/ObjectInputStream$$GetField.class libgcj.zip |
288 | $(GCJH) -classpath $(top_builddir) \ | |
289 | 'java/io/ObjectInputStream$$GetField' | |
290 | ||
291 | java/io/ObjectOutputStream$$PutField.h: java/io/ObjectOutputStream$$PutField.class libgcj.zip | |
292 | $(GCJH) -classpath $(top_builddir) \ | |
293 | 'java/io/ObjectOutputStream$$PutField' | |
294 | ||
27e934d8 TT |
295 | ## Headers we maintain by hand and which we want to install. |
296 | extra_headers = java/lang/Object.h java/lang/Class.h | |
297 | ||
298 | ## Install the headers. It is fairly ugly that we have to do this by | |
299 | ## hand. | |
300 | install-data-local: | |
301 | $(PRE_INSTALL) | |
302 | @for f in $(nat_headers) $(extra_headers); do \ | |
303 | d="`echo $$f | sed -e 's,/[^/]*$$,,'`"; \ | |
304 | $(mkinstalldirs) $(DESTDIR)$(includedir)/$$d; \ | |
305 | if test -f $(srcdir)/$$f; then p=$(srcdir)/$$f; else p=$$f; fi; \ | |
306 | echo " $(INSTALL_DATA) $$p $(DESTDIR)$(includedir)/$$f"; \ | |
307 | $(INSTALL_DATA) $$p $(DESTDIR)$(includedir)/$$f; \ | |
308 | done | |
ee9dd372 TT |
309 | |
310 | ## ################################################################ | |
311 | ||
312 | ## | |
313 | ## Additional `check' targets for maintainer convenience. | |
314 | ## | |
315 | ||
316 | ## This is used for maintainer-check. FIXME: should set from | |
317 | ## configure using AC_CHECK_TOOL. | |
318 | NM = nm | |
319 | ||
320 | ## Try to make sure our library doesn't stomp the namespace. | |
a3ffcff3 TT |
321 | maintainer-check: libgcj.la |
322 | $(NM) .libs/libgcj.a | grep ' T ' \ | |
ee9dd372 TT |
323 | ## Anything with `4java' is assumed to be from .java source. |
324 | | grep -v '4java' \ | |
325 | ## Anything with Jv is ok. | |
326 | | grep -v 'Jv' \ | |
327 | ## `terminate' and `unexpected' are part of the runtime. | |
328 | | grep -v 'terminate__Fv' | grep -v 'unexpected__Fv' | |
329 | ||
330 | ## This rule can be used to see if the headers are more or less | |
331 | ## correct. | |
332 | header-check: libgcj.zip $(nat_headers) | |
333 | rm -f htest.cc; \ | |
334 | for h in $(nat_headers); do \ | |
335 | echo "#include \"$$h\"" >> htest.cc; \ | |
336 | done; \ | |
337 | $(CXXCOMPILE) -fsyntax-only htest.cc | |
338 | ||
339 | ||
340 | ## ################################################################ | |
341 | ||
342 | ## | |
343 | ## The `jv-convert' program and code to rebuild the converter header | |
344 | ## files. | |
345 | ## | |
346 | ||
347 | ## it only makes sense to try to rebuild the JIS .h files on native | |
348 | ## systems. | |
349 | if NATIVE | |
350 | if MAINTAINER_MODE | |
351 | noinst_PROGRAMS = gen-from-JIS | |
352 | endif | |
353 | endif | |
354 | ||
355 | CONVERT_DIR = gnu/gcj/convert | |
356 | ||
357 | jv_convert_SOURCES = | |
358 | EXTRA_jv_convert_SOURCES = $(convert_source_files) | |
d5d9a8b6 TT |
359 | ## We need -nodefaultlibs because we want to avoid gcj's `-lgcj'. We |
360 | ## need this because we are explicitly using libtool to link using the | |
361 | ## `.la' file. | |
f994389b | 362 | jv_convert_LDFLAGS = --main=gnu.gcj.convert.Convert \ |
327f2480 TT |
363 | -rpath $(toolexeclibdir) |
364 | jv_convert_LINK = $(GCJLINK) | |
f994389b TT |
365 | ## We explicitly link in the libraries we need. This way we don't |
366 | ## need -nodefaultlibs, so we can still rely on gcj picking up the | |
fc9527b3 | 367 | ## system libraries we need (via the specs file). |
42962a48 TT |
368 | ## We need the -L so that gcj can find libgcj with `-lgcj'. |
369 | ## FIXME: should be _libs on some systems. | |
a3ffcff3 | 370 | jv_convert_LDADD = $(convert_source_files:.java=.lo) libgcj.la \ |
42962a48 | 371 | $(GCLIBS) $(THREADLIBS) $(ZLIBS) -L$(here)/.libs |
81d4a072 TT |
372 | ## Depend on the spec file to make sure it is up to date before |
373 | ## linking this program. | |
a3ffcff3 | 374 | jv_convert_DEPENDENCIES = $(convert_source_files:.java=.lo) \ |
81d4a072 | 375 | $(GCDEPS) $(THREADDEPS) $(ZDEPS) libgcj.la libgcj.spec |
ee9dd372 | 376 | |
93bc735f | 377 | gij_SOURCES = gij.cc |
58eb6e7c AG |
378 | ## We need -nodefaultlibs because we want to avoid gcj's `-lgcj'. We |
379 | ## need this because we are explicitly using libtool to link using the | |
380 | ## `.la' file. | |
327f2480 TT |
381 | gij_LDFLAGS = -rpath $(toolexeclibdir) |
382 | gij_LINK = $(GCJLINK) | |
58eb6e7c AG |
383 | ## We explicitly link in the libraries we need. This way we don't |
384 | ## need -nodefaultlibs, so we can still rely on gcj picking up the | |
385 | ## system libraries we need (via the specs file). | |
386 | ## We need the -L so that gcj can find libgcj with `-lgcj'. | |
387 | ## FIXME: should be _libs on some systems. | |
93bc735f | 388 | gij_LDADD = libgcj.la $(GCLIBS) $(THREADLIBS) $(ZLIBS) -L$(here)/.libs |
58eb6e7c AG |
389 | ## Depend on the spec file to make sure it is up to date before |
390 | ## linking this program. | |
93bc735f | 391 | gij_DEPENDENCIES = $(GCDEPS) $(THREADDEPS) $(ZDEPS) libgcj.la libgcj.spec |
58eb6e7c | 392 | |
714091c6 PB |
393 | # The Unicode consortium does not permit re-distributing the file JIS0201.TXT. |
394 | # You can get it from ftp://ftp.unicode.org/Public/MAPPINGS/EASTASIA/JIS/. | |
395 | ||
396 | $(srcdir)/$(CONVERT_DIR)/JIS0201.h: # $(CONVERT_DIR)/JIS0201.TXT | |
397 | echo '/* This file is automatically generated from Unicode tables */' > tmp-0201; \ | |
398 | tr -d '\r' <$(CONVERT_DIR)/JIS0201.TXT \ | |
399 | | sed -n -e 's|\(0x..\).*\(0x....\).*#\(.*\)$$|MAP(0x00, \1, \2) /*\3 */|p' \ | |
400 | >> tmp-0201; \ | |
401 | mv tmp-0201 $(srcdir)/$(CONVERT_DIR)/JIS0201.h | |
402 | ||
ee9dd372 TT |
403 | # The Unicode consortium does not permit re-distributing the file JIS0208.TXT. |
404 | # You can get it from ftp://ftp.unicode.org/Public/MAPPINGS/EASTASIA/JIS/. | |
405 | ||
714091c6 PB |
406 | $(srcdir)/$(CONVERT_DIR)/JIS0208.h: # $(CONVERT_DIR)/JIS0208.TXT |
407 | echo '/* This file is automatically generated from Unicode tables */' > tmp-0208; \ | |
408 | tr -d '\r' <$(CONVERT_DIR)/JIS0208.TXT \ | |
409 | | sed -n -e 's|\(0x....\).*0x\(..\)\(..\).*\(0x....\).*#\(.*\)$$|MAP(0x\2, 0x\3, \4) /*\5 */|p' \ | |
410 | >> tmp-0208; \ | |
ee9dd372 TT |
411 | mv tmp-0208 $(srcdir)/$(CONVERT_DIR)/JIS0208.h |
412 | ||
413 | # The Unicode consortium does not permit re-distributing the file JIS0212.TXT. | |
414 | # You can get it from ftp://ftp.unicode.org/Public/MAPPINGS/EASTASIA/JIS/. | |
415 | ||
714091c6 PB |
416 | $(srcdir)/$(CONVERT_DIR)/JIS0212.h: # $(CONVERT_DIR)/JIS0212.TXT |
417 | echo '/* This file is automatically generated from Unicode tables */' > tmp-0212; \ | |
418 | tr -d '\r' <$(CONVERT_DIR)/JIS0212.TXT \ | |
419 | | sed -n -e 's|0x\(..\)\(..\).*\(0x....\).*#\(.*\)$$|MAP(0x\1, 0x\2, \3) /*\4 */|p' \ | |
420 | >> tmp-0212; \ | |
ee9dd372 TT |
421 | mv tmp-0212 $(srcdir)/$(CONVERT_DIR)/JIS0212.h |
422 | ||
423 | ||
424 | gen_from_JIS_SOURCES = | |
425 | EXTRA_gen_from_JIS_SOURCES = $(srcdir)/$(CONVERT_DIR)/gen-from-JIS.c \ | |
714091c6 PB |
426 | $(srcdir)/$(CONVERT_DIR)/make-trie.c \ |
427 | $(srcdir)/$(CONVERT_DIR)/JIS0201.h \ | |
ee9dd372 TT |
428 | $(srcdir)/$(CONVERT_DIR)/JIS0208.h \ |
429 | $(srcdir)/$(CONVERT_DIR)/JIS0212.h | |
714091c6 PB |
430 | gen_from_JIS_LDADD = $(CONVERT_DIR)/gen-from-JIS.o $(CONVERT_DIR)/make-trie.o |
431 | gen_from_JIS_DEPENDENCIES = $(CONVERT_DIR)/gen-from-JIS.o \ | |
432 | $(CONVERT_DIR)/make-trie.o | |
ee9dd372 TT |
433 | |
434 | $(CONVERT_DIR)/gen-from-JIS.o: $(srcdir)/$(CONVERT_DIR)/gen-from-JIS.c \ | |
714091c6 | 435 | $(srcdir)/$(CONVERT_DIR)/JIS0201.h \ |
ee9dd372 TT |
436 | $(srcdir)/$(CONVERT_DIR)/JIS0208.h \ |
437 | $(srcdir)/$(CONVERT_DIR)/JIS0212.h | |
438 | $(COMPILE) -c -o $(CONVERT_DIR)/gen-from-JIS.o \ | |
439 | $(srcdir)/$(CONVERT_DIR)/gen-from-JIS.c | |
440 | ||
714091c6 PB |
441 | $(CONVERT_DIR)/make-trie.o: $(srcdir)/$(CONVERT_DIR)/make-trie.c |
442 | $(COMPILE) -c -o $(CONVERT_DIR)/make-trie.o \ | |
443 | $(srcdir)/$(CONVERT_DIR)/make-trie.c | |
444 | ||
ee9dd372 TT |
445 | if NATIVE |
446 | if MAINTAINER_MODE | |
447 | ||
448 | $(srcdir)/$(CONVERT_DIR)/JIS0208_to_Unicode.cc: ./gen-from-JIS$(EXEEXT) | |
449 | ./gen-from-JIS JIS0208>$(srcdir)/$(CONVERT_DIR)/JIS0208_to_Unicode.cc | |
450 | ||
451 | $(srcdir)/$(CONVERT_DIR)/JIS0212_to_Unicode.cc: ./gen-from-JIS$(EXEEXT) | |
452 | ./gen-from-JIS JIS0212>$(srcdir)/$(CONVERT_DIR)/JIS0212_to_Unicode.cc | |
453 | ||
714091c6 PB |
454 | $(srcdir)/$(CONVERT_DIR)/Unicode_to_JIS.cc: ./gen-from-JIS$(EXEEXT) |
455 | ./gen-from-JIS toJIS>$(srcdir)/$(CONVERT_DIR)/Unicode_to_JIS.cc | |
456 | ||
ee9dd372 TT |
457 | endif # MAINTAINER_MODE |
458 | endif # NATIVE | |
459 | ||
460 | ||
461 | ## ################################################################ | |
462 | ||
463 | ## | |
464 | ## This section lists all the source files we care about. | |
465 | ## | |
466 | ||
467 | convert_source_files = \ | |
468 | gnu/gcj/convert/BytesToUnicode.java \ | |
469 | gnu/gcj/convert/Convert.java \ | |
470 | gnu/gcj/convert/Input_8859_1.java \ | |
471 | gnu/gcj/convert/Input_EUCJIS.java \ | |
714091c6 PB |
472 | gnu/gcj/convert/Input_JavaSrc.java \ |
473 | gnu/gcj/convert/Input_SJIS.java \ | |
ee9dd372 | 474 | gnu/gcj/convert/Input_UTF8.java \ |
946efde1 | 475 | gnu/gcj/convert/Input_iconv.java \ |
ee9dd372 | 476 | gnu/gcj/convert/Output_8859_1.java \ |
714091c6 | 477 | gnu/gcj/convert/Output_EUCJIS.java \ |
ee9dd372 | 478 | gnu/gcj/convert/Output_JavaSrc.java \ |
714091c6 | 479 | gnu/gcj/convert/Output_SJIS.java \ |
ee9dd372 | 480 | gnu/gcj/convert/Output_UTF8.java \ |
946efde1 | 481 | gnu/gcj/convert/Output_iconv.java \ |
ee9dd372 TT |
482 | gnu/gcj/convert/UnicodeToBytes.java |
483 | ||
484 | ## List of all .java files for which the .h file is maintained by | |
485 | ## hand. | |
486 | special_java_source_files = java/lang/Class.java java/lang/Object.java | |
487 | ||
4eaf5996 | 488 | awt_java_source_files = \ |
6c80c45e TT |
489 | java/awt/event/ActionEvent.java \ |
490 | java/awt/event/ActionListener.java \ | |
491 | java/awt/event/ComponentEvent.java \ | |
c7a136d3 BM |
492 | java/awt/event/HierarchyBoundsAdapter.java \ |
493 | java/awt/event/HierarchyBoundsListener.java \ | |
494 | java/awt/event/HierarchyEvent.java \ | |
495 | java/awt/event/HierarchyListener.java \ | |
6c80c45e | 496 | java/awt/event/InputEvent.java \ |
c7a136d3 | 497 | java/awt/event/KeyAdapter.java \ |
6c80c45e TT |
498 | java/awt/event/KeyEvent.java \ |
499 | java/awt/event/KeyListener.java \ | |
500 | java/awt/event/TextEvent.java \ | |
501 | java/awt/event/TextListener.java \ | |
502 | java/awt/event/WindowAdapter.java \ | |
503 | java/awt/event/WindowEvent.java \ | |
504 | java/awt/event/WindowListener.java \ | |
505 | java/awt/event/InputMethodListener.java \ | |
506 | java/awt/event/ComponentListener.java \ | |
507 | java/awt/event/AdjustmentListener.java \ | |
508 | java/awt/event/AWTEventListener.java \ | |
509 | java/awt/event/FocusListener.java \ | |
510 | java/awt/event/AdjustmentEvent.java \ | |
511 | java/awt/event/ItemListener.java \ | |
512 | java/awt/event/ContainerListener.java \ | |
513 | java/awt/event/MouseListener.java \ | |
514 | java/awt/event/MouseMotionListener.java \ | |
515 | java/awt/event/ComponentAdapter.java \ | |
516 | java/awt/event/ContainerAdapter.java \ | |
517 | java/awt/event/FocusAdapter.java \ | |
518 | java/awt/event/MouseAdapter.java \ | |
519 | java/awt/event/MouseMotionAdapter.java \ | |
520 | java/awt/event/FocusEvent.java \ | |
521 | java/awt/event/InputMethodEvent.java \ | |
522 | java/awt/event/MouseEvent.java \ | |
523 | java/awt/event/ItemEvent.java \ | |
524 | java/awt/event/InvocationEvent.java \ | |
525 | java/awt/event/PaintEvent.java \ | |
526 | java/awt/event/ContainerEvent.java \ | |
c7a136d3 | 527 | java/awt/AWTError.java \ |
775de547 | 528 | java/awt/AWTEvent.java \ |
c7a136d3 | 529 | java/awt/AWTEventMulticaster.java \ |
775de547 | 530 | java/awt/BorderLayout.java \ |
c7a136d3 BM |
531 | java/awt/CheckboxGroup.java \ |
532 | java/awt/ColorModel.java \ | |
4eaf5996 | 533 | java/awt/Component.java \ |
c7a136d3 | 534 | java/awt/ComponentOrientation.java \ |
4eaf5996 | 535 | java/awt/Container.java \ |
c7a136d3 | 536 | java/awt/Cursor.java \ |
4eaf5996 | 537 | java/awt/Dimension.java \ |
775de547 | 538 | java/awt/Event.java \ |
c7a136d3 BM |
539 | java/awt/EventDispatchThread.java \ |
540 | java/awt/EventQueue.java \ | |
775de547 | 541 | java/awt/Font.java \ |
c7a136d3 | 542 | java/awt/FontMetrics.java \ |
775de547 | 543 | java/awt/Frame.java \ |
c7a136d3 BM |
544 | java/awt/GraphicsConfiguration.java \ |
545 | java/awt/Insets.java \ | |
775de547 PB |
546 | java/awt/LayoutManager.java \ |
547 | java/awt/LayoutManager2.java \ | |
548 | java/awt/Menu.java \ | |
549 | java/awt/MenuBar.java \ | |
775de547 PB |
550 | java/awt/MenuComponent.java \ |
551 | java/awt/MenuContainer.java \ | |
4eaf5996 | 552 | java/awt/MenuItem.java \ |
c7a136d3 BM |
553 | java/awt/MenuShortcut.java \ |
554 | java/awt/Panel.java \ | |
775de547 | 555 | java/awt/Point.java \ |
c7a136d3 | 556 | java/awt/PopupMenu.java \ |
775de547 PB |
557 | java/awt/Shape.java \ |
558 | java/awt/TextArea.java \ | |
559 | java/awt/TextComponent.java \ | |
560 | java/awt/Toolkit.java \ | |
561 | java/awt/Window.java \ | |
c7a136d3 BM |
562 | java/awt/image/ImageConsumer.java \ |
563 | java/awt/image/ImageObserver.java \ | |
564 | java/awt/image/ImageProducer.java \ | |
775de547 | 565 | java/awt/geom/Dimension2D.java \ |
4eaf5996 | 566 | java/awt/geom/Point2D.java \ |
c7a136d3 BM |
567 | java/awt/peer/ButtonPeer.java \ |
568 | java/awt/peer/CanvasPeer.java \ | |
569 | java/awt/peer/CheckboxMenuItemPeer.java \ | |
570 | java/awt/peer/CheckboxPeer.java \ | |
571 | java/awt/peer/ChoicePeer.java \ | |
775de547 PB |
572 | java/awt/peer/ComponentPeer.java \ |
573 | java/awt/peer/ContainerPeer.java \ | |
c7a136d3 BM |
574 | java/awt/peer/DialogPeer.java \ |
575 | java/awt/peer/FileDialogPeer.java \ | |
576 | java/awt/peer/FontPeer.java \ | |
775de547 | 577 | java/awt/peer/FramePeer.java \ |
c7a136d3 BM |
578 | java/awt/peer/LabelPeer.java \ |
579 | java/awt/peer/LightweightPeer.java \ | |
580 | java/awt/peer/ListPeer.java \ | |
581 | java/awt/peer/MenuBarPeer.java \ | |
582 | java/awt/peer/MenuComponentPeer.java \ | |
583 | java/awt/peer/MenuItemPeer.java \ | |
584 | java/awt/peer/MenuPeer.java \ | |
585 | java/awt/peer/PanelPeer.java \ | |
586 | java/awt/peer/PopupMenuPeer.java \ | |
587 | java/awt/peer/ScrollPanePeer.java \ | |
588 | java/awt/peer/ScrollbarPeer.java \ | |
589 | java/awt/peer/TextAreaPeer.java \ | |
590 | java/awt/peer/TextComponentPeer.java \ | |
591 | java/awt/peer/TextFieldPeer.java \ | |
6c80c45e TT |
592 | java/awt/peer/WindowPeer.java \ |
593 | java/awt/Adjustable.java \ | |
594 | java/awt/Color.java \ | |
595 | java/awt/Graphics.java \ | |
596 | java/awt/Image.java \ | |
597 | java/awt/Paint.java \ | |
598 | java/awt/PaintContext.java \ | |
599 | java/awt/Transparency.java \ | |
600 | java/awt/ItemSelectable.java \ | |
601 | java/awt/AWTException.java \ | |
602 | java/awt/ActiveEvent.java \ | |
603 | java/awt/Rectangle.java \ | |
604 | java/awt/IllegalComponentStateException.java | |
775de547 | 605 | |
42962a48 TT |
606 | ## Java files which are created by configure and thus are in the build |
607 | ## directory. | |
608 | built_java_source_files = java/lang/ConcreteProcess.java | |
609 | ||
ee9dd372 TT |
610 | ## List of all .java files to be compiled. Please keep this list |
611 | ## alphabetical. Please put files from gnu/gcj/convert into | |
fa5b690a TT |
612 | ## convert_source_files and files from java/awt into |
613 | ## awt_java_source_files. If the .java file has a hand-maintained | |
ee9dd372 TT |
614 | ## header, please list it in special_java_source_files. |
615 | ordinary_java_source_files = $(convert_source_files) \ | |
fa5b690a | 616 | $(awt_java_source_files) \ |
6c80c45e TT |
617 | gnu/gcj/protocol/http/Connection.java \ |
618 | gnu/gcj/protocol/http/Handler.java \ | |
619 | gnu/gcj/protocol/file/Connection.java \ | |
620 | gnu/gcj/protocol/file/Handler.java \ | |
621 | gnu/gcj/protocol/jar/Connection.java \ | |
622 | gnu/gcj/protocol/jar/Handler.java \ | |
ee9dd372 TT |
623 | gnu/gcj/text/BaseBreakIterator.java \ |
624 | gnu/gcj/text/CharacterBreakIterator.java \ | |
625 | gnu/gcj/text/LineBreakIterator.java \ | |
626 | gnu/gcj/text/LocaleData_en.java \ | |
627 | gnu/gcj/text/LocaleData_en_US.java \ | |
628 | gnu/gcj/text/SentenceBreakIterator.java \ | |
629 | gnu/gcj/text/WordBreakIterator.java \ | |
e3884aee | 630 | gnu/gcj/util/EnumerationChain.java \ |
6c80c45e TT |
631 | gnu/gcj/RawData.java \ |
632 | gnu/gcj/math/MPN.java \ | |
633 | gnu/gcj/runtime/VMClassLoader.java \ | |
634 | gnu/gcj/runtime/FirstThread.java \ | |
635 | gnu/gcj/jni/NativeThread.java \ | |
636 | gnu/gcj/io/DefaultMimeTypes.java \ | |
637 | gnu/gcj/io/MimeTypes.java \ | |
638 | gnu/gcj/io/SimpleSHSStream.java \ | |
639 | gnu/java/beans/editors/ColorEditor.java \ | |
640 | gnu/java/beans/editors/FontEditor.java \ | |
641 | gnu/java/beans/editors/NativeBooleanEditor.java \ | |
642 | gnu/java/beans/editors/NativeByteEditor.java \ | |
643 | gnu/java/beans/editors/NativeDoubleEditor.java \ | |
644 | gnu/java/beans/editors/NativeFloatEditor.java \ | |
645 | gnu/java/beans/editors/NativeIntEditor.java \ | |
646 | gnu/java/beans/editors/NativeLongEditor.java \ | |
647 | gnu/java/beans/editors/NativeShortEditor.java \ | |
648 | gnu/java/beans/editors/StringEditor.java \ | |
649 | gnu/java/beans/info/ComponentBeanInfo.java \ | |
650 | gnu/java/beans/BeanInfoEmbryo.java \ | |
651 | gnu/java/beans/EmptyBeanInfo.java \ | |
652 | gnu/java/beans/ExplicitBeanInfo.java \ | |
653 | gnu/java/beans/IntrospectionIncubator.java \ | |
654 | gnu/java/io/ClassLoaderObjectInputStream.java \ | |
655 | gnu/java/io/NullOutputStream.java \ | |
656 | gnu/java/io/ObjectIdentityWrapper.java \ | |
657 | gnu/java/lang/reflect/TypeSignature.java \ | |
658 | gnu/java/lang/ArrayHelper.java \ | |
659 | gnu/java/lang/ClassHelper.java \ | |
2017da52 WL |
660 | gnu/java/security/provider/Gnu.java \ |
661 | gnu/java/security/provider/SHA.java \ | |
662 | gnu/java/security/provider/SHA1PRNG.java \ | |
e98da3dc BM |
663 | java/applet/Applet.java \ |
664 | java/applet/AppletStub.java \ | |
665 | java/applet/AppletContext.java \ | |
666 | java/applet/AudioClip.java \ | |
ee9dd372 TT |
667 | java/io/BufferedInputStream.java \ |
668 | java/io/BufferedOutputStream.java \ | |
669 | java/io/BufferedReader.java \ | |
670 | java/io/BufferedWriter.java \ | |
671 | java/io/ByteArrayInputStream.java \ | |
672 | java/io/ByteArrayOutputStream.java \ | |
673 | java/io/CharArrayReader.java \ | |
674 | java/io/CharArrayWriter.java \ | |
675 | java/io/CharConversionException.java \ | |
676 | java/io/DataInput.java \ | |
677 | java/io/DataInputStream.java \ | |
678 | java/io/DataOutput.java \ | |
679 | java/io/DataOutputStream.java \ | |
680 | java/io/EOFException.java \ | |
681 | java/io/File.java \ | |
ee9dd372 TT |
682 | java/io/FileInputStream.java \ |
683 | java/io/FileNotFoundException.java \ | |
684 | java/io/FileOutputStream.java \ | |
685 | java/io/FileReader.java \ | |
686 | java/io/FileWriter.java \ | |
687 | java/io/FilenameFilter.java \ | |
688 | java/io/FilterInputStream.java \ | |
689 | java/io/FilterOutputStream.java \ | |
690 | java/io/FilterReader.java \ | |
691 | java/io/FilterWriter.java \ | |
692 | java/io/IOException.java \ | |
693 | java/io/InputStream.java \ | |
694 | java/io/InputStreamReader.java \ | |
695 | java/io/InterruptedIOException.java \ | |
696 | java/io/LineNumberInputStream.java \ | |
697 | java/io/LineNumberReader.java \ | |
698 | java/io/OutputStream.java \ | |
699 | java/io/OutputStreamWriter.java \ | |
6c80c45e TT |
700 | java/io/Externalizable.java \ |
701 | java/io/FileDescriptor.java \ | |
ee9dd372 TT |
702 | java/io/PipedOutputStream.java \ |
703 | java/io/PipedReader.java \ | |
704 | java/io/PipedWriter.java \ | |
705 | java/io/PrintStream.java \ | |
706 | java/io/PrintWriter.java \ | |
707 | java/io/PushbackInputStream.java \ | |
708 | java/io/PushbackReader.java \ | |
709 | java/io/RandomAccessFile.java \ | |
710 | java/io/Reader.java \ | |
711 | java/io/SequenceInputStream.java \ | |
712 | java/io/Serializable.java \ | |
713 | java/io/StreamTokenizer.java \ | |
714 | java/io/StringBufferInputStream.java \ | |
715 | java/io/StringReader.java \ | |
716 | java/io/StringWriter.java \ | |
717 | java/io/SyncFailedException.java \ | |
718 | java/io/UTFDataFormatException.java \ | |
719 | java/io/UnsupportedEncodingException.java \ | |
720 | java/io/Writer.java \ | |
6c80c45e TT |
721 | java/io/ObjectStreamException.java \ |
722 | java/io/OptionalDataException.java \ | |
723 | java/io/StreamCorruptedException.java \ | |
724 | java/io/BlockDataException.java \ | |
725 | java/io/InvalidClassException.java \ | |
726 | java/io/InvalidObjectException.java \ | |
727 | java/io/NotActiveException.java \ | |
728 | java/io/NotSerializableException.java \ | |
729 | java/io/ObjectInput.java \ | |
730 | java/io/ObjectInputStream.java \ | |
731 | java/io/ObjectInputValidation.java \ | |
732 | java/io/ObjectOutput.java \ | |
733 | java/io/ObjectOutputStream.java \ | |
734 | java/io/ObjectStreamClass.java \ | |
735 | java/io/ObjectStreamConstants.java \ | |
736 | java/io/ObjectStreamField.java \ | |
737 | java/io/Replaceable.java \ | |
738 | java/io/Resolvable.java \ | |
739 | java/io/SerializablePermission.java \ | |
740 | java/io/WriteAbortedException.java \ | |
741 | java/io/PipedInputStream.java \ | |
742 | java/lang/reflect/Constructor.java \ | |
743 | java/lang/reflect/AccessibleObject.java \ | |
744 | java/lang/reflect/Array.java \ | |
745 | java/lang/reflect/Method.java \ | |
746 | java/lang/reflect/Field.java \ | |
747 | java/lang/reflect/InvocationTargetException.java \ | |
748 | java/lang/reflect/Member.java \ | |
749 | java/lang/reflect/Modifier.java \ | |
ee9dd372 TT |
750 | java/lang/AbstractMethodError.java \ |
751 | java/lang/ArithmeticException.java \ | |
752 | java/lang/ArrayIndexOutOfBoundsException.java \ | |
753 | java/lang/ArrayStoreException.java \ | |
754 | java/lang/Boolean.java \ | |
755 | java/lang/Byte.java \ | |
756 | java/lang/Character.java \ | |
757 | java/lang/ClassCastException.java \ | |
758 | java/lang/ClassCircularityError.java \ | |
759 | java/lang/ClassFormatError.java \ | |
760 | java/lang/ClassLoader.java \ | |
761 | java/lang/ClassNotFoundException.java \ | |
762 | java/lang/CloneNotSupportedException.java \ | |
763 | java/lang/Cloneable.java \ | |
764 | java/lang/Comparable.java \ | |
765 | java/lang/Compiler.java \ | |
766 | java/lang/Double.java \ | |
767 | java/lang/Error.java \ | |
768 | java/lang/Exception.java \ | |
769 | java/lang/ExceptionInInitializerError.java \ | |
ee9dd372 TT |
770 | java/lang/Float.java \ |
771 | java/lang/IllegalAccessError.java \ | |
772 | java/lang/IllegalAccessException.java \ | |
773 | java/lang/IllegalArgumentException.java \ | |
774 | java/lang/IllegalMonitorStateException.java \ | |
775 | java/lang/IllegalStateException.java \ | |
776 | java/lang/IllegalThreadStateException.java \ | |
777 | java/lang/IncompatibleClassChangeError.java \ | |
ee9dd372 | 778 | java/lang/InstantiationError.java \ |
ee9dd372 | 779 | java/lang/Integer.java \ |
6c80c45e TT |
780 | java/lang/IndexOutOfBoundsException.java \ |
781 | java/lang/InstantiationException.java \ | |
ee9dd372 TT |
782 | java/lang/InternalError.java \ |
783 | java/lang/InterruptedException.java \ | |
784 | java/lang/LinkageError.java \ | |
785 | java/lang/Long.java \ | |
786 | java/lang/Math.java \ | |
787 | java/lang/NegativeArraySizeException.java \ | |
788 | java/lang/NoClassDefFoundError.java \ | |
789 | java/lang/NoSuchFieldError.java \ | |
790 | java/lang/NoSuchFieldException.java \ | |
791 | java/lang/NoSuchMethodError.java \ | |
792 | java/lang/NoSuchMethodException.java \ | |
793 | java/lang/NullPointerException.java \ | |
794 | java/lang/Number.java \ | |
795 | java/lang/NumberFormatException.java \ | |
796 | java/lang/OutOfMemoryError.java \ | |
797 | java/lang/Process.java \ | |
798 | java/lang/Runnable.java \ | |
799 | java/lang/Runtime.java \ | |
800 | java/lang/RuntimeException.java \ | |
801 | java/lang/SecurityException.java \ | |
802 | java/lang/SecurityManager.java \ | |
803 | java/lang/Short.java \ | |
804 | java/lang/StackOverflowError.java \ | |
805 | java/lang/String.java \ | |
806 | java/lang/StringBuffer.java \ | |
807 | java/lang/StringIndexOutOfBoundsException.java \ | |
808 | java/lang/System.java \ | |
809 | java/lang/Thread.java \ | |
810 | java/lang/ThreadDeath.java \ | |
811 | java/lang/ThreadGroup.java \ | |
812 | java/lang/Throwable.java \ | |
813 | java/lang/UnknownError.java \ | |
814 | java/lang/UnsatisfiedLinkError.java \ | |
815 | java/lang/UnsupportedOperationException.java \ | |
816 | java/lang/VerifyError.java \ | |
817 | java/lang/VirtualMachineError.java \ | |
818 | java/lang/Void.java \ | |
ee9dd372 TT |
819 | java/net/BindException.java \ |
820 | java/net/ConnectException.java \ | |
821 | java/net/ContentHandler.java \ | |
822 | java/net/ContentHandlerFactory.java \ | |
823 | java/net/FileNameMap.java \ | |
6c80c45e | 824 | java/net/HttpURLConnection.java \ |
ee9dd372 TT |
825 | java/net/InetAddress.java \ |
826 | java/net/MalformedURLException.java \ | |
827 | java/net/NoRouteToHostException.java \ | |
828 | java/net/PlainSocketImpl.java \ | |
829 | java/net/ProtocolException.java \ | |
830 | java/net/ServerSocket.java \ | |
6c80c45e | 831 | java/net/URL.java \ |
ee9dd372 TT |
832 | java/net/Socket.java \ |
833 | java/net/SocketException.java \ | |
834 | java/net/SocketImpl.java \ | |
835 | java/net/SocketImplFactory.java \ | |
ee9dd372 TT |
836 | java/net/URLConnection.java \ |
837 | java/net/URLStreamHandler.java \ | |
838 | java/net/URLStreamHandlerFactory.java \ | |
839 | java/net/UnknownHostException.java \ | |
840 | java/net/UnknownServiceException.java \ | |
6c80c45e TT |
841 | java/net/URLDecoder.java \ |
842 | java/net/URLEncoder.java \ | |
843 | java/net/DatagramPacket.java \ | |
844 | java/net/DatagramSocket.java \ | |
845 | java/net/DatagramSocketImpl.java \ | |
846 | java/net/MulticastSocket.java \ | |
847 | java/net/PlainDatagramSocketImpl.java \ | |
848 | java/net/SocketOptions.java \ | |
849 | java/net/JarURLConnection.java \ | |
850 | java/net/URLClassLoader.java \ | |
851 | java/text/Collator.java \ | |
ee9dd372 TT |
852 | java/text/BreakIterator.java \ |
853 | java/text/CharacterIterator.java \ | |
854 | java/text/ChoiceFormat.java \ | |
855 | java/text/DateFormat.java \ | |
856 | java/text/DateFormatSymbols.java \ | |
857 | java/text/DecimalFormat.java \ | |
858 | java/text/DecimalFormatSymbols.java \ | |
859 | java/text/FieldPosition.java \ | |
860 | java/text/Format.java \ | |
861 | java/text/MessageFormat.java \ | |
862 | java/text/NumberFormat.java \ | |
863 | java/text/ParseException.java \ | |
864 | java/text/ParsePosition.java \ | |
865 | java/text/SimpleDateFormat.java \ | |
866 | java/text/StringCharacterIterator.java \ | |
6c80c45e TT |
867 | java/text/CollationElementIterator.java \ |
868 | java/text/CollationKey.java \ | |
869 | java/text/RuleBasedCollator.java \ | |
870 | java/util/zip/Adler32.java \ | |
871 | java/util/zip/CRC32.java \ | |
872 | java/util/zip/Checksum.java \ | |
873 | java/util/zip/Deflater.java \ | |
874 | java/util/zip/DeflaterOutputStream.java \ | |
875 | java/util/zip/ZipConstants.java \ | |
876 | java/util/zip/ZipEntry.java \ | |
877 | java/util/zip/ZipException.java \ | |
878 | java/util/zip/ZipFile.java \ | |
879 | java/util/zip/ZipOutputStream.java \ | |
880 | java/util/zip/InflaterInputStream.java \ | |
881 | java/util/zip/ZipInputStream.java \ | |
882 | java/util/zip/DataFormatException.java \ | |
883 | java/util/zip/CheckedInputStream.java \ | |
884 | java/util/zip/CheckedOutputStream.java \ | |
885 | java/util/zip/Inflater.java \ | |
886 | java/util/zip/GZIPInputStream.java \ | |
887 | java/util/zip/GZIPOutputStream.java \ | |
888 | java/util/jar/JarEntry.java \ | |
889 | java/util/jar/JarFile.java \ | |
890 | java/util/jar/JarInputStream.java \ | |
ee9dd372 TT |
891 | java/util/BitSet.java \ |
892 | java/util/Calendar.java \ | |
893 | java/util/ConcurrentModificationException.java \ | |
894 | java/util/Date.java \ | |
895 | java/util/Dictionary.java \ | |
896 | java/util/EmptyStackException.java \ | |
897 | java/util/Enumeration.java \ | |
898 | java/util/EventListener.java \ | |
899 | java/util/EventObject.java \ | |
900 | java/util/GregorianCalendar.java \ | |
901 | java/util/Hashtable.java \ | |
902 | java/util/ListResourceBundle.java \ | |
903 | java/util/Locale.java \ | |
904 | java/util/MissingResourceException.java \ | |
905 | java/util/NoSuchElementException.java \ | |
906 | java/util/Observable.java \ | |
907 | java/util/Observer.java \ | |
908 | java/util/Properties.java \ | |
909 | java/util/Random.java \ | |
910 | java/util/ResourceBundle.java \ | |
911 | java/util/SimpleTimeZone.java \ | |
912 | java/util/Stack.java \ | |
913 | java/util/StringTokenizer.java \ | |
914 | java/util/TimeZone.java \ | |
915 | java/util/TooManyListenersException.java \ | |
916 | java/util/Vector.java \ | |
6c80c45e TT |
917 | java/util/List.java \ |
918 | java/util/Collection.java \ | |
919 | java/util/Comparator.java \ | |
920 | java/util/Iterator.java \ | |
921 | java/util/PropertyResourceBundle.java \ | |
922 | java/util/Arrays.java \ | |
923 | java/util/ListIterator.java \ | |
924 | java/util/AbstractCollection.java \ | |
925 | java/util/AbstractList.java \ | |
926 | java/security/MessageDigest.java \ | |
927 | java/security/NoSuchAlgorithmException.java \ | |
928 | java/security/SecureClassLoader.java \ | |
929 | java/security/interfaces/DSAKey.java \ | |
930 | java/security/interfaces/DSAParams.java \ | |
931 | java/security/interfaces/DSAPrivateKey.java \ | |
932 | java/security/interfaces/DSAPublicKey.java \ | |
933 | java/security/interfaces/RSAPrivateCrtKey.java \ | |
934 | java/security/interfaces/RSAPrivateKey.java \ | |
935 | java/security/interfaces/RSAPublicKey.java \ | |
936 | java/security/AlgorithmParameterGeneratorSpi.java \ | |
937 | java/security/DigestException.java \ | |
938 | java/security/GeneralSecurityException.java \ | |
939 | java/security/InvalidAlgorithmParameterException.java \ | |
940 | java/security/InvalidKeyException.java \ | |
941 | java/security/InvalidParameterException.java \ | |
942 | java/security/Key.java \ | |
943 | java/security/KeyException.java \ | |
944 | java/security/KeyPair.java \ | |
945 | java/security/KeyPairGenerator.java \ | |
946 | java/security/KeyPairGeneratorSpi.java \ | |
947 | java/security/NoSuchProviderException.java \ | |
d9984f96 | 948 | java/security/Principal.java \ |
6c80c45e TT |
949 | java/security/PrivateKey.java \ |
950 | java/security/Provider.java \ | |
951 | java/security/PublicKey.java \ | |
952 | java/security/SecureRandom.java \ | |
953 | java/security/Security.java \ | |
954 | java/security/Signature.java \ | |
955 | java/security/SignatureException.java \ | |
956 | java/security/spec/AlgorithmParameterSpec.java \ | |
957 | java/security/spec/InvalidKeySpecException.java \ | |
958 | java/security/spec/InvalidParameterSpecException.java \ | |
959 | java/security/spec/KeySpec.java \ | |
960 | java/security/spec/RSAPrivateCrtKeySpec.java \ | |
961 | java/security/spec/RSAPrivateKeySpec.java \ | |
962 | java/security/spec/RSAPublicKeySpec.java \ | |
963 | java/security/BasicPermission.java \ | |
964 | java/security/Guard.java \ | |
965 | java/security/DigestOutputStream.java \ | |
966 | java/security/Permission.java \ | |
967 | java/security/PermissionCollection.java \ | |
968 | java/math/BigDecimal.java \ | |
969 | java/math/BigInteger.java \ | |
970 | java/sql/CallableStatement.java \ | |
971 | java/sql/Connection.java \ | |
972 | java/sql/DataTruncation.java \ | |
973 | java/sql/DatabaseMetaData.java \ | |
974 | java/sql/Date.java \ | |
975 | java/sql/Driver.java \ | |
976 | java/sql/DriverManager.java \ | |
977 | java/sql/DriverPropertyInfo.java \ | |
978 | java/sql/PreparedStatement.java \ | |
979 | java/sql/ResultSet.java \ | |
980 | java/sql/ResultSetMetaData.java \ | |
981 | java/sql/SQLException.java \ | |
982 | java/sql/SQLWarning.java \ | |
983 | java/sql/Statement.java \ | |
984 | java/sql/Time.java \ | |
985 | java/sql/Timestamp.java \ | |
986 | java/sql/Types.java \ | |
987 | java/beans/beancontext/BeanContext.java \ | |
988 | java/beans/beancontext/BeanContextChild.java \ | |
989 | java/beans/beancontext/BeanContextChildComponentProxy.java \ | |
990 | java/beans/beancontext/BeanContextChildSupport.java \ | |
991 | java/beans/beancontext/BeanContextContainerProxy.java \ | |
992 | java/beans/beancontext/BeanContextEvent.java \ | |
993 | java/beans/beancontext/BeanContextMembershipEvent.java \ | |
994 | java/beans/beancontext/BeanContextMembershipListener.java \ | |
995 | java/beans/beancontext/BeanContextProxy.java \ | |
996 | java/beans/beancontext/BeanContextServiceAvailableEvent.java \ | |
997 | java/beans/beancontext/BeanContextServiceProvider.java \ | |
998 | java/beans/beancontext/BeanContextServiceProviderBeanInfo.java \ | |
999 | java/beans/beancontext/BeanContextServiceRevokedEvent.java \ | |
1000 | java/beans/beancontext/BeanContextServiceRevokedListener.java \ | |
1001 | java/beans/beancontext/BeanContextServices.java \ | |
1002 | java/beans/beancontext/BeanContextServicesListener.java \ | |
1003 | java/beans/BeanDescriptor.java \ | |
1004 | java/beans/BeanInfo.java \ | |
1005 | java/beans/Beans.java \ | |
1006 | java/beans/Customizer.java \ | |
1007 | java/beans/DesignMode.java \ | |
1008 | java/beans/EventSetDescriptor.java \ | |
1009 | java/beans/FeatureDescriptor.java \ | |
1010 | java/beans/IndexedPropertyDescriptor.java \ | |
1011 | java/beans/IntrospectionException.java \ | |
1012 | java/beans/Introspector.java \ | |
1013 | java/beans/MethodDescriptor.java \ | |
1014 | java/beans/ParameterDescriptor.java \ | |
1015 | java/beans/PropertyChangeEvent.java \ | |
1016 | java/beans/PropertyChangeListener.java \ | |
1017 | java/beans/PropertyChangeSupport.java \ | |
1018 | java/beans/PropertyDescriptor.java \ | |
1019 | java/beans/PropertyEditor.java \ | |
1020 | java/beans/PropertyEditorManager.java \ | |
1021 | java/beans/PropertyEditorSupport.java \ | |
1022 | java/beans/PropertyVetoException.java \ | |
1023 | java/beans/SimpleBeanInfo.java \ | |
1024 | java/beans/VetoableChangeListener.java \ | |
1025 | java/beans/VetoableChangeSupport.java \ | |
1026 | java/beans/Visibility.java | |
ee9dd372 TT |
1027 | |
1028 | java_source_files = $(ordinary_java_source_files) $(special_java_source_files) | |
1029 | ||
1030 | ## Math library: C, not C++ | |
1031 | c_source_files = \ | |
1032 | java/lang/dtoa.c java/lang/k_rem_pio2.c java/lang/s_tan.c \ | |
1033 | java/lang/e_acos.c java/lang/k_sin.c java/lang/strtod.c \ | |
1034 | java/lang/e_asin.c java/lang/k_tan.c java/lang/w_acos.c \ | |
1035 | java/lang/e_atan2.c java/lang/mprec.c java/lang/w_asin.c \ | |
1036 | java/lang/e_exp.c java/lang/s_atan.c java/lang/w_atan2.c \ | |
1037 | java/lang/e_fmod.c java/lang/s_ceil.c java/lang/w_exp.c \ | |
1038 | java/lang/e_log.c java/lang/s_copysign.c java/lang/w_fmod.c \ | |
1039 | java/lang/e_pow.c java/lang/s_cos.c java/lang/w_log.c \ | |
1040 | java/lang/e_rem_pio2.c java/lang/s_fabs.c java/lang/w_pow.c \ | |
1041 | java/lang/e_remainder.c java/lang/s_floor.c java/lang/w_remainder.c \ | |
1042 | java/lang/e_scalb.c java/lang/s_rint.c java/lang/w_sqrt.c \ | |
1043 | java/lang/e_sqrt.c java/lang/s_scalbn.c java/lang/sf_rint.c \ | |
1044 | java/lang/k_cos.c java/lang/s_sin.c | |
1045 | ||
775de547 PB |
1046 | #java/awt/natToolkit.cc |
1047 | ||
ee9dd372 | 1048 | ## This lists all the C++ source files in subdirectories. |
a0e894a8 | 1049 | nat_source_files = \ |
ee9dd372 | 1050 | gnu/gcj/convert/JIS0208_to_Unicode.cc \ |
a0e894a8 TT |
1051 | gnu/gcj/convert/JIS0212_to_Unicode.cc \ |
1052 | gnu/gcj/convert/Unicode_to_JIS.cc \ | |
946efde1 | 1053 | gnu/gcj/convert/natIconv.cc \ |
a0e894a8 TT |
1054 | gnu/gcj/convert/natInput_EUCJIS.cc \ |
1055 | gnu/gcj/convert/natInput_SJIS.cc \ | |
1056 | gnu/gcj/convert/natOutput_EUCJIS.cc \ | |
1057 | gnu/gcj/convert/natOutput_SJIS.cc \ | |
6c80c45e TT |
1058 | gnu/gcj/io/natSimpleSHSStream.cc \ |
1059 | gnu/gcj/io/shs.cc \ | |
aaf0766e | 1060 | gnu/gcj/jni/natNativeThread.cc \ |
6cc96432 | 1061 | gnu/gcj/runtime/natFirstThread.cc \ |
a0e894a8 TT |
1062 | java/io/natFile.cc \ |
1063 | java/io/natFileDescriptor.cc \ | |
6c80c45e TT |
1064 | java/io/natObjectInputStream.cc \ |
1065 | java/io/natObjectOutputStream.cc \ | |
a0e894a8 TT |
1066 | java/lang/natCharacter.cc \ |
1067 | java/lang/natClass.cc \ | |
58eb6e7c | 1068 | java/lang/natClassLoader.cc \ |
42962a48 | 1069 | java/lang/natConcreteProcess.cc \ |
a0e894a8 | 1070 | java/lang/natDouble.cc \ |
a0e894a8 TT |
1071 | java/lang/natFloat.cc \ |
1072 | java/lang/natMath.cc \ | |
1073 | java/lang/natObject.cc \ | |
1074 | java/lang/natRuntime.cc \ | |
1075 | java/lang/natString.cc \ | |
1076 | java/lang/natSystem.cc \ | |
1077 | java/lang/natThread.cc \ | |
283a159f | 1078 | java/lang/natThrowable.cc \ |
a0e894a8 | 1079 | java/lang/reflect/natArray.cc \ |
0f918fea | 1080 | java/lang/reflect/natConstructor.cc \ |
a0e894a8 TT |
1081 | java/lang/reflect/natField.cc \ |
1082 | java/lang/reflect/natMethod.cc \ | |
1083 | java/net/natInetAddress.cc \ | |
39b1a058 | 1084 | java/net/natPlainDatagramSocketImpl.cc \ |
a0e894a8 TT |
1085 | java/net/natPlainSocketImpl.cc \ |
1086 | java/text/natCollator.cc \ | |
0ffac832 TT |
1087 | java/util/natGregorianCalendar.cc \ |
1088 | java/util/zip/natDeflater.cc \ | |
1089 | java/util/zip/natInflater.cc | |
ee9dd372 TT |
1090 | |
1091 | ## ################################################################ | |
1092 | ||
1093 | ## | |
1094 | ## This section is for make and multilib madness. | |
1095 | ## | |
1096 | ||
1097 | # Work around what appears to be a GNU make bug handling MAKEFLAGS | |
1098 | # values defined in terms of make variables, as is the case for CC and | |
1099 | # friends when we are called from the top level Makefile. | |
1100 | AM_MAKEFLAGS = \ | |
1101 | "AR_FLAGS=$(AR_FLAGS)" \ | |
1102 | "CC_FOR_BUILD=$(CC_FOR_BUILD)" \ | |
1103 | "CFLAGS=$(CFLAGS)" \ | |
1104 | "CXXFLAGS=$(CXXFLAGS)" \ | |
1105 | "CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \ | |
1106 | "CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" \ | |
1107 | "INSTALL=$(INSTALL)" \ | |
1108 | "INSTALL_DATA=$(INSTALL_DATA)" \ | |
1109 | "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \ | |
1110 | "INSTALL_SCRIPT=$(INSTALL_SCRIPT)" \ | |
4ac19b2c | 1111 | "JC1FLAGS=$(JC1FLAGS)" \ |
ee9dd372 TT |
1112 | "LDFLAGS=$(LDFLAGS)" \ |
1113 | "LIBCFLAGS=$(LIBCFLAGS)" \ | |
1114 | "LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" \ | |
1115 | "MAKE=$(MAKE)" \ | |
1116 | "MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" \ | |
1117 | "PICFLAG=$(PICFLAG)" \ | |
1118 | "PICFLAG_FOR_TARGET=$(PICFLAG_FOR_TARGET)" \ | |
1119 | "SHELL=$(SHELL)" \ | |
1120 | "exec_prefix=$(exec_prefix)" \ | |
1121 | "infodir=$(infodir)" \ | |
1122 | "libdir=$(libdir)" \ | |
1123 | "prefix=$(prefix)" \ | |
1124 | "AR=$(AR)" \ | |
1125 | "AS=$(AS)" \ | |
1126 | "CC=$(CC)" \ | |
1127 | "CXX=$(CXX)" \ | |
1128 | "LD=$(LD)" \ | |
1129 | "LIBCFLAGS=$(LIBCFLAGS)" \ | |
1130 | "NM=$(NM)" \ | |
1131 | "PICFLAG=$(PICFLAG)" \ | |
1132 | "RANLIB=$(RANLIB)" \ | |
1133 | "DESTDIR=$(DESTDIR)" | |
1134 | ||
1135 | CONFIG_STATUS_DEPENDENCIES = $(libgcj_basedir)/configure.host | |
1136 | ||
1137 | MAKEOVERRIDES= | |
1138 | ||
1139 | # Multilib support variables. | |
1140 | MULTISRCTOP = | |
1141 | MULTIBUILDTOP = | |
1142 | MULTIDIRS = | |
1143 | MULTISUBDIR = | |
1144 | MULTIDO = true | |
1145 | MULTICLEAN = true | |
1146 | ||
1147 | # Multilib support. | |
1148 | .PHONY: all-multi mostlyclean-multi clean-multi distclean-multi \ | |
1149 | maintainer-clean-multi | |
1150 | ||
1151 | all-recursive: all-multi | |
1152 | install-recursive: install-multi | |
1153 | mostlyclean-recursive: mostlyclean-multi | |
1154 | clean-recursive: clean-multi | |
1155 | distclean-recursive: distclean-multi | |
1156 | maintainer-clean-recursive: maintainer-clean-multi | |
1157 | ||
1158 | all-multi: | |
1159 | $(MULTIDO) $(AM_MAKEFLAGS) DO=all multi-do | |
1160 | install-multi: | |
1161 | $(MULTIDO) $(AM_MAKEFLAGS) DO=install multi-do | |
1162 | mostlyclean-multi: | |
1163 | $(MULTICLEAN) $(AM_MAKEFLAGS) DO=mostlyclean multi-clean | |
1164 | clean-multi: | |
1165 | $(MULTICLEAN) $(AM_MAKEFLAGS) DO=clean multi-clean | |
1166 | distclean-multi: | |
1167 | $(MULTICLEAN) $(AM_MAKEFLAGS) DO=distclean multi-clean | |
1168 | maintainer-clean-multi: | |
1169 | $(MULTICLEAN) $(AM_MAKEFLAGS) DO=maintainer-clean multi-clean |