Nimbin[12]?Mirrors & Forks / jhalfs / commits / 695a921

jhalfs git · trunk

jhalfs LFS build automation (mirror)

lfs mirror bash · first commit 2005-09-11 · last commit 2024-02-13 (2 years ago) · synced 3 days ago · upstream: git.linuxfromscratch.org/jhalfs

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.gz

Adapt to new book layout in Xorg libraries

Pierre Labastie · 2024-02-07 14:09 · 695a921796d38d5e5bb8725b27631a9d03723076

 BLFS/xsl/make_book.xsl | 21 ++++++++++++++++-----
 1 file changed, 16 insertions(+), 5 deletions(-)

diff --git a/BLFS/xsl/make_book.xsl b/BLFS/xsl/make_book.xsl
index 3cf4401..556ef37 100644
--- a/BLFS/xsl/make_book.xsl
+++ b/BLFS/xsl/make_book.xsl
@@ -725,30 +725,41 @@ name=$(echo $packagedir | sed 's/-[[:digit:]].*//')
   </xsl:template>
 
   <xsl:template name="inst-instr">
-    <!-- This template is necessary because of the "kapidox" case in kf5:
+    <!-- This template is necessary because of the "libpciaccess" case in Xorg
+         libraries and 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...
+         *except* for Xorg libraries and kf5, where a popd occurs inside a
+         case for libpciaccess and 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"-->
+      <!-- first the cases where 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:when test="$package='libpciaccess'">
+            <!-- only the instructions inside the "case" and before popd -->
+            <xsl:copy-of select="substring-after(substring-before($inst-instr,'popd'),'libpciaccess* )')"/>
+          </xsl:when>
           <xsl:otherwise>
-            <!-- all what is after the esac -->
+            <!-- We first copy what is before the first "as_root", then what is
+            after the first "popd", by calling the template again. The
+            reason for excluding "as_root" is that the output template takes
+            special action when it sees "as_root", which generates bogus code
+            if there are several of those...-->
+            <xsl:copy-of select="substring-before($inst-instr,'as_root')"/>
             <xsl:call-template name="inst-instr">
               <xsl:with-param
                 name="inst-instr"
-                select="substring-after($inst-instr,'esac&#xA;')"/>
+                select="substring-after($inst-instr,'popd')"/>
             </xsl:call-template>
           </xsl:otherwise>
         </xsl:choose>