OSDN Git Service

libjava/classpath/
[pf3gnuchains/gcc-fork.git] / libjava / classpath / tools / Makefile.am
1 ## Input file for automake to generate the Makefile.in used by configure
2
3 ## GCJ LOCAL: use srcdir to find core classes.
4 GLIBJ_BOOTCLASSPATH='$(top_srcdir)/lib'
5 GLIBJ_CLASSPATH=.:$(srcdir)/asm
6 ## END GCJ LOCAL
7
8 # Setup the compiler to use the GNU Classpath library we just build
9 ## GCJ LOCAL: don't pass $(JAVACFLAGS) -source 1.5 -target 1.5
10 JCOMPILER = $(JAVAC) -g -w --encoding=UTF-8 -bootclasspath $(GLIBJ_BOOTCLASSPATH) -classpath $(GLIBJ_CLASSPATH)
11
12 if CREATE_WRAPPERS
13 bin_SCRIPTS =
14 bin_PROGRAMS = gappletviewer gjarsigner gkeytool \
15         gjar gnative2ascii gserialver gjavah grmiregistry \
16         gtnameserv gorbd grmid grmic
17
18
19 AM_CPPFLAGS = -Wall \
20         -I$(top_srcdir)/include \
21         -DLIBJVM="\"$(libdir)/libjvm\"" \
22         -DTOOLS_ZIP="\"$(TOOLSdir)/$(TOOLS_ZIP)\""
23
24 gappletviewer_SOURCES = toolwrapper.c
25 gappletviewer_CFLAGS = \
26         -DTOOLPACKAGE="\"appletviewer\"" \
27         -DTOOLNAME="\"gappletviewer\""
28
29 gjarsigner_SOURCES = toolwrapper.c
30 gjarsigner_CFLAGS = \
31         -DTOOLPACKAGE="\"jarsigner\"" \
32         -DTOOLNAME="\"gjarsigner\""
33
34 gkeytool_SOURCES = toolwrapper.c
35 gkeytool_CFLAGS = \
36         -DTOOLPACKAGE="\"keytool\"" \
37         -DTOOLNAME="\"gkeytool\""
38
39 gjar_SOURCES = toolwrapper.c
40 gjar_CFLAGS = \
41         -DTOOLPACKAGE="\"jar\"" \
42         -DTOOLNAME="\"gjar\""
43
44 gnative2ascii_SOURCES = toolwrapper.c
45 gnative2ascii_CFLAGS = \
46         -DTOOLPACKAGE="\"native2ascii\"" \
47         -DTOOLNAME="\"gnative2ascii\"" \
48         -DMAINCLASS="\"Native2ASCII\""
49
50 gserialver_SOURCES = toolwrapper.c
51 gserialver_CFLAGS = \
52         -DTOOLPACKAGE="\"serialver\"" \
53         -DTOOLNAME="\"gserialver\"" \
54         -DMAINCLASS="\"SerialVer\""
55
56 grmiregistry_SOURCES = toolwrapper.c
57 grmiregistry_CFLAGS = \
58         -DTOOLPACKAGE="\"rmiregistry\"" \
59         -DTOOLNAME="\"grmiregistry\""
60
61 gtnameserv_SOURCES = toolwrapper.c
62 gtnameserv_CFLAGS = \
63         -DTOOLPACKAGE="\"tnameserv\"" \
64         -DTOOLNAME="\"gtnameserv\""
65
66 gorbd_SOURCES = toolwrapper.c
67 gorbd_CFLAGS = \
68         -DTOOLPACKAGE="\"orbd\"" \
69         -DTOOLNAME="\"gorbd\""
70
71 grmid_SOURCES = toolwrapper.c
72 grmid_CFLAGS = \
73         -DTOOLPACKAGE="\"rmid\"" \
74         -DTOOLNAME="\"grmid\""
75
76 gjavah_SOURCES = toolwrapper.c
77 gjavah_CFLAGS = \
78         -DTOOLPACKAGE="\"javah\"" \
79         -DTOOLNAME="\"gjavah\""
80
81 grmic_SOURCES = toolwrapper.c
82 grmic_CFLAGS = \
83         -DTOOLPACKAGE="\"rmic\"" \
84         -DTOOLNAME="\"grmic\""
85
86 else
87 ## GCJ LOCAL: do not install these.
88 noinst_SCRIPTS = gappletviewer gjarsigner gkeytool \
89         gjar gnative2ascii gserialver gjavah grmiregistry \
90         gtnameserv gorbd grmid grmic
91 bin_PROGRAMS =
92 ## FIXME: remove these unneeded dependency lines once we can
93 ## require Automake 1.11.
94 gappletviewer: gappletviewer.in
95 gjarsigner: gjarsigner.in
96 gkeytool: gkeytool.in
97 gjar: gjar.in
98 gnative2ascii: gnative2ascii.in
99 gserialver: gserialver.in
100 gjavah: gjavah.in
101 grmiregistry: grmiregistry.in
102 gtnameserv: gtnameserv.in
103 gorbd: gorbd.in
104 grmid: grmid.in
105 grmic: grmic.in
106 endif
107 EXTRA_DIST = toolwrapper.c gappletviewer.in gjarsigner.in gkeytool.in \
108         gjar.in gnative2ascii.in gserialver.in gjavah.in grmiregistry.in \
109         gtnameserv.in gorbd.in grmid.in grmic.in
110
111 # All our example java source files
112 TOOLS_JAVA_FILES = $(srcdir)/gnu/classpath/tools/*/*.java \
113         $(srcdir)/com/sun/javadoc/*.java \
114         $(srcdir)/com/sun/tools/doclets/*.java \
115         $(srcdir)/com/sun/tools/javac/*.java \
116         $(srcdir)/com/sun/tools/javah/*.java \
117         $(srcdir)/sun/rmi/rmic/*.java \
118         $(srcdir)/external/asm/org/objectweb/asm/*.java \
119         $(srcdir)/external/asm/org/objectweb/asm/attrs/*.java \
120         $(srcdir)/external/asm/org/objectweb/asm/commons/*.java \
121         $(srcdir)/external/asm/org/objectweb/asm/optimizer/*.java \
122         $(srcdir)/external/asm/org/objectweb/asm/signature/*.java \
123         $(srcdir)/external/asm/org/objectweb/asm/tree/*.java \
124         $(srcdir)/external/asm/org/objectweb/asm/tree/analysis/*.java \
125         $(srcdir)/external/asm/org/objectweb/asm/util/*.java \
126         $(srcdir)/external/asm/org/objectweb/asm/util/attrs/*.java \
127         $(srcdir)/external/asm/org/objectweb/asm/xml/*.java
128
129 # Properties files that must be included in the generated zip file.
130 PROPERTY_FILES = $(srcdir)/external/asm/org/objectweb/asm/optimizer/shrink.properties \
131         $(srcdir)/resource/com/sun/tools/javac/messages.properties \
132         $(srcdir)/resource/gnu/classpath/tools/jar/messages.properties \
133         $(srcdir)/resource/gnu/classpath/tools/orbd/messages.properties \
134         $(srcdir)/resource/gnu/classpath/tools/rmic/messages.properties \
135         $(srcdir)/resource/gnu/classpath/tools/rmid/messages.properties \
136         $(srcdir)/resource/gnu/classpath/tools/serialver/messages.properties \
137         $(srcdir)/resource/gnu/classpath/tools/keytool/messages.properties \
138         $(srcdir)/resource/gnu/classpath/tools/native2ascii/messages.properties \
139         $(srcdir)/resource/gnu/classpath/tools/appletviewer/messages.properties \
140         $(srcdir)/resource/gnu/classpath/tools/common/Messages.properties \
141         $(srcdir)/resource/gnu/classpath/tools/getopt/Messages.properties \
142         $(srcdir)/resource/gnu/classpath/tools/tnameserv/messages.properties \
143         $(srcdir)/resource/gnu/classpath/tools/jarsigner/messages.properties \
144         $(srcdir)/resource/gnu/classpath/tools/rmiregistry/messages.properties \
145         $(srcdir)/resource/sun/rmi/rmic/messages.properties
146
147 # RMIC templates that must be included in the generated zip file.
148 RMIC_TEMPLATES = $(srcdir)/resource/gnu/classpath/tools/rmic/templates/*.jav
149
150 # The zip files with classes we want to produce.
151 TOOLS_ZIP = tools.zip
152
153 # Extra objects that will not exist until configure-time
154 BUILT_SOURCES = $(TOOLS_ZIP)
155
156 # All the files we find "interesting"
157 ALL_TOOLS_FILES = $(TOOLS_JAVA_FILES) $(RMIC_TEMPLATES) $(PROPERTY_FILES)
158
159 # Some architecture independent data to be installed.
160 # GCJ LOCAL: do not install this.
161 noinst_DATA = $(TOOLS_ZIP)
162
163 # Where we want these data files installed.
164 TOOLSdir = $(pkgdatadir)
165
166 # Make sure everything is included in the distribution.
167 dist-hook:
168         srcdir_cnt=`echo $(srcdir) | wc -c`; \
169         for file in $(ALL_TOOLS_FILES); do \
170           f=`echo $$file | cut -c$$srcdir_cnt-`; \
171           fdir=`dirname $$f`; \
172           if test ! -d $(distdir)/$$fdir; then \
173             echo "$(makeinstalldirs) $(distdir)/$$fdir"; \
174             $(mkinstalldirs) $(distdir)/$$fdir; \
175           fi; \
176           echo "cp -p $$file $(distdir)/$$f"; \
177           cp -p $$file $(distdir)/$$f; \
178         done
179
180 # To generate the example zip just depend on the sources and ignore
181 # the class files. Always regenerate all .class files and remove them
182 # immediately.  And copy the template files we use to the classes dir
183 # so they get also included.
184 $(TOOLS_ZIP): $(ALL_TOOLS_FILES)
185 ## GCJ LOCAL: put classes in srcdir
186 ##      @rm -rf classes asm
187 ##      mkdir classes asm
188         find $(srcdir)/external/asm -name '*.java' -print > asm.lst
189         find $(srcdir)/gnu/classpath/tools \
190              $(srcdir)/com/sun/javadoc \
191              $(srcdir)/com/sun/tools/doclets \
192              $(srcdir)/com/sun/tools/javac \
193              $(srcdir)/com/sun/tools/javah \
194              $(srcdir)/sun/rmi/rmic \
195              -name '*.java' -print > classes.lst
196         if [ -f $(top_builddir)/../vm-tools-packages ]; then \
197             : > vm-tools.lst; \
198             for pkg in `cat $(top_builddir)/../vm-tools-packages`; do \
199               $(FIND) $(top_srcdir)/../$$pkg -follow -name '*.java' -print >> vm-tools.lst; \
200             done \
201         else \
202             echo -n > vm-tools.lst; \
203         fi
204         cat classes.lst asm.lst vm-tools.lst > all-classes.lst
205 if JAVA_MAINTAINER_MODE
206 ## Compile ASM separately as it is latin-1 encoded.
207         AC=`echo $(JCOMPILER) | sed -e 's/UTF-8/ISO-8859-1/g'`; \
208           $$AC -g -w -d $(srcdir)/asm @asm.lst
209         $(JCOMPILER) -g -w -d $(srcdir)/classes @classes.lst @vm-tools.lst
210 ## Copy over tools resource files.
211         @list=`cd $(srcdir)/resource && find gnu/classpath/tools com/sun/tools/javac \
212                sun/rmi/rmic -name \*.properties -print -o -name \*.jav -print`; \
213         for p in $$list; do \
214           dirname=classes/`dirname $$p`; \
215           if ! test -d "$$dirname"; then mkdir -p "$$dirname"; fi; \
216           echo "  cp $(srcdir)resource/$$p classes/$$p"; \
217           cp $(srcdir)/resource/$$p classes/$$p; \
218         done
219 endif
220 ## Copy over rmic template files.
221         @list=`cd $(srcdir) && find gnu/classpath/tools -name \*.jav -print`; \
222         for p in $$list; do \
223           dirname=classes/`dirname $$p`; \
224           if ! test -d "$$dirname"; then mkdir -p "$$dirname"; fi; \
225           echo "  cp $(srcdir)/$$p classes/$$p"; \
226           cp $(srcdir)/$$p classes/$$p; \
227         done
228         cp -pR $(srcdir)/asm .
229         cp -pR $(srcdir)/classes .
230 ## END GCJ LOCAL
231 ## First add classpath tools stuff.
232         (cd classes; \
233         if test "$(ZIP)" != ""; then $(ZIP) -r ../$(TOOLS_ZIP) .; fi; \
234         if test "$(FASTJAR)" != ""; then "$(FASTJAR)" cf ../$(TOOLS_ZIP) .; fi; \
235         cd ..)
236 ## Now add ASM classes.
237         (cd asm; \
238         if test "$(ZIP)" != ""; then $(ZIP) -u -r ../$(TOOLS_ZIP) .; fi; \
239         if test "$(FASTJAR)" != ""; then "$(FASTJAR)" uf ../$(TOOLS_ZIP) .; fi; \
240         cd ..)
241         rm -rf asm classes classes.lst asm.lst
242
243 # Zip file be gone! (and make sure the classes are gone too)
244 clean-local:
245         rm -rf $(TOOLS_ZIP) classes classes.lst asm asm.lst all-classes.lst
246
247 # FIXME: remove this when GNU Classpath includes a bootstrap VM.
248 installcheck-binSCRIPTS:
249         :