diff options
author | Peter Hutterer <peter.hutterer@who-t.net> | 2010-06-28 09:56:47 +1000 |
---|---|---|
committer | Peter Hutterer <peter.hutterer@who-t.net> | 2010-06-30 08:46:14 +1000 |
commit | 03a5207d7479eeeefb209db8444c2bbd0701b519 (patch) | |
tree | 93f7a4919ec9bb16376f82ce9e865d145be1d8c2 | |
parent | ffd06a4b7d208f37ddcd55857b5b4e256a441808 (diff) |
Double-use the README as man-page.
If asciidoc and xmlto is available at install time, convert the README to a
man page. The autotool hack for this is a bit complicated, but does the job.
It's essentially copied from libXi that uses asciidoc + xmlto for man page
generation as well.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Dan Nicholson <dbn.lists@gmail.com>
-rw-r--r-- | Makefile.am | 24 | ||||
-rw-r--r-- | README | 23 | ||||
-rw-r--r-- | configure.ac | 19 |
3 files changed, 60 insertions, 6 deletions
diff --git a/Makefile.am b/Makefile.am index 7bd345ef..3d53694a 100644 --- a/Makefile.am +++ b/Makefile.am @@ -18,3 +18,27 @@ check-local: check.sh # Helper target for testing subsets (test-Xopen, etc.) test-%: @$(MAKE) $(AM_MAKEFLAGS) check scenario='$*' + +if HAVE_DOCTOOLS +miscmandir = $(MISC_MAN_DIR) +xtsman_txt = XTS.txt +xtsman_xml = $(xtsman_txt:.txt=.xml) +xtsman_pre = $(xtsman_txt:.txt=.man) +miscman_DATA = $(xtsman_pre:.man=.$(MISC_MAN_SUFFIX)) + +SUFFIXES = .man .$(MISC_MAN_SUFFIX) .txt .xml + +XTS.txt: README + cp $(srcdir)/README XTS.txt + +.man.$(MISC_MAN_SUFFIX): + sed -e 's|miscmansuffix|$(MISC_MAN_SUFFIX)|' < $< > $@ +.txt.xml: + $(ASCIIDOC) -b docbook -d manpage -o $@ $< +.xml.man: + $(XMLTO) man $< + mv -f $(@:.man=.miscmansuffix) $@ + +MAINTAINERCLEANFILES = *.xml $(xtsman_pre) $(xtsman_txt) +endif + @@ -1,8 +1,18 @@ +XTS(miscmansuffix) +================== + +Name +---- + XTS - The X Test Suite + +Description +----------- + This is a revamped version of X Test Suite (XTS) which removes some of the ugliness of building and running the tests. Downloading -=========== +----------- Currently xts it is only available from a git repository. $ git clone git://people.freedesktop.org/~dbn/xtest.git @@ -10,8 +20,9 @@ Currently xts it is only available from a git repository. Eventually there will be a tarball release when it is stabilized. Requirements -============ +------------ Required libraries: libX11, libXext, libXi, libXtst + Required utilities: xdpyinfo, xset, perl, bdftopcf, mkfontdir If you are using packages outside of the standard system directories, @@ -19,7 +30,7 @@ make sure to set PATH and PKG_CONFIG_PATH appropriately. See pkg-config(1) for details on the latter. Build and Install -================= +----------------- The build and install are now straightforward: $ ./autogen.sh # using a git checkout @@ -28,7 +39,7 @@ The build and install are now straightforward: $ make install Running the Tests -================= +----------------- The tests can be run from the build directory or from the installed package. The check.sh script sets up the environment to run tests from the build tree. @@ -56,7 +67,7 @@ the xts-report tool (formerly vswrpt): $ xts-report -f /xts/output/dir/journal Running a Single Test -===================== +--------------------- The pt script can be used to run a single set of tests or a single test case only. For example, to run only the XGrabButton tests, run $ pt ./XGrabButton @@ -75,7 +86,7 @@ To run only a single test-case inside one test set, use the -i flag. This command only runs test case 10 (t010() in the source). Bugs -==== +---- Some tests provide different results when run as a set versus run one-by-one with the pt script. This has been observed with Xlib13/XGrabButton where the modifier state is not reset correctly. diff --git a/configure.ac b/configure.ac index 158b72af..6f51fc05 100644 --- a/configure.ac +++ b/configure.ac @@ -109,6 +109,25 @@ fi m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])], [AC_SUBST([AM_DEFAULT_VERBOSITY], [1])]) +# Generate man page if asciidoc and xmlto are available. +AC_ARG_VAR([XMLTO], [Path to xmlto command]) +AC_PATH_PROG([XMLTO], [xmlto]) +AC_ARG_VAR([ASCIIDOC], [Path to asciidoc command]) +AC_PATH_PROG([ASCIIDOC], [asciidoc]) + +AM_CONDITIONAL([HAVE_DOCTOOLS], [test "x$XMLTO" != "x" && test "x$ASCIIDOC" != "x"]) +if test "x$XMLTO" = "x" || test "x$ASCIIDOC" = "x"; then + AC_MSG_WARN([xmlto or asciidoc not found - cannot create man pages without it]) +else + if test x$MISC_MAN_SUFFIX = x ; then + case $host_os in + solaris*) MISC_MAN_SUFFIX=5 ;; + *) MISC_MAN_SUFFIX=7 ;; + esac + fi + AC_SUBST(MISC_MAN_SUFFIX) +fi + AC_CONFIG_FILES([ Makefile check.sh |