Add 0001-Use-XSL-to-generate-man-page-from-the-rules-XML.patch, ship
man-page Fix up broken git repo initialization when building from a tarball
This commit is contained in:
		
							parent
							
								
									7116b939ca
								
							
						
					
					
						commit
						5ad0daef07
					
				
							
								
								
									
										230
									
								
								0001-Use-XSL-to-generate-man-page-from-the-rules-XML.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										230
									
								
								0001-Use-XSL-to-generate-man-page-from-the-rules-XML.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,230 @@ | |||||||
|  | From c17f8b08740aed26687fd65c84e654a6cdc163a2 Mon Sep 17 00:00:00 2001 | ||||||
|  | From: Peter Hutterer <peter.hutterer@who-t.net> | ||||||
|  | Date: Mon, 13 Jun 2011 23:39:30 +0100 | ||||||
|  | Subject: [PATCH] Use XSL to generate man page from the rules XML | ||||||
|  | 
 | ||||||
|  | Generate a man-page from the evdev.xml through the xslt/man.xsl stylesheet. | ||||||
|  | 
 | ||||||
|  | Adds a requirement on the xorg util-macros and xsltproc. | ||||||
|  | 
 | ||||||
|  | Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> | ||||||
|  | Reviewed-by: Dan Nicholson <dbn.lists@gmail.com> | ||||||
|  | Reviewed-by: Gaetan Nadon <memsize@videotron.ca> | ||||||
|  | ---
 | ||||||
|  |  Makefile.am     |    2 +- | ||||||
|  |  configure.in    |   10 ++++ | ||||||
|  |  man/Makefile.am |   17 +++++++ | ||||||
|  |  man/man.xsl     |  137 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ | ||||||
|  |  4 files changed, 165 insertions(+), 1 deletions(-) | ||||||
|  |  create mode 100644 man/Makefile.am | ||||||
|  |  create mode 100644 man/man.xsl | ||||||
|  | 
 | ||||||
|  | diff --git a/Makefile.am b/Makefile.am
 | ||||||
|  | index e98117e..943539f 100644
 | ||||||
|  | --- a/Makefile.am
 | ||||||
|  | +++ b/Makefile.am
 | ||||||
|  | @@ -1,6 +1,6 @@
 | ||||||
|  |  AUTOMAKE_OPTIONS = foreign | ||||||
|  |   | ||||||
|  | -SUBDIRS = compat geometry keycodes keymap po rules semantics symbols types docs
 | ||||||
|  | +SUBDIRS = compat geometry keycodes keymap po rules semantics symbols types docs man
 | ||||||
|  |   | ||||||
|  |  pkgconfigdir = $(datadir)/pkgconfig | ||||||
|  |  pkgconfig_DATA = xkeyboard-config.pc | ||||||
|  | diff --git a/configure.in b/configure.in
 | ||||||
|  | index 527e807..e98919a 100644
 | ||||||
|  | --- a/configure.in
 | ||||||
|  | +++ b/configure.in
 | ||||||
|  | @@ -3,6 +3,15 @@ AC_CONFIG_SRCDIR(rules/base.xml.in)
 | ||||||
|  |  AM_INIT_AUTOMAKE([foreign dist-bzip2]) | ||||||
|  |  AM_MAINTAINER_MODE | ||||||
|  |   | ||||||
|  | +# Require X.Org macros 1.12 or later for XORG_WITH_XSLTPROC
 | ||||||
|  | +m4_ifndef([XORG_MACROS_VERSION],
 | ||||||
|  | +          [m4_fatal([must install xorg-macros 1.12 or later before
 | ||||||
|  | +          running autoconf/autogen])])
 | ||||||
|  | +XORG_MACROS_VERSION(1.12)
 | ||||||
|  | +XORG_MANPAGE_SECTIONS
 | ||||||
|  | +XORG_WITH_XSLTPROC
 | ||||||
|  | +AC_PROG_SED
 | ||||||
|  | +
 | ||||||
|  |  AC_SUBST(VERSION) | ||||||
|  |   | ||||||
|  |  AC_PATH_PROG([XKBCOMP], [xkbcomp], [not_found]) | ||||||
|  | @@ -104,6 +113,7 @@ types/Makefile
 | ||||||
|  |  xkeyboard-config.pc | ||||||
|  |  xkeyboard-config.spec | ||||||
|  |  docs/Makefile | ||||||
|  | +man/Makefile
 | ||||||
|  |  ]) | ||||||
|  |   | ||||||
|  |  echo '***********************************************************' | ||||||
|  | diff --git a/man/Makefile.am b/man/Makefile.am
 | ||||||
|  | new file mode 100644 | ||||||
|  | index 0000000..2e9deaa
 | ||||||
|  | --- /dev/null
 | ||||||
|  | +++ b/man/Makefile.am
 | ||||||
|  | @@ -0,0 +1,17 @@
 | ||||||
|  | +EXTRA_DIST = man.xsl
 | ||||||
|  | +
 | ||||||
|  | +if HAVE_XSLTPROC
 | ||||||
|  | +miscmandir = $(MISC_MAN_DIR)
 | ||||||
|  | +miscman_PRE = xkeyboard-config.man
 | ||||||
|  | +miscman_DATA = $(miscman_PRE:man=@MISC_MAN_SUFFIX@)
 | ||||||
|  | +CLEANFILES = $(miscman_DATA) $(miscman_PRE)
 | ||||||
|  | +SUFFIXES = .$(MISC_MAN_SUFFIX) .man
 | ||||||
|  | +MAN_SUBSTS += -e 's|__xkb_base__|$(xkb_base)|g'
 | ||||||
|  | +
 | ||||||
|  | +xkeyboard-config.man: $(top_builddir)/rules/evdev.xml $(srcdir)/man.xsl
 | ||||||
|  | +	$(XSLTPROC) -nonet $(srcdir)/man.xsl $(top_builddir)/rules/evdev.xml > $@
 | ||||||
|  | +
 | ||||||
|  | +.man.$(MISC_MAN_SUFFIX):
 | ||||||
|  | +	$(SED) $(MAN_SUBSTS) < $< > $@
 | ||||||
|  | +
 | ||||||
|  | +endif
 | ||||||
|  | diff --git a/man/man.xsl b/man/man.xsl
 | ||||||
|  | new file mode 100644 | ||||||
|  | index 0000000..a5bd14d
 | ||||||
|  | --- /dev/null
 | ||||||
|  | +++ b/man/man.xsl
 | ||||||
|  | @@ -0,0 +1,137 @@
 | ||||||
|  | +<?xml version="1.0" encoding="UTF-8"?>
 | ||||||
|  | +<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" >
 | ||||||
|  | +    <xsl:output method="text" encoding="UTF-8" doctype-system="xkb.dtd"/>
 | ||||||
|  | +    <xsl:template match="/xkbConfigRegistry">
 | ||||||
|  | +        <xsl:text><![CDATA[.\" WARNING: this man page is autogenerated. Do not edit or you will lose all your changes.
 | ||||||
|  | +.TH XKEYBOARD-CONFIG __miscmansuffix__ __vendorversion__
 | ||||||
|  | +.SH NAME
 | ||||||
|  | +xkeyboard-config \- XKB data description files
 | ||||||
|  | +.SH DESCRIPTION
 | ||||||
|  | +xkeyboard-config provides the description files for the X Keyboard
 | ||||||
|  | +Extension (XKB). The configuration options below are usually applied with
 | ||||||
|  | +setxkbmap(__appmansuffix__).
 | ||||||
|  | +.SH MODELS
 | ||||||
|  | +.TS
 | ||||||
|  | +left,box;
 | ||||||
|  | +lB lB
 | ||||||
|  | +___
 | ||||||
|  | +lB l.
 | ||||||
|  | +Model	Description
 | ||||||
|  | +]]></xsl:text>
 | ||||||
|  | +        <xsl:apply-templates select="modelList"/>
 | ||||||
|  | +        <xsl:text><![CDATA[
 | ||||||
|  | +.TE
 | ||||||
|  | +.SH LAYOUTS
 | ||||||
|  | +.TS
 | ||||||
|  | +left,box;
 | ||||||
|  | +lB lB
 | ||||||
|  | +____
 | ||||||
|  | +lB l.
 | ||||||
|  | +Layout(Variant)	Description
 | ||||||
|  | +]]></xsl:text>
 | ||||||
|  | +        <xsl:apply-templates select="layoutList"/>
 | ||||||
|  | +        <xsl:text><![CDATA[
 | ||||||
|  | +.TE
 | ||||||
|  | +.SH OPTIONS
 | ||||||
|  | +]]></xsl:text>
 | ||||||
|  | +        <xsl:apply-templates select="optionList"/>
 | ||||||
|  | +        <xsl:text><![CDATA[
 | ||||||
|  | +.SH FILES
 | ||||||
|  | +__xkb_base__/compat
 | ||||||
|  | +
 | ||||||
|  | +__xkb_base__/compiled
 | ||||||
|  | +
 | ||||||
|  | +__xkb_base__/geometry
 | ||||||
|  | +
 | ||||||
|  | +__xkb_base__/keycodes
 | ||||||
|  | +
 | ||||||
|  | +__xkb_base__/keymap
 | ||||||
|  | +
 | ||||||
|  | +__xkb_base__/rules
 | ||||||
|  | +
 | ||||||
|  | +__xkb_base__/semantics
 | ||||||
|  | +
 | ||||||
|  | +__xkb_base__/symbols
 | ||||||
|  | +
 | ||||||
|  | +__xkb_base__/types
 | ||||||
|  | +
 | ||||||
|  | +.SH SEE ALSO
 | ||||||
|  | +setxkbmap(__appmansuffix__)
 | ||||||
|  | +]]></xsl:text>
 | ||||||
|  | +    </xsl:template>
 | ||||||
|  | +
 | ||||||
|  | +<!-- split model/description into a normal table -->
 | ||||||
|  | +    <xsl:template match="modelList">
 | ||||||
|  | +        <xsl:for-each select="model">
 | ||||||
|  | +            <xsl:value-of select="configItem/name"/><xsl:text>	</xsl:text><xsl:value-of select="configItem/description"/>
 | ||||||
|  | +            <xsl:text>
</xsl:text>
 | ||||||
|  | +        </xsl:for-each>
 | ||||||
|  | +    </xsl:template>
 | ||||||
|  | +
 | ||||||
|  | +<!-- split layout/variant/description into a table like this
 | ||||||
|  | +
 | ||||||
|  | +        layout1                 description
 | ||||||
|  | +        layout1(variant1)       description
 | ||||||
|  | +        layout1(variant2)       description
 | ||||||
|  | +        layout2                 description
 | ||||||
|  | +        layout2(variant1)       description
 | ||||||
|  | +-->
 | ||||||
|  | +    <xsl:template match="layoutList">
 | ||||||
|  | +        <xsl:for-each select="layout">
 | ||||||
|  | +            <xsl:value-of select="configItem/name"/>
 | ||||||
|  | +            <xsl:text>	</xsl:text>
 | ||||||
|  | +            <xsl:value-of select="configItem/description"/>
 | ||||||
|  | +            <xsl:text>
</xsl:text>
 | ||||||
|  | +            <xsl:for-each select="variantList/variant">
 | ||||||
|  | +                <xsl:value-of select="../../configItem/name"/>
 | ||||||
|  | +                <xsl:text>(</xsl:text>
 | ||||||
|  | +                <xsl:value-of select="configItem/name"/>
 | ||||||
|  | +                <xsl:text>)</xsl:text>
 | ||||||
|  | +                <xsl:text>	</xsl:text>
 | ||||||
|  | +                <xsl:value-of select="configItem/description"/>
 | ||||||
|  | +                <xsl:text>
</xsl:text>
 | ||||||
|  | +            </xsl:for-each>
 | ||||||
|  | +            <xsl:text>
</xsl:text>
 | ||||||
|  | +            <xsl:text>_
</xsl:text>
 | ||||||
|  | +        </xsl:for-each>
 | ||||||
|  | +    </xsl:template>
 | ||||||
|  | +
 | ||||||
|  | +<!-- split option into a table like this
 | ||||||
|  | +
 | ||||||
|  | +option description:
 | ||||||
|  | +        optarg          description
 | ||||||
|  | +        optarg          description
 | ||||||
|  | +        optarg          description
 | ||||||
|  | +
 | ||||||
|  | +option2 description:
 | ||||||
|  | +        optarg          description
 | ||||||
|  | +        optarg          description
 | ||||||
|  | +-->
 | ||||||
|  | +    <xsl:template match="optionList">
 | ||||||
|  | +        <xsl:for-each select="group">
 | ||||||
|  | +            <xsl:text><![CDATA[
 | ||||||
|  | +.SS]]></xsl:text>
 | ||||||
|  | +            <xsl:text>
</xsl:text>
 | ||||||
|  | +            <xsl:value-of select="configItem/description"/>
 | ||||||
|  | +            <xsl:text><![CDATA[
 | ||||||
|  | +.BR
 | ||||||
|  | +.TS
 | ||||||
|  | +left,box;
 | ||||||
|  | +lB lB
 | ||||||
|  | +___
 | ||||||
|  | +lB l.
 | ||||||
|  | +Option	Description
 | ||||||
|  | +]]></xsl:text>
 | ||||||
|  | +            <xsl:for-each select="option">
 | ||||||
|  | +                <xsl:value-of select="configItem/name"/>
 | ||||||
|  | +                <xsl:text>	</xsl:text>
 | ||||||
|  | +                <xsl:value-of select="configItem/description"/>
 | ||||||
|  | +                <xsl:text>
</xsl:text>
 | ||||||
|  | +            </xsl:for-each>
 | ||||||
|  | +            <xsl:text><![CDATA[
 | ||||||
|  | +.TE
 | ||||||
|  | +
 | ||||||
|  | +]]></xsl:text>
 | ||||||
|  | +        </xsl:for-each>
 | ||||||
|  | +    </xsl:template>
 | ||||||
|  | +</xsl:stylesheet>
 | ||||||
|  | -- 
 | ||||||
|  | 1.7.5.4 | ||||||
|  | 
 | ||||||
| @ -7,7 +7,7 @@ | |||||||
| Summary: X Keyboard Extension configuration data | Summary: X Keyboard Extension configuration data | ||||||
| Name: xkeyboard-config | Name: xkeyboard-config | ||||||
| Version: 2.3 | Version: 2.3 | ||||||
| Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{dist} | Release: 2%{?gitdate:.%{gitdate}git%{gitversion}}%{dist} | ||||||
| License: MIT | License: MIT | ||||||
| Group: User Interface/X | Group: User Interface/X | ||||||
| URL: http://www.freedesktop.org/wiki/Software/XKeyboardConfig | URL: http://www.freedesktop.org/wiki/Software/XKeyboardConfig | ||||||
| @ -18,6 +18,7 @@ Source2:    commitid | |||||||
| %else | %else | ||||||
| Source0:    ftp://ftp.x.org/pub/individual/data/%{name}/%{name}-%{version}.tar.bz2 | Source0:    ftp://ftp.x.org/pub/individual/data/%{name}/%{name}-%{version}.tar.bz2 | ||||||
| %endif | %endif | ||||||
|  | Patch01:    0001-Use-XSL-to-generate-man-page-from-the-rules-XML.patch | ||||||
| 
 | 
 | ||||||
| BuildArch: noarch | BuildArch: noarch | ||||||
| 
 | 
 | ||||||
| @ -31,6 +32,7 @@ BuildRequires: git-core | |||||||
| BuildRequires: automake autoconf libtool pkgconfig | BuildRequires: automake autoconf libtool pkgconfig | ||||||
| BuildRequires: glib2-devel | BuildRequires: glib2-devel | ||||||
| BuildRequires: xorg-x11-proto-devel libX11-devel | BuildRequires: xorg-x11-proto-devel libX11-devel | ||||||
|  | BuildRequires: libxslt | ||||||
| 
 | 
 | ||||||
| %description | %description | ||||||
| This package contains configuration data used by the X Keyboard Extension  | This package contains configuration data used by the X Keyboard Extension  | ||||||
| @ -56,15 +58,18 @@ if [ -z "$GIT_COMMITTER_NAME" ]; then | |||||||
|     git config user.email "x@fedoraproject.org" |     git config user.email "x@fedoraproject.org" | ||||||
|     git config user.name "Fedora X Ninjas" |     git config user.name "Fedora X Ninjas" | ||||||
| fi | fi | ||||||
|  | git commit -am "%{name} %{version}" | ||||||
| %else | %else | ||||||
| git init | git init | ||||||
| if [ -z "$GIT_COMMITTER_NAME" ]; then | if [ -z "$GIT_COMMITTER_NAME" ]; then | ||||||
|     git config user.email "x@fedoraproject.org" |     git config user.email "x@fedoraproject.org" | ||||||
|     git config user.name "Fedora X Ninjas" |     git config user.name "Fedora X Ninjas" | ||||||
| fi | fi | ||||||
|  | git add . | ||||||
|  | git commit -a -q -m "%{name} %{version} baseline." | ||||||
| %endif | %endif | ||||||
| 
 | 
 | ||||||
| #git am -p1 $(awk '/^Patch.*:/ { print "%{_sourcedir}/"$2 }' %{_specdir}/%{name}.spec) | git am -p1 $(awk '/^Patch.*:/ { print "%{_sourcedir}/"$2 }' %{_specdir}/%{name}.spec) | ||||||
| 
 | 
 | ||||||
| %build | %build | ||||||
| intltoolize | intltoolize | ||||||
| @ -99,12 +104,18 @@ rm -f $RPM_BUILD_ROOT%{_datadir}/X11/xkb/compiled | |||||||
| %{_datadir}/X11/xkb/rules/xorg | %{_datadir}/X11/xkb/rules/xorg | ||||||
| %{_datadir}/X11/xkb/rules/xorg.lst | %{_datadir}/X11/xkb/rules/xorg.lst | ||||||
| %{_datadir}/X11/xkb/rules/xorg.xml | %{_datadir}/X11/xkb/rules/xorg.xml | ||||||
|  | %{_mandir}/man7/xkeyboard-config.* | ||||||
| 
 | 
 | ||||||
| %files devel | %files devel | ||||||
| %defattr(-,root,root,-) | %defattr(-,root,root,-) | ||||||
| %{_datadir}/pkgconfig/xkeyboard-config.pc | %{_datadir}/pkgconfig/xkeyboard-config.pc | ||||||
| 
 | 
 | ||||||
| %changelog | %changelog | ||||||
|  | * Tue Jun 14 2011 Peter Hutterer <peter.hutterer@redhat.com> 2.3-2 | ||||||
|  | - Add 0001-Use-XSL-to-generate-man-page-from-the-rules-XML.patch, ship | ||||||
|  |   man-page | ||||||
|  | - Fix up broken git repo initialization when building from a tarball | ||||||
|  | 
 | ||||||
| * Thu Jun 02 2011 Peter Hutterer <peter.hutterer@redhat.com> 2.3-1 | * Thu Jun 02 2011 Peter Hutterer <peter.hutterer@redhat.com> 2.3-1 | ||||||
| - xkeyboard-config 2.3 | - xkeyboard-config 2.3 | ||||||
| 
 | 
 | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user