diff options
author | Jack Humbert <jack.humb@gmail.com> | 2017-07-07 11:55:23 -0400 |
---|---|---|
committer | Jack Humbert <jack.humb@gmail.com> | 2017-07-07 11:55:23 -0400 |
commit | 8655d4f4948b2deef7844503c8d690f23ac1a062 (patch) | |
tree | b2c6effc9d6cd5b5b43933a1e53b8bf17e9e82cf /lib/lufa/LUFA/StudioIntegration/XDK/lufa_extension_transform.xslt | |
parent | 1896c76a2928c96f9ab7947bec2ef8dd37623cff (diff) | |
parent | 60b30c036397cb5627fa374bb930794b225daa29 (diff) | |
download | qmk_firmware-8655d4f4948b2deef7844503c8d690f23ac1a062.tar.gz |
Merge commit '60b30c036397cb5627fa374bb930794b225daa29' as 'lib/lufa'
Diffstat (limited to 'lib/lufa/LUFA/StudioIntegration/XDK/lufa_extension_transform.xslt')
-rw-r--r-- | lib/lufa/LUFA/StudioIntegration/XDK/lufa_extension_transform.xslt | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/lib/lufa/LUFA/StudioIntegration/XDK/lufa_extension_transform.xslt b/lib/lufa/LUFA/StudioIntegration/XDK/lufa_extension_transform.xslt new file mode 100644 index 000000000..c3fb82294 --- /dev/null +++ b/lib/lufa/LUFA/StudioIntegration/XDK/lufa_extension_transform.xslt @@ -0,0 +1,68 @@ +<!-- + LUFA Library + Copyright (C) Dean Camera, 2017. + + dean [at] fourwalledcubicle [dot] com + www.lufa-lib.org +--> + +<!-- Atmel Studio framework Extension XML transform file --> + +<!-- Creates an extension.xml document from a given manifest list of XML files, + and adds appropriate documentation base URI entries and version + information. --> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> + <xsl:output method="xml" omit-xml-declaration="yes"/> + + <!-- Store the LUFA version mentioned in the root node for later use --> + <xsl:param name="lufa-version" select="lufa-manifest/@version"/> + + <!-- Read manifest list and then process all FDK nodes in the referenced + document --> + <xsl:template match="lufa-manifest"> + <xsl:comment>This file has been automatically generated from the LUFA Atmel Studio integration XML files.</xsl:comment> + + <extension-container xmlversion="2.0"> + <xsl:for-each select="xml-source"> + <xsl:apply-templates select="document(@filename)/lufa/extension-container/*"/> + </xsl:for-each> + </extension-container> + </xsl:template> + + <!-- Recursively match and copy/process all nodes/attributes --> + <xsl:template match="@*|node()"> + <xsl:copy> + <xsl:apply-templates select="@*|node()"/> + </xsl:copy> + </xsl:template> + + <!-- Update the extension version to the version of LUFA being used --> + <xsl:template match="extension/@version"> + <xsl:attribute name="version"> + <xsl:value-of select="substring($lufa-version, 1, 2)"/> + <xsl:text>.</xsl:text> + <xsl:value-of select="substring($lufa-version, 3, 2)"/> + <xsl:text>.</xsl:text> + <xsl:value-of select="substring($lufa-version, 5, 2)"/> + </xsl:attribute> + </xsl:template> + + <!-- Update the extension online help URLs to the version of LUFA being + used --> + <xsl:template match="online-help/*/@baseurl"> + <xsl:attribute name="baseurl"> + <xsl:value-of select="current()"/> + <xsl:value-of select="$lufa-version"/> + <xsl:text>/html/</xsl:text> + </xsl:attribute> + </xsl:template> + + <xsl:template match="online-help/index-page/@url"> + <xsl:attribute name="url"> + <xsl:value-of select="current()"/> + <xsl:value-of select="$lufa-version"/> + <xsl:text>/html/</xsl:text> + </xsl:attribute> + </xsl:template> + +</xsl:stylesheet> |