From mboxrd@z Thu Jan 1 00:00:00 1970
Return-Path:
Received: (qmail 2713 invoked by alias); 13 Mar 2008 16:04:20 -0000
Received: (qmail 2696 invoked by uid 22791); 13 Mar 2008 16:04:18 -0000
X-Spam-Status: No, hits=-0.6 required=5.0 tests=AWL,BAYES_00,HK_OBFDOM,HK_OBFDOMREQ
X-Spam-Check-By: sourceware.org
Received: from wildebeest.demon.nl (HELO gnu.wildebeest.org) (83.160.170.119) by sourceware.org (qpsmtpd/0.31) with ESMTP; Thu, 13 Mar 2008 16:03:40 +0000
Received: from dijkstra.wildebeest.org ([192.168.1.29]) by gnu.wildebeest.org with esmtp (Exim 4.63) (envelope-from ) id 1JZpu2-0007oK-Ua; Thu, 13 Mar 2008 17:03:35 +0100
Subject: Fixed javadoc generation and created html manpages
From: Mark Wielaard
To: frysk@sourceware.org
Cc: Andrew Cagney
Content-Type: multipart/mixed; boundary="=-9TgxBL98KkGdaya0xxeO"
Date: Thu, 13 Mar 2008 16:04:00 -0000
Message-Id: <1205424214.26429.10.camel@dijkstra.wildebeest.org>
Mime-Version: 1.0
X-Mailer: Evolution 2.12.3 (2.12.3-3.fc8)
X-Spam-Score: -4.4 (----)
X-Virus-Checked: Checked by ClamAV on sourceware.org
X-IsSubscribed: yes
Mailing-List: contact frysk-help@sourceware.org; run by ezmlm
Precedence: bulk
List-Id:
List-Subscribe:
List-Post:
List-Help: ,
Sender: frysk-owner@sourceware.org
X-SW-Source: 2008-q1/txt/msg00147.txt.bz2
--=-9TgxBL98KkGdaya0xxeO
Content-Type: text/plain
Content-Transfer-Encoding: 7bit
Content-length: 1678
Hi,
This patch fixes the generation of javadoc by using the javadoc that
comes with icedtea/openjdk. It misses some of the nice features of
gjdoc, but it looks like it will at least be included in most distros in
the near future.
It also adds generation of html versions of the manpages so we have a
list of those on the site: http://sourceware.org/frysk/manpages/
I made a reference to them from the documentation page.
The files in htdocs get updated automagically whenever you do a git
push, for reuploading the javadoc and manpages dirs you need rsync
access to sourceware. I can setup an autobuilder/pusher for this if
nobody else has already.
Andrew, I assume you have one since the javadoc directory is currently
owned by you, but not group frysk, so I wasn't able to update those yet.
Could you chown -R g+w and chgrp -R frysk them, or start your own
builder and do a make javadoc upload-javadoc?
frysk-top/ChangeLog
2008-03-13 Mark Wielaard
* Makefile.am (upload-manpages): New .PHONY target using rsync.
(upload-docs): New .PHONY target depending on upload-manpages
and upload-javadoc.
2008-03-13 Mark Wielaard
* Makefile.am (XMLSOURCES): New list of tools xml docbook files.
(TEMPLATE): New standard html template file.
(manpages): New .PHONY target.
2008-03-13 Mark Wielaard
* Makefile.am (SOURCEDIRS): Remove frysk-imports subdirs, replace
with frysk-sys subdirs.
(JAVADOC): Define as javadoc.
(javadoc): Prune tmp dirs. Don't use reflection, no -validhtml,
replace -all with -subpackages frysk:lib:inua:jline:junit:gnu.
Cheers,
Mark
--=-9TgxBL98KkGdaya0xxeO
Content-Disposition: inline; filename=javadoc-man-html.patch
Content-Type: text/x-patch; name=javadoc-man-html.patch; charset=UTF-8
Content-Transfer-Encoding: 7bit
Content-length: 4898
diff --git a/frysk-top/Makefile.am b/frysk-top/Makefile.am
index 0ee89d9..072b926 100644
--- a/frysk-top/Makefile.am
+++ b/frysk-top/Makefile.am
@@ -1,6 +1,6 @@
# This file is part of the program FRYSK.
#
-# Copyright 2005, 2006, 2007, Red Hat Inc.
+# Copyright 2005, 2006, 2007, 2008, Red Hat Inc.
#
# FRYSK is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@@ -54,9 +54,10 @@ SUBDIRS = \
SOURCEDIRS = \
$(patsubst %,$(srcdir)/%/frysk,$(SUBDIRS)) \
$(patsubst %,$(top_builddir)/%/frysk,$(SUBDIRS)) \
- $(srcdir)/frysk-imports/lib \
- $(srcdir)/frysk-imports/inua \
- $(top_builddir)/frysk-imports/inua \
+ $(srcdir)/frysk-sys/lib \
+ $(top_builddir)/frysk-sys/lib \
+ $(srcdir)/frysk-sys/inua \
+ $(top_builddir)/frysk-sys/inua \
$(srcdir)/frysk-imports/getopt/src/getopt/gnu \
$(srcdir)/frysk-imports/jline/src/jline \
$(srcdir)/frysk-imports/junit/src/junit \
@@ -66,8 +67,42 @@ SOURCEDIRS = \
$(empty)
+# Generate html manpages
+# Use same xml sources, but generate html.
+# html is always put in index.html in output dir, so rename.
+# Use template file and just put in title, logo and a list of utils + href.
+# Replace ./ with ../ relative references (manpages is one dir down).
+XMLSOURCES = $(srcdir)/frysk-core/frysk/bindir/*.xml
+TEMPLATE = $(srcdir)/htdocs/template.html
+.PHONY: manpages
+manpages: XMLSOURCES
+ rm -rf manpages
+ mkdir manpages
+ sed -n '0,//$ p' $(TEMPLATE) > tmp.index.$@.html
+ echo "Frysk Utilities
" >> tmp.index.$@.html
+ sed -n '//,// p' $(TEMPLATE) >> tmp.index.$@.html
+ echo '' >> tmp.index.$@.html
+ sed -n '//,// p' $(TEMPLATE) >> tmp.index.$@.html
+ for xmlfile in $(XMLSOURCES) ; do \
+ name=`basename $$xmlfile .xml`; \
+ echo "Generating man webpage for $$name" ; \
+ $(XMLTO) -o manpages html $$xmlfile ; \
+ mv manpages/index.html manpages/$${name}.html ; \
+ echo -n "" >> tmp.index.$@.html ; \
+ echo -n $$name >> tmp.index.$@.html ; \
+ echo "" >> tmp.index.$@.html ; \
+ sed -n '/\(.*\)<\/refpurpose>/ p' $$xmlfile \
+ | sed -n 's/refpurpose/i/g p' >> tmp.index.$@.html ; \
+ echo "" >> tmp.index.$@.html ; \
+ done
+ sed -n '//,$$ p' $(TEMPLATE) >> tmp.index.$@.html
+ sed -i 's/"\.\//"\.\.\//g' tmp.index.$@.html
+ mv tmp.index.$@.html manpages/index.html
+
# Generate JAVADOC documentation.
-JAVADOC = gjdoc
+JAVADOC = javadoc
JAVADOC_CLASSPATH = /usr/share/java/libgcj-`$(GCJ) -dumpversion`.jar
.PHONY: javadoc
javadoc: all
@@ -84,6 +119,7 @@ javadoc: all
cd $$d ; \
find $$b \
-path '*/*dir/*' -prune \
+ -path '*/*tmp/*' -prune \
-o -name '[A-Za-z]*\.java' -print \
-o -name 'package.html' -print \
-o -path '*/doc-files/*.jpg' -print \
@@ -100,16 +136,10 @@ javadoc: all
| xargs rm \
;; \
esac ; \
- case $$scope in \
- public ) reflection=-reflection ;; \
- private ) reflection= ;; \
- esac ; \
jg=http://developer.gnome.org/doc/API/java-gnome ; \
CLASSPATH=$(JAVADOC_CLASSPATH):$(subst $(space),:,$(FRYSK_GNOME_JARS)) \
$(JAVADOC) \
-$$scope \
- $${reflection} \
- -validhtml \
-link http://developer.classpath.org/doc/ \
-link $${jg}/glib-java-0.4.0/api/ \
-link $${jg}/cairo-java-1.0.6/api/ \
@@ -129,7 +159,7 @@ javadoc: all
-group "Imported Packages" 'inua*:jline*:junit*:gnu*' \
-group "Native Bindings" 'lib*' \
-sourcepath javadoc/source/$$scope \
- -all \
+ -subpackages frysk:lib:inua:jline:junit:gnu \
; \
done
@@ -156,6 +186,25 @@ upload-javadoc:
sourceware.org:/sourceware/www/sourceware/htdocs/frysk/javadoc
CLEANFILES += javadoc
+.PHONY: upload-manpages
+upload-manpages:
+ rsync \
+ --fuzzy \
+ --delete-during \
+ --ignore-times \
+ --perms \
+ --checksum \
+ --recursive \
+ --links \
+ --itemize-changes \
+ --stats \
+ manpages/ \
+ sourceware.org:/sourceware/www/sourceware/htdocs/frysk/manpages
+
+.PHONY: upload-docs
+upload-docs: upload-manpages upload-javadoc
+ true
+
# Generate DOXYGEN documentation.
DOXYFILE = doxygen/Doxyfile
diff --git a/htdocs/documentation/index.html b/htdocs/documentation/index.html
index e23d570..e6fc1cf 100755
--- a/htdocs/documentation/index.html
+++ b/htdocs/documentation/index.html
@@ -63,6 +63,9 @@ href="../build/">building frysk.
For example
workflows illustrating frysk will work see workflow.
+For a list of example utilities build on the frysk framework see manpages.
+
Articles on frysk
--=-9TgxBL98KkGdaya0xxeO--