OSDN Git Service

libjava/classpath/ChangeLog.gcj:
[pf3gnuchains/gcc-fork.git] / libjava / classpath / lib / Makefile.am
1 JAVA_DEPEND = java.dep
2
3 ## silently try to include these, if it fails gnu make
4 ## will remake these 'makefiles' with the rules given in
5 ## this file and restart the make process again
6 sinclude $(JAVA_DEPEND)
7
8 propertyfiles :=  $(shell cd $(top_srcdir)/resource && $(FIND) gnu java javax org -name \*\.properties -print)
9 cssfiles := $(shell cd $(top_srcdir) && $(FIND) gnu java javax org -name \*\.css -print)
10 ## GCJ LOCAL: prune .svn directories
11 metafiles :=  $(shell cd $(top_srcdir)/resource && $(FIND) META-INF -name CVS -prune -o -name \*\.in -prune -o -type f -print | fgrep -v .svn)
12 ## END GCJ LOCAL
13 iconfiles :=  $(shell cd $(top_srcdir) && $(FIND) gnu/javax/swing/plaf/gtk/icons -name *.png -type f -print)
14
15 compile_classpath = $(vm_classes):$(top_srcdir):$(top_srcdir)/external/w3c_dom:$(top_srcdir)/external/sax:$(top_srcdir)/external/relaxngDatatype:$(top_srcdir)/external/jsr166:.:$(USER_CLASSLIB):$(PATH_TO_ESCHER)
16
17 # handling source to bytecode compiler programs like gcj, jikes  and kjc
18 if FOUND_GCJ
19 ## See the compile-classes target.
20 ## There's no point in warning, and we always want debug info.
21 ## GCJ LOCAL: use srcdir
22 JCOMPILER = $(GCJ) -C -g -w --encoding=UTF-8 -bootclasspath '' --classpath $(compile_classpath) -d $(srcdir) @classes
23 else
24 if FOUND_JIKES
25 JCOMPILER = $(JIKES) $(JIKESWARNINGS) +F $(JIKESENCODING) -bootclasspath '' -extdirs '' -sourcepath '' --classpath $(compile_classpath) -d . @classes
26 else
27 if FOUND_KJC
28 ## FIXME: from what I can tell, kjc does not support a -encoding option.
29 JCOMPILER = $(KJC) -classpath .:$(USER_CLASSLIB) -d . @classes
30 else
31 if FOUND_ECJ
32 JCOMPILER = $(ECJ) -source 1.4 -encoding UTF-8 -warn:-deprecation,serial,unused -proceedOnError -bootclasspath '' -classpath $(compile_classpath) -d . @classes
33 endif # FOUND_ECJ
34 endif # FOUND_KJC
35 endif # FOUND_GCJ
36 endif # FOUND_JIKES
37
38 JAVAH = $(USER_JAVAH) -jni -classpath .:$(USER_CLASSLIB)
39
40 if CREATE_COLLECTIONS
41 COLLECTIONS = collections.jar
42
43 collections.jar: mkcollections.pl
44         ./mkcollections.pl $(top_srcdir)
45         $(JCOMPILER) `$(FIND) $(COLLECTIONS_PREFIX) -name '*.java' -type f -print`
46         if test "$(FASTJAR)" != ""; then \
47           $(FASTJAR) cf $@ $(COLLECTIONS_PREFIX); \
48         else \
49           echo "fastjar not found" > collections.jar; \
50         fi
51 endif # CREATE_COLLECTIONS
52
53 if INSTALL_GLIBJ_ZIP
54
55 ## GCJ LOCAL: Comment this out so we don't make an empty
56 ## '$(glibjdir)' in the install tree.
57 ## glibj_DATA = glibj.zip
58
59 endif # INSTALL_GLIBJ_ZIP
60
61 if BUILD_CLASS_FILES
62 noinst_DATA = genclasses compile-classes resources
63 endif # BUILD_CLASS_FILES
64
65 if INSTALL_CLASS_FILES
66
67 install-data-local: genclasses compile-classes
68         -$(top_srcdir)/mkinstalldirs $(DESTDIR)$(pkgdatadir)
69         cp -R gnu $(DESTDIR)$(pkgdatadir)
70         cp -R java $(DESTDIR)$(pkgdatadir)
71         cp -R javax $(DESTDIR)$(pkgdatadir)
72         cp -R org $(DESTDIR)$(pkgdatadir)
73         cp -R sun $(DESTDIR)$(pkgdatadir)
74         cp -R META-INF $(DESTDIR)$(pkgdatadir)
75
76 # FIXME - should mimic doc/api/Makefile.am instead...
77 uninstall-local:
78         rm -rf $(DESTDIR)$(pkgdatadir)/gnu
79         rm -rf $(DESTDIR)$(pkgdatadir)/java
80         rm -rf $(DESTDIR)$(pkgdatadir)/javax
81         rm -rf $(DESTDIR)$(pkgdatadir)/org
82         rm -rf $(DESTDIR)$(pkgdatadir)/sun
83         rm -rf $(DESTDIR)$(pkgdatadir)/META-INF
84
85 endif # INSTALL_CLASS_FILES
86
87 .PHONY: genclasses
88
89 if USE_PREBUILT_GLIBJ_ZIP
90
91 glibj.zip:
92         cp $(PATH_TO_GLIBJ_ZIP) .
93
94 else
95
96 glibj.zip: classes compile-classes resources
97         if test "$(ZIP)" != ""; then $(ZIP) -r -D glibj.zip gnu java javax org sun META-INF > /dev/null; fi
98         if test "$(FASTJAR)" != ""; then $(FASTJAR) cf glibj.zip gnu java javax org sun META-INF; fi
99
100 endif # USE_PREBUILT_GLIBJ_ZIP
101
102 resources: copy-vmresources.sh
103         @list='$(propertyfiles)'; for p in $$list; do \
104           dirname=`dirname $$p`; \
105           if ! test -d "$$dirname"; then mkdir -p "$$dirname"; fi; \
106           cp $(top_srcdir)/resource/$$p $$p; \
107         done
108         @list='$(cssfiles)'; for p in $$list; do \
109           dirname=`dirname $$p`; \
110           if ! test -d "$$dirname"; then mkdir -p "$$dirname"; fi; \
111           cp $(top_srcdir)/$$p $$p; \
112         done
113         @list='$(metafiles)'; for p in $$list; do \
114           dirname=`dirname $$p`; \
115           if ! test -d "$$dirname"; then mkdir -p "$$dirname"; fi; \
116           cp $(top_srcdir)/resource/$$p $$p; \
117         done
118         @$(SHELL) ./copy-vmresources.sh
119         @list='$(iconfiles)'; for p in $$list; do \
120           dirname=`dirname $$p`; \
121           if ! test -d "$$dirname"; then mkdir -p "$$dirname"; fi; \
122           cp $(top_srcdir)/$$p $$p; \
123         done
124         touch resources
125
126 classes: genclasses
127
128 $(top_builddir)/gnu/java/locale/LocaleData.java: $(top_srcdir)/scripts/generate-locale-list.sh 
129         mkdir -p $(top_builddir)/gnu/java/locale
130         $(top_srcdir)/scripts/generate-locale-list.sh > $(top_builddir)/gnu/java/locale/LocaleData.java
131
132 genclasses: gen-classlist.sh standard.omit $(top_builddir)/gnu/java/locale/LocaleData.java gen-xpath-parser
133         top_builddir=$(top_builddir) top_srcdir=$(top_srcdir) $(SHELL) ./gen-classlist.sh standard
134
135 # Only rebuild parsers when explicitly asked to.
136 if REGEN_PARSERS
137
138 gen-xpath-parser: $(top_srcdir)/gnu/xml/xpath/XPathParser.java
139
140 $(top_srcdir)/gnu/xml/xpath/XPathParser.java: $(top_srcdir)/gnu/xml/xpath/XPathParser.y
141         ( cd $(top_srcdir)/gnu/xml/xpath; \
142           $(JAY) XPathParser.y < $(JAY_SKELETON) > XPathParser.java )
143 else
144
145 gen-xpath-parser:
146         true
147
148 endif # REGEN_PARSER
149
150 $(JAVA_DEPEND): genclasses
151
152 # if FOUND_GCJ
153 # ## When building with gcj, we do a recursive make.  We split this rule
154 # ## out specially, rather than simply defining JCOMPILER, so that GNU make
155 # ## will see the recursive make invocation and still allow parallel
156 # ## builds.
157 # compile-classes: classes $(JAVA_SRCS) Makefile
158 #       $(MAKE) -f $(srcdir)/Makefile.gcj \
159 #         GCJ='$(GCJ)' \
160 #         compile_classpath='$(top_builddir):$(compile_classpath)' \
161 #         top_srcdir=$(top_srcdir)
162 #       touch compile-classes
163 # else
164 compile-classes: classes $(JAVA_SRCS) Makefile
165 if JAVA_MAINTAINER_MODE
166         $(JCOMPILER)
167 endif
168         touch compile-classes
169 # endif
170
171 EXTRA_DIST = standard.omit.in mkcollections.pl.in Makefile.gcj split-for-gcj.sh
172 CLEANFILES = compile-classes resources classes \
173         glibj.zip classes.1 classes.2 Makefile.deps \
174         $(top_builddir)/gnu/java/locale/LocaleData.java \
175         $(JAVA_DEPEND)
176 DISTCLEANFILES = standard.omit
177
178 clean-local:
179         -rm -rf gnu
180         -rm -rf java
181         -rm -rf javax
182         -rm -rf org
183         -rm -rf com
184         -rm -rf sun
185         -rm -rf META-INF
186         -rm -rf lists
187
188 dist-hook:
189         mkdir -p $(distdir)
190         cp -pdfR $(top_srcdir)/gnu $(top_srcdir)/java $(top_srcdir)/javax $(top_srcdir)/org $(top_srcdir)/sun $(top_srcdir)/vm $(top_srcdir)/resource $(distdir)/..
191 # Delete not wanted files.
192         $(FIND) $(distdir)/../gnu $(distdir)/../java $(distdir)/../javax $(distdir)/../org $(distdir)/../sun $(distdir)/../vm $(distdir)/../resource -name CVS -print | xargs rm -fr
193         $(FIND) $(distdir)/../gnu $(distdir)/../java $(distdir)/../javax $(distdir)/../org $(distdir)/../sun $(distdir)/../vm $(distdir)/../resource -name .cvsignore -print | xargs rm -f
194         $(FIND) $(distdir)/../gnu $(distdir)/../java $(distdir)/../javax $(distdir)/../org $(distdir)/../sun $(distdir)/../vm -name class-dependencies.conf -print | xargs rm -f
195         rm -f $(distdir)/../gnu/classpath/Configuration.java
196         rm -f $(distdir)/../gnu/java/security/Configuration.java
197         rm -f $(distdir)/../gnu/java/locale/LocaleData.java