OSDN Git Service

libjava/ChangeLog:
[pf3gnuchains/gcc-fork.git] / libjava / classpath / tools / Makefile.am
index 81953bc..01c07ee 100755 (executable)
@@ -2,19 +2,35 @@
 
 ## GCJ LOCAL: use srcdir to find core classes.
 GLIBJ_BOOTCLASSPATH='$(top_srcdir)/lib'
-GLIBJ_CLASSPATH=.:$(srcdir)/asm
+GLIBJ_CLASSPATH=.:$(srcdir)/asm:$(ANTLR_CLASSPATH)
 ## END GCJ LOCAL
 
-# Setup the compiler to use the GNU Classpath library we just build
-## GCJ LOCAL: don't pass $(JAVACFLAGS) -source 1.5 -target 1.5
-JCOMPILER = $(JAVAC) -g -w --encoding=UTF-8 -bootclasspath $(GLIBJ_BOOTCLASSPATH) -classpath $(GLIBJ_CLASSPATH)
+# Setup the compiler to use the GNU Classpath library we just built.
+if GCJ_JAVAC
+JCOMPILER = $(JAVAC) $(JAVACFLAGS) -fsource=1.5 -ftarget=1.5 --encoding=UTF-8 --bootclasspath=$(GLIBJ_BOOTCLASSPATH) --classpath=$(GLIBJ_CLASSPATH)
+else
+JCOMPILER = $(JAVAC) $(JAVACFLAGS) -source 1.5 -target 1.5 -encoding UTF-8 -bootclasspath $(GLIBJ_BOOTCLASSPATH) -classpath $(GLIBJ_CLASSPATH)
+endif
+
+if CREATE_GJDOC
+## GCJ LOCAL: always put source files in srcdir
+## if CREATE_GJDOC_PARSER
+## gjdoc_gendir = ${top_builddir}/tools/generated
+## else
+gjdoc_gendir = ${top_srcdir}/tools/generated
+## endif
+## END GCJ LOCAL
+ANTLR_CLASSPATH = $(ANTLR_JAR):$(gjdoc_gendir)
+endif
 
 if CREATE_WRAPPERS
 bin_SCRIPTS =
 bin_PROGRAMS = gappletviewer gjarsigner gkeytool \
        gjar gnative2ascii gserialver gjavah grmiregistry \
        gtnameserv gorbd grmid grmic
-
+if CREATE_GJDOC
+bin_PROGRAMS += gjdoc
+endif
 
 AM_CPPFLAGS = -Wall \
        -I$(top_srcdir)/include \
@@ -83,11 +99,19 @@ grmic_CFLAGS = \
        -DTOOLPACKAGE="\"rmic\"" \
        -DTOOLNAME="\"grmic\""
 
+gjdoc_SOURCES = toolwrapper.c
+gjdoc_CFLAGS = \
+       -DTOOLPACKAGE="\"gjdoc\"" \
+       -DTOOLNAME="\"gjdoc\""
+
 else
 ## GCJ LOCAL: do not install these.
 noinst_SCRIPTS = gappletviewer gjarsigner gkeytool \
        gjar gnative2ascii gserialver gjavah grmiregistry \
        gtnameserv gorbd grmid grmic
+if CREATE_GJDOC
+noinst_SCRIPTS += gjdoc
+endif
 bin_PROGRAMS =
 ## FIXME: remove these unneeded dependency lines once we can
 ## require Automake 1.11.
@@ -103,17 +127,25 @@ gtnameserv: gtnameserv.in
 gorbd: gorbd.in
 grmid: grmid.in
 grmic: grmic.in
+if CREATE_GJDOC
+gjdoc: gjdoc.in
+endif
 endif
 EXTRA_DIST = toolwrapper.c gappletviewer.in gjarsigner.in gkeytool.in \
        gjar.in gnative2ascii.in gserialver.in gjavah.in grmiregistry.in \
-       gtnameserv.in gorbd.in grmid.in grmic.in
+       gtnameserv.in gorbd.in grmid.in grmic.in gjdoc.in
 
 # All our example java source files
 TOOLS_JAVA_FILES = $(srcdir)/gnu/classpath/tools/*/*.java \
+       $(srcdir)/gnu/classpath/tools/*.java \
+       $(srcdir)/gnu/classpath/tools/*/*.java \
+       $(srcdir)/gnu/classpath/tools/*/*/*.java \
+       $(srcdir)/gnu/classpath/tools/*/*/*/*.java \
        $(srcdir)/com/sun/javadoc/*.java \
        $(srcdir)/com/sun/tools/doclets/*.java \
        $(srcdir)/com/sun/tools/javac/*.java \
        $(srcdir)/com/sun/tools/javah/*.java \
+       $(srcdir)/com/sun/tools/javadoc/*.java \
        $(srcdir)/sun/rmi/rmic/*.java \
        $(srcdir)/external/asm/org/objectweb/asm/*.java \
        $(srcdir)/external/asm/org/objectweb/asm/attrs/*.java \
@@ -147,6 +179,107 @@ PROPERTY_FILES = $(srcdir)/external/asm/org/objectweb/asm/optimizer/shrink.prope
 # RMIC templates that must be included in the generated zip file.
 RMIC_TEMPLATES = $(srcdir)/resource/gnu/classpath/tools/rmic/templates/*.jav
 
+# gjdoc resource files.
+gnu_classpath_tools_gjdoc_jar_CSS = \
+       doctranslets/html/res/gjdochtml-clean.css \
+       doctranslets/html/res/gjdochtml-fixed.css \
+       doctranslets/html/res/gjdochtml-sclara.css \
+       doctranslets/html/res/gjdochtml.css \
+       htmldoclet/gjdochtml-vanilla.css \
+       htmldoclet/gjdochtml-clean-layout.css \
+       htmldoclet/gjdochtml-clean-color1.css
+
+gnu_classpath_tools_gjdoc_jar_DTDS = \
+       htmldoclet/xhtml11-target10.dtd \
+       dtd/gjdoc-alphaindex.dtd \
+       dtd/gjdoc.dtd
+
+gnu_classpath_tools_gjdoc_jar_ENTS = \
+       dtd/ent/iso-amsa.ent \
+       dtd/ent/iso-amsb.ent \
+       dtd/ent/iso-amsc.ent \
+       dtd/ent/iso-amsn.ent \
+       dtd/ent/iso-amso.ent \
+       dtd/ent/iso-amsr.ent \
+       dtd/ent/iso-box.ent \
+       dtd/ent/iso-cyr1.ent \
+       dtd/ent/iso-cyr2.ent \
+       dtd/ent/iso-dia.ent \
+       dtd/ent/iso-grk1.ent \
+       dtd/ent/iso-grk2.ent \
+       dtd/ent/iso-grk3.ent \
+       dtd/ent/iso-grk4.ent \
+       dtd/ent/iso-lat1.ent \
+       dtd/ent/iso-lat2.ent \
+       dtd/ent/iso-num.ent \
+       dtd/ent/iso-pub.ent \
+       dtd/ent/iso-tech.ent
+
+gnu_classpath_tools_gjdoc_jar_HTML = doctranslets/html/res/default_help_en.html
+
+gnu_classpath_tools_gjdoc_jar_JS = \
+       doctranslets/html/res/gjdoc.js \
+       htmldoclet/gjdoc.js
+
+gnu_classpath_tools_gjdoc_jar_PNG = \
+       htmldoclet/inherit.png
+
+gnu_classpath_tools_gjdoc_jar_MODS = dtd/dbcentx.mod
+
+gnu_classpath_tools_gjdoc_jar_PROPERTIES = htmldoclet/HtmlDoclet.properties
+
+gnu_classpath_tools_gjdoc_jar_RNGS = \
+       rng/gjdoc-classdoc.rng \
+       rng/gjdoc-common.rng \
+       rng/gjdoc-index.rng
+
+gnu_classpath_tools_gjdoc_jar_TXTS = \
+       java.lang-classes-1.2.txt \
+       java.lang-classes-1.3.txt \
+       java.lang-classes-1.4.txt \
+       java.lang-classes-1.5.txt
+
+gnu_classpath_tools_gjdoc_jar_XHTML = htmldoclet/help.xhtml
+
+gnu_classpath_tools_gjdoc_jar_XSLS = \
+       doctranslets/gjdoc_common.xsl \
+       doctranslets/html/about.xsl \
+       doctranslets/html/allclasses.xsl \
+       doctranslets/html/allpackages.xsl \
+       doctranslets/html/alphaindex.xsl \
+       doctranslets/html/alphaindex_chunked.xsl \
+       doctranslets/html/classdoc-source.xsl \
+       doctranslets/html/classdoc-uses.xsl \
+       doctranslets/html/classdoc.xsl \
+       doctranslets/html/deprecated.xsl \
+       doctranslets/html/descriptor.xsl \
+       doctranslets/html/doctranslet.xsl \
+       doctranslets/html/fulltree.xsl \
+       doctranslets/html/gjdoc.xsl \
+       doctranslets/html/help.xsl \
+       doctranslets/html/html_common.xsl \
+       doctranslets/html/index_noframes.xsl \
+       doctranslets/html/index.xsl \
+       doctranslets/html/packageclasses.xsl \
+       doctranslets/html/packagedoc.xsl
+
+# All our resources.
+gjdoc_resources = $(gnu_classpath_tools_gjdoc_jar_CSS) $(gnu_classpath_tools_gjdoc_jar_DTDS) \
+       $(gnu_classpath_tools_gjdoc_jar_ENTS) $(gnu_classpath_tools_gjdoc_jar_HTML) \
+       $(gnu_classpath_tools_gjdoc_jar_JS) $(gnu_classpath_tools_gjdoc_jar_MODS) \
+       $(gnu_classpath_tools_gjdoc_jar_PNG) $(gnu_classpath_tools_gjdoc_jar_PROPERTIES) \
+       $(gnu_classpath_tools_gjdoc_jar_RNGS) $(gnu_classpath_tools_gjdoc_jar_TXTS) \
+       $(gnu_classpath_tools_gjdoc_jar_XHTML) $(gnu_classpath_tools_gjdoc_jar_XSLS)
+
+if !CREATE_GJDOC
+GJDOC_EX = -path '*gnu/classpath/tools/gjdoc' -prune -o \
+       -path '*gnu/classpath/tools/doclets' -prune -o \
+       -path '*gnu/classpath/tools/taglets' -prune -o \
+       -path '*com/sun/javadoc' -prune -o \
+       -path '*com/sun/tools/doclets' -prune -o \
+       -path '*com/sun/tools/javadoc' -prune -o
+endif
+
 # The zip files with classes we want to produce.
 TOOLS_ZIP = tools.zip
 
@@ -154,7 +287,9 @@ TOOLS_ZIP = tools.zip
 BUILT_SOURCES = $(TOOLS_ZIP)
 
 # All the files we find "interesting"
-ALL_TOOLS_FILES = $(TOOLS_JAVA_FILES) $(RMIC_TEMPLATES) $(PROPERTY_FILES)
+ALL_TOOLS_FILES = $(TOOLS_JAVA_FILES) $(RMIC_TEMPLATES) $(PROPERTY_FILES) \
+  $(addprefix $(srcdir)/resource/gnu/classpath/tools/gjdoc/,$(gjdoc_resources))\
+  $(srcdir)/gnu/classpath/tools/gjdoc/expr/java-expression.g
 
 # Some architecture independent data to be installed.
 # GCJ LOCAL: do not install this.
@@ -184,14 +319,17 @@ dist-hook:
 $(TOOLS_ZIP): $(ALL_TOOLS_FILES)
 ## GCJ LOCAL: put classes in srcdir
 ##     @rm -rf classes asm
-##     mkdir classes asm
+##     @mkdir_p@ classes asm
+## Compile ASM separately as it is latin-1 encoded.
        find $(srcdir)/external/asm -name '*.java' -print > asm.lst
        find $(srcdir)/gnu/classpath/tools \
             $(srcdir)/com/sun/javadoc \
             $(srcdir)/com/sun/tools/doclets \
+            $(srcdir)/com/sun/tools/javadoc \
             $(srcdir)/com/sun/tools/javac \
             $(srcdir)/com/sun/tools/javah \
             $(srcdir)/sun/rmi/rmic \
+            $(GJDOC_EX) \
             -name '*.java' -print > classes.lst
        if [ -f $(top_builddir)/../vm-tools-packages ]; then \
            : > vm-tools.lst; \
@@ -203,46 +341,65 @@ $(TOOLS_ZIP): $(ALL_TOOLS_FILES)
        fi
        cat classes.lst asm.lst vm-tools.lst > all-classes.lst
 if JAVA_MAINTAINER_MODE
+if CREATE_GJDOC
+if CREATE_GJDOC_PARSER
+## Generate antlr sources.
+       @mkdir_p@ $(gjdoc_gendir)/gnu/classpath/tools/gjdoc/expr
+       $(ANTLR) -o $(gjdoc_gendir)/gnu/classpath/tools/gjdoc/expr \
+         $(srcdir)/gnu/classpath/tools/gjdoc/expr/java-expression.g
+endif
+endif
 ## Compile ASM separately as it is latin-1 encoded.
        AC=`echo $(JCOMPILER) | sed -e 's/UTF-8/ISO-8859-1/g'`; \
          $$AC -g -w -d $(srcdir)/asm @asm.lst
-       $(JCOMPILER) -g -w -d $(srcdir)/classes @classes.lst @vm-tools.lst
+       $(JCOMPILER) $(USE_JAVAC_FLAGS) -g -d $(srcdir)/classes @classes.lst @vm-tools.lst
+endif
+## END GCJ LOCAL
 ## Copy over tools resource files.
        @list=`cd $(srcdir)/resource && find gnu/classpath/tools com/sun/tools/javac \
-              sun/rmi/rmic -name \*.properties -print -o -name \*.jav -print`; \
+              sun/rmi/rmic $(GJDOC_EX) -name \*.properties -print -o -name \*.jav -print`; \
        for p in $$list; do \
          dirname=classes/`dirname $$p`; \
-         if ! test -d "$$dirname"; then mkdir -p "$$dirname"; fi; \
-         echo "  cp $(srcdir)resource/$$p classes/$$p"; \
+         if ! test -d "$$dirname"; then @mkdir_p@ "$$dirname"; fi; \
+         echo "  cp $(srcdir)/resource/$$p classes/$$p"; \
          cp $(srcdir)/resource/$$p classes/$$p; \
        done
-endif
-## Copy over rmic template files.
-       @list=`cd $(srcdir) && find gnu/classpath/tools -name \*.jav -print`; \
-       for p in $$list; do \
-         dirname=classes/`dirname $$p`; \
-         if ! test -d "$$dirname"; then mkdir -p "$$dirname"; fi; \
-         echo "  cp $(srcdir)/$$p classes/$$p"; \
-         cp $(srcdir)/$$p classes/$$p; \
-       done
        cp -pR $(srcdir)/asm .
        cp -pR $(srcdir)/classes .
-## END GCJ LOCAL
+if CREATE_GJDOC
+## Copy over gjdoc resource files.
+       for res in $(gjdoc_resources); do \
+         dir=classes/`dirname $$res`; \
+         if ! test -d "$$dir"; then @mkdir_p@ "$$dir"; fi; \
+         echo "  cp $(srcdir)/resource/gnu/classpath/tools/gjdoc/$$res classes/$$res"; \
+         cp $(srcdir)/resource/gnu/classpath/tools/gjdoc/$$res classes/$$res; \
+       done 
+endif
+
+if WITH_JAR
+CREATE_TOOLS_ZIP=$(JAR) cf ../$(TOOLS_ZIP) .
+UPDATE_TOOLS_ZIP=$(JAR) uf ../$(TOOLS_ZIP) .
+else
+CREATE_TOOLS_ZIP=$(ZIP) -r ../$(TOOLS_ZIP) .
+UPDATE_TOOLS_ZIP=$(ZIP) -u -r ../$(TOOLS_ZIP) .
+endif
+
 ## First add classpath tools stuff.
        (cd classes; \
-       if test "$(ZIP)" != ""; then $(ZIP) -r ../$(TOOLS_ZIP) .; fi; \
-       if test "$(FASTJAR)" != ""; then "$(FASTJAR)" cf ../$(TOOLS_ZIP) .; fi; \
+       $(CREATE_TOOLS_ZIP); \
        cd ..)
 ## Now add ASM classes.
        (cd asm; \
-       if test "$(ZIP)" != ""; then $(ZIP) -u -r ../$(TOOLS_ZIP) .; fi; \
-       if test "$(FASTJAR)" != ""; then "$(FASTJAR)" uf ../$(TOOLS_ZIP) .; fi; \
+       $(UPDATE_TOOLS_ZIP); \
        cd ..)
        rm -rf asm classes classes.lst asm.lst
 
 # Zip file be gone! (and make sure the classes are gone too)
 clean-local:
        rm -rf $(TOOLS_ZIP) classes classes.lst asm asm.lst all-classes.lst
+if CREATE_GJDOC_PARSER
+       rm -rf $(gjdoc_gendir)
+endif
 
 # FIXME: remove this when GNU Classpath includes a bootstrap VM.
 installcheck-binSCRIPTS: