public inbox for java-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [RFC] generate and install cp-tools manpages and texi doc
@ 2007-02-21 21:19 Matthias Klose
  2007-03-05 19:35 ` Tom Tromey
  0 siblings, 1 reply; 3+ messages in thread
From: Matthias Klose @ 2007-02-21 21:19 UTC (permalink / raw)
  To: java-patches

I didn't check yet the patch with --enable-generated-files-in-srcdir,
because bootstrap with this option is currently broken.

  Matthias

 2007-02-20  Matthias Klose  <doko@ubuntu.com>
 
	* configure.ac: New configure option
	--enable-generated-files-in-srcdir.
	* doc/Makefile.am: Add support to generate files in srcdir.
	* doc/cp-tools.texinfo: Show documents as distributed by GCC.
	* configure: Regenerate.
	* native/jni/classpath/Makefile.in, native/jni/midi-dssi/Makefile.in,
	native/jni/Makefile.in, native/jni/gconf-peer/Makefile.in,
	native/jni/java-io/Makefile.in, native/jni/native-lib/Makefile.in,
	native/jni/java-util/Makefile.in, native/jni/java-lang/Makefile.in,
	native/jni/midi-alsa/Makefile.in, native/jni/java-nio/Makefile.in,
	native/jni/java-net/Makefile.in, native/jni/xmlj/Makefile.in,
	native/jni/qt-peer/Makefile.in, native/jni/gtk-peer/Makefile.in,
	native/Makefile.in, native/jawt/Makefile.in, native/fdlibm/Makefile.in,
	native/plugin/Makefile.in, resource/Makefile.in, scripts/Makefile.in,
	tools/Makefile.in, doc/Makefile.in, doc/api/Makefile.in,
	lib/Makefile.in, external/Makefile.in, external/sax/Makefile.in,
	external/w3c_dom/Makefile.in, external/jsr166/Makefile.in,
	external/relaxngDatatype/Makefile.in, include/Makefile.in,
	examples/Makefile.in: Regenerate.

Index: configure.ac
===================================================================
--- configure.ac	(Revision 122195)
+++ configure.ac	(Arbeitskopie)
@@ -18,6 +18,27 @@
 AM_CONDITIONAL(JAVA_MAINTAINER_MODE, test "$enable_java_maintainer_mode" = yes)
 dnl END GCJ LOCAL
 
+dnl GCJ LOCAL
+# We would like to our source tree to be readonly.  However when releases or
+# pre-releases are generated, the man pages need to be included as they are
+# converted from the texi files via perl which we don't require end users to
+# have installed.
+# Therefore we have --enable-generated-files-in-srcdir to do just that.
+
+AC_MSG_CHECKING([whether to place generated files in the source directory])
+  dnl generated-files-in-srcdir is disabled by default
+  AC_ARG_ENABLE(generated-files-in-srcdir, 
+[  --enable-generated-files-in-srcdir
+                          put copies of generated files in source dir
+                          intended for creating source tarballs for users
+                          without texinfo, perl, bison or flex.],
+      generated_files_in_srcdir=$enableval,
+      generated_files_in_srcdir=no)
+
+AC_MSG_RESULT($generated_files_in_srcdir)
+AM_CONDITIONAL(GENINSRC, test x$generated_files_in_srcdir = xyes)
+dnl END GCJ LOCAL
+
 # Find the rest of the source tree framework.
 AM_ENABLE_MULTILIB(, ../..)
 
Index: doc/Makefile.am
===================================================================
--- doc/Makefile.am	(Revision 122195)
+++ doc/Makefile.am	(Arbeitskopie)
@@ -4,6 +4,9 @@
 
 ## GCJ LOCAL: we don't want to install all of Classpath's info files.
 ## info_TEXINFOS = cp-hacking.texinfo cp-vmintegration.texinfo cp-tools.texinfo
+TEXINFO_TEX = ../../gcc/doc/include/texinfo.tex
+info_TEXINFOS = cp-tools.texinfo
+cp_tools_TEXINFOS = gcc-vers.texi
 
 %.dvi : %.texinfo
 	texi2dvi $<
@@ -12,8 +15,9 @@
 	dvips -o $@ $<
 
 docs: cp-hacking.ps cp-vmintegration.ps cp-tools.ps
+install-data-local: install-info
 
-#man_MANS = $(TOOLS_MANFILES)
+man_MANS = $(TOOLS_MANFILES)
 TOOLS_MANFILES = \
 	gappletviewer.1 \
 	gjar.1 \
@@ -53,39 +57,84 @@
 	gkeytool.pod gnative2ascii.pod gorbd.pod grmid.pod grmiregistry.pod \
 	gserialver.pod gtnameserv.pod
 
-gappletviewer.pod: $(srcdir)/cp-tools.texinfo
+gappletviewer.pod: $(srcdir)/cp-tools.texinfo gcc-vers.texi
 	-$(TEXI2POD) -D gappletviewer < $< > $@
 
-gjarsigner.pod: $(srcdir)/cp-tools.texinfo
+gjarsigner.pod: $(srcdir)/cp-tools.texinfo gcc-vers.texi
 	-$(TEXI2POD) -D gjarsigner < $< > $@
 
-gjar.pod: $(srcdir)/cp-tools.texinfo
+gjar.pod: $(srcdir)/cp-tools.texinfo gcc-vers.texi
 	-$(TEXI2POD) -D gjar < $< > $@
 
-gjavah.pod: $(srcdir)/cp-tools.texinfo
+gjavah.pod: $(srcdir)/cp-tools.texinfo gcc-vers.texi
 	-$(TEXI2POD) -D gjavah < $< > $@
 
 # hack around the cross references and the enumeration
-gkeytool.pod: $(srcdir)/cp-tools.texinfo
+gkeytool.pod: $(srcdir)/cp-tools.texinfo gcc-vers.texi
 	-$(TEXI2POD) -D gkeytool < $< > $@
 	sed -i -e 's/^For more details.*/See I<Common Options> for more details./' \
 	    -e 's/1\.<\([^>]*\)>/- \1/' \
 		$@
 
-gnative2ascii.pod: $(srcdir)/cp-tools.texinfo
+gnative2ascii.pod: $(srcdir)/cp-tools.texinfo gcc-vers.texi
 	-$(TEXI2POD) -D gnative2ascii < $< > $@
 
-gorbd.pod: $(srcdir)/cp-tools.texinfo
+gorbd.pod: $(srcdir)/cp-tools.texinfo gcc-vers.texi
 	-$(TEXI2POD) -D gorbd < $< > $@
 
-grmid.pod: $(srcdir)/cp-tools.texinfo
+grmid.pod: $(srcdir)/cp-tools.texinfo gcc-vers.texi
 	-$(TEXI2POD) -D grmid < $< > $@
 
-grmiregistry.pod: $(srcdir)/cp-tools.texinfo
+grmiregistry.pod: $(srcdir)/cp-tools.texinfo gcc-vers.texi
 	-$(TEXI2POD) -D grmiregistry < $< > $@
 
-gserialver.pod: $(srcdir)/cp-tools.texinfo
+gserialver.pod: $(srcdir)/cp-tools.texinfo gcc-vers.texi
 	-$(TEXI2POD) -D gserialver < $< > $@
 
-gtnameserv.pod: $(srcdir)/cp-tools.texinfo
+gtnameserv.pod: $(srcdir)/cp-tools.texinfo gcc-vers.texi
 	-$(TEXI2POD) -D gtnameserv < $< > $@
+
+$(TOOLS_MANFILES): $(BASEVER)
+
+# GCJ LOCAL CHANGE
+# The following commands allow us to release tarballs with the man pages
+# and info documentation prebuilt.  This feature is enabled via 
+# --enable-generated-files-in-srcdir in the configure script.
+
+if GENINSRC
+STAMP_GENINSRC = stamp-geninsrc
+else
+STAMP_GENINSRC =
+endif
+
+all-local: $(STAMP_GENINSRC) 
+
+stamp-geninsrc: $(TOOLS_MANFILES) cp-tools.info
+	-cp -p $(top_builddir)/gappletviewer.1 $(srcdir)/gappletviewer.1
+	-cp -p $(top_builddir)/gjar.1 $(srcdir)/gjar.1
+	-cp -p $(top_builddir)/gjarsigner.1 $(srcdir)/gjarsigner.1
+	-cp -p $(top_builddir)/gjavah.1 $(srcdir)/gjavah.1
+	-cp -p $(top_builddir)/gkeytool.1 $(srcdir)/gkeytool.1
+	-cp -p $(top_builddir)/gnative2ascii.1 $(srcdir)/gnative2ascii.1
+	-cp -p $(top_builddir)/gorbd.1 $(srcdir)/gorbd.1
+	-cp -p $(top_builddir)/grmid.1 $(srcdir)/grmid.1
+	-cp -p $(top_builddir)/grmiregistry.1 $(srcdir)/grmiregistry.1
+	-cp -p $(top_builddir)/gserialver.1 $(srcdir)/gserialver.1
+	-cp -p $(top_builddir)/gtnameserv.1 $(srcdir)/gtnameserv.1
+	-cp -p $(top_builddir)/cp-tools.info $(srcdir)/cp-tools.info
+	touch $@
+
+CLEANFILES = stamp-geninsrc cp-tools.info
+MAINTAINERCLEANFILES = \
+		$(srcdir)/gappletviewer.1 \
+		$(srcdir)/gjar.1 \
+		$(srcdir)/gjarsigner.1 \
+		$(srcdir)/gjavah.1 \
+		$(srcdir)/gkeytool.1 \
+		$(srcdir)/gnative2ascii.1 \
+		$(srcdir)/gorbd.1 \
+		$(srcdir)/grmid.1 \
+		$(srcdir)/grmiregistry.1 \
+		$(srcdir)/gserialver.1 \
+		$(srcdir)/gtnameserv.1 \
+		$(srcdir)/cp-tools.info
Index: doc/cp-tools.texinfo
===================================================================
--- doc/cp-tools.texinfo	(Revision 122195)
+++ doc/cp-tools.texinfo	(Arbeitskopie)
@@ -18,11 +18,13 @@
 @end smallexample
 @end macro
 
+@include gcc-common.texi
+@set which-gcj GCC-@value{version-GCC}
+
 @ifinfo
-This file documents the Tools included in a standard distribution of the GNU
-Classpath project deliverables.
+This file documents the Tools included as part of @value{which-GCJ}
 
-Copyright (C) 2006 Free Software Foundation, Inc.
+Copyright (C) 2006, 2007 Free Software Foundation, Inc.
 
 @ifnotplaintext
 @dircategory GNU Libraries
@@ -33,12 +35,12 @@
 @end ifinfo
 
 @titlepage
-@title GNU Classpath Tools Guide
+@title GNU Classpath Tools Guide for @value{which-GCJ}
 @author The GNU Classpath Team
 
 @page
 @vskip 0pt plus 1filll
-Copyright @copyright{} 2006 Free Software Foundation, Inc.
+Copyright @copyright{} 2006, 2007 Free Software Foundation, Inc.
 @sp 2
 Permission is granted to make and distribute verbatim copies of this document provided the copyright notice and this permission notice are preserved on all copies.
 
@@ -52,10 +54,10 @@
 
 @ifinfo
 @node Top, Applet Tools, (dir), (dir)
-@top GNU Classpath Tools Guide
+@top GNU Classpath Tools Guide for @value{which-GCJ}
 
 This document contains important information you need to know in order to use
-the tools included in the GNU Classpath project deliverables.
+the tools included with @value{which-GCJ}.
 
 The Tools aim at providing a free replacement, similar in their behavior, to
 their counter-parts found in the Reference Implementation (RI) of the Java

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [RFC] generate and install cp-tools manpages and texi doc
  2007-02-21 21:19 [RFC] generate and install cp-tools manpages and texi doc Matthias Klose
@ 2007-03-05 19:35 ` Tom Tromey
  2007-03-19  5:59   ` Matthias Klose
  0 siblings, 1 reply; 3+ messages in thread
From: Tom Tromey @ 2007-03-05 19:35 UTC (permalink / raw)
  To: Matthias Klose; +Cc: java-patches

>>>>> "Matthias" == Matthias Klose <doko@cs.tu-berlin.de> writes:

Oh, duh, you did submit it.  Sorry :)

Matthias> I didn't check yet the patch with
Matthias> --enable-generated-files-in-srcdir, because bootstrap with
Matthias> this option is currently broken.

What is wrong with it?

I think most of this is fine.  I'm a bit concerned about the changes
to the texinfo files, though.  I'd rather we not have a local
divergence here.

I'm not sure what to suggest though.  Perhaps a .texi file upstream,
holding just some version define, that is wholly replaced in libgcj?

Tom

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [RFC] generate and install cp-tools manpages and texi doc
  2007-03-05 19:35 ` Tom Tromey
@ 2007-03-19  5:59   ` Matthias Klose
  0 siblings, 0 replies; 3+ messages in thread
From: Matthias Klose @ 2007-03-19  5:59 UTC (permalink / raw)
  To: tromey; +Cc: java-patches

Tom Tromey writes:
> >>>>> "Matthias" == Matthias Klose <doko@cs.tu-berlin.de> writes:
> 
> Oh, duh, you did submit it.  Sorry :)
> 
> Matthias> I didn't check yet the patch with
> Matthias> --enable-generated-files-in-srcdir, because bootstrap with
> Matthias> this option is currently broken.
> 
> What is wrong with it?

PR 390899 is fixed now. checked with a build with
--enable-generated-files-in-srcdir.

> I think most of this is fine.  I'm a bit concerned about the changes
> to the texinfo files, though.  I'd rather we not have a local
> divergence here.
> 
> I'm not sure what to suggest though.  Perhaps a .texi file upstream,
> holding just some version define, that is wholly replaced in libgcj?

I checked in the following patch, omitting the changes to the texi
files. I will address the version change in a classpath patch.

  Matthias

2007-03-10  Matthias Klose  <doko@ubuntu.com>

	* configure.ac: New configure option
	--enable-generated-files-in-srcdir.
	* doc/Makefile.am: Add support to generate files in srcdir,
	install the cp-tools documentation in info format.
	* configure: Regenerate.
	* native/jni/classpath/Makefile.in, native/jni/midi-dssi/Makefile.in,
	native/jni/Makefile.in, native/jni/gconf-peer/Makefile.in,
	native/jni/java-io/Makefile.in, native/jni/native-lib/Makefile.in,
	native/jni/java-util/Makefile.in, native/jni/java-lang/Makefile.in,
	native/jni/midi-alsa/Makefile.in, native/jni/java-nio/Makefile.in,
	native/jni/java-net/Makefile.in, native/jni/xmlj/Makefile.in,
	native/jni/qt-peer/Makefile.in, native/jni/gtk-peer/Makefile.in,
	native/Makefile.in, native/jawt/Makefile.in, native/fdlibm/Makefile.in,
	native/plugin/Makefile.in, resource/Makefile.in, scripts/Makefile.in,
	tools/Makefile.in, doc/Makefile.in, doc/api/Makefile.in,
	lib/Makefile.in, external/Makefile.in, external/sax/Makefile.in,
	external/w3c_dom/Makefile.in, external/jsr166/Makefile.in,
	external/relaxngDatatype/Makefile.in, include/Makefile.in,
	examples/Makefile.in: Regenerate.

Index: libjava/classpath/configure.ac
===================================================================
--- libjava/classpath/configure.ac	(Revision 123036)
+++ libjava/classpath/configure.ac	(Arbeitskopie)
@@ -18,6 +18,27 @@
 AM_CONDITIONAL(JAVA_MAINTAINER_MODE, test "$enable_java_maintainer_mode" = yes)
 dnl END GCJ LOCAL
 
+dnl GCJ LOCAL
+# We would like to our source tree to be readonly.  However when releases or
+# pre-releases are generated, the man pages need to be included as they are
+# converted from the texi files via perl which we don't require end users to
+# have installed.
+# Therefore we have --enable-generated-files-in-srcdir to do just that.
+
+AC_MSG_CHECKING([whether to place generated files in the source directory])
+  dnl generated-files-in-srcdir is disabled by default
+  AC_ARG_ENABLE(generated-files-in-srcdir, 
+[  --enable-generated-files-in-srcdir
+                          put copies of generated files in source dir
+                          intended for creating source tarballs for users
+                          without texinfo, perl, bison or flex.],
+      generated_files_in_srcdir=$enableval,
+      generated_files_in_srcdir=no)
+
+AC_MSG_RESULT($generated_files_in_srcdir)
+AM_CONDITIONAL(GENINSRC, test x$generated_files_in_srcdir = xyes)
+dnl END GCJ LOCAL
+
 # Find the rest of the source tree framework.
 AM_ENABLE_MULTILIB(, ../..)
 
Index: libjava/classpath/doc/Makefile.am
===================================================================
--- libjava/classpath/doc/Makefile.am	(Revision 123036)
+++ libjava/classpath/doc/Makefile.am	(Arbeitskopie)
@@ -4,6 +4,9 @@
 
 ## GCJ LOCAL: we don't want to install all of Classpath's info files.
 ## info_TEXINFOS = cp-hacking.texinfo cp-vmintegration.texinfo cp-tools.texinfo
+TEXINFO_TEX = ../../gcc/doc/include/texinfo.tex
+info_TEXINFOS = cp-tools.texinfo
+cp_tools_TEXINFOS = gcc-vers.texi
 
 %.dvi : %.texinfo
 	texi2dvi $<
@@ -12,6 +15,7 @@
 	dvips -o $@ $<
 
 docs: cp-hacking.ps cp-vmintegration.ps cp-tools.ps
+install-data-local: install-info
 
 man_MANS = $(TOOLS_MANFILES)
 TOOLS_MANFILES = \
@@ -89,3 +93,46 @@
 
 gtnameserv.pod: $(srcdir)/cp-tools.texinfo
 	-$(TEXI2POD) -D gtnameserv < $< > $@
+
+# GCJ LOCAL CHANGE
+# The following commands allow us to release tarballs with the man pages
+# and info documentation prebuilt.  This feature is enabled via 
+# --enable-generated-files-in-srcdir in the configure script.
+
+if GENINSRC
+STAMP_GENINSRC = stamp-geninsrc
+else
+STAMP_GENINSRC =
+endif
+
+all-local: $(STAMP_GENINSRC) 
+
+stamp-geninsrc: $(TOOLS_MANFILES) cp-tools.info
+	-cp -p gappletviewer.1 $(srcdir)/gappletviewer.1
+	-cp -p gjar.1 $(srcdir)/gjar.1
+	-cp -p gjarsigner.1 $(srcdir)/gjarsigner.1
+	-cp -p gjavah.1 $(srcdir)/gjavah.1
+	-cp -p gkeytool.1 $(srcdir)/gkeytool.1
+	-cp -p gnative2ascii.1 $(srcdir)/gnative2ascii.1
+	-cp -p gorbd.1 $(srcdir)/gorbd.1
+	-cp -p grmid.1 $(srcdir)/grmid.1
+	-cp -p grmiregistry.1 $(srcdir)/grmiregistry.1
+	-cp -p gserialver.1 $(srcdir)/gserialver.1
+	-cp -p gtnameserv.1 $(srcdir)/gtnameserv.1
+	-cp -p cp-tools.info $(srcdir)/cp-tools.info
+	touch $@
+
+CLEANFILES = stamp-geninsrc cp-tools.info
+MAINTAINERCLEANFILES = \
+		$(srcdir)/gappletviewer.1 \
+		$(srcdir)/gjar.1 \
+		$(srcdir)/gjarsigner.1 \
+		$(srcdir)/gjavah.1 \
+		$(srcdir)/gkeytool.1 \
+		$(srcdir)/gnative2ascii.1 \
+		$(srcdir)/gorbd.1 \
+		$(srcdir)/grmid.1 \
+		$(srcdir)/grmiregistry.1 \
+		$(srcdir)/gserialver.1 \
+		$(srcdir)/gtnameserv.1 \
+		$(srcdir)/cp-tools.info

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2007-03-19  5:59 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-02-21 21:19 [RFC] generate and install cp-tools manpages and texi doc Matthias Klose
2007-03-05 19:35 ` Tom Tromey
2007-03-19  5:59   ` Matthias Klose

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).