jhalfs git · trunk
jhalfs LFS build automation (mirror)
Python 78.4% Shell 19.8% Makefile 1.8%git clone https://git.christianimmanuel.de/mirrors-forks/jhalfs.gitwget https://git.christianimmanuel.de/mirrors-forks/jhalfs/archive/jhalfs.tar.gzComments for the inst-instr template
kf5 has one push and to popd in its instructions. We used to just use what was between push and popd. But now, we need to only use what is in the case instruction for one package, and what is after the esac for all the others.
BLFS/xsl/make_book.xsl | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/BLFS/xsl/make_book.xsl b/BLFS/xsl/make_book.xsl index 42b268a..cacdc12 100644 --- a/BLFS/xsl/make_book.xsl +++ b/BLFS/xsl/make_book.xsl @@ -704,24 +704,36 @@ name=$(echo $packagedir | sed 's/-[[:digit:]].*//') </xsl:template> <xsl:template name="inst-instr"> + <!-- This template is necessary because of the "kapidox" case in kf5: + Normally, the general instructions extract the package and change + to the extracted dir for running the installation instructions. + When installing a sub-package of a compound package, the installation + instructions to be run are located between a pushd and a popd, + *except* for kf5, where a popd occurs inside a case for kapidox... + So we call this template with a "inst-instr" string that contains + everything after the pushd.--> <xsl:param name="inst-instr"/> <xsl:param name="package"/> <xsl:choose> + <!-- first the case of kf5: there are two "popd"--> <xsl:when test="contains(substring-after($inst-instr,'popd'),'popd')"> <xsl:choose> <xsl:when test="$package='kapidox'"> + <!-- only the instructions inside the "case" and before popd --> <xsl:copy-of select="substring-after(substring-before($inst-instr,'popd'),'kapidox)')"/> </xsl:when> <xsl:otherwise> - <xsl:copy-of select="substring-before($inst-instr,'kapidox)')"/> + <!-- all what is after the esac --> <xsl:call-template name="inst-instr"> - <xsl:with-param name="inst-instr" - select="substring-after($inst-instr,';;')"/> + <xsl:with-param + name="inst-instr" + select="substring-after($inst-instr,'esac
')"/> </xsl:call-template> </xsl:otherwise> </xsl:choose> </xsl:when> <xsl:otherwise> + <!-- normal case: everything that is before popd --> <xsl:copy-of select="substring-before($inst-instr,'popd')"/> </xsl:otherwise> </xsl:choose>