OSDN Git Service

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