[jhalfs] 01/06: BLFS tools: allow to select a whole submenu

"Git Owner" ([email protected] via alfs-discuss Mailing List) <[email protected]> Mon, 01 Dec 2025 17:41:38 +0000
Newsgroups gmane.linux.lfs.automated
Message-ID <[email protected]>
This is an automated email from the git hooks/post-receive script.

git pushed a commit to branch trunk
in repository jhalfs.

commit 660211740d1e870061fd8dcb6ff55eb1feaa7483
Author: Pierre Labastie <[email protected]>
AuthorDate: Mon Dec 1 17:51:08 2025 +0100

    BLFS tools: allow to select a whole submenu
    
    To do so, we make all menus "tristate". The three values generate:
    - n: menu inactive; nothing below it is selected
    - m: menu active; items below it can be manually selected
    - y: menu active; items below it are all selected
    Note that by default, those values are displayed as:
    - n: < >
    - m: <M>
    - y: <*>
    which is not very explicit... Menuconfig has to be patched to
    change the display. This is done in next commit.
---
 BLFS/xsl/gen_config.xsl | 47 ++++++++++++++++++++++-------------------------
 1 file changed, 22 insertions(+), 25 deletions(-)

diff --git a/BLFS/xsl/gen_config.xsl b/BLFS/xsl/gen_config.xsl
index 59a0f16..601e79d 100644
--- a/BLFS/xsl/gen_config.xsl
+++ b/BLFS/xsl/gen_config.xsl
@@ -7,6 +7,10 @@
               encoding='ISO-8859-1'/>
 
   <xsl:template match="/">
+    <xsl:text>config MODULES
+    bool
+    default y
+</xsl:text>
     <xsl:apply-templates select="//list"/>
     <xsl:text>comment ""
 
@@ -204,14 +208,13 @@ endmenu
       <xsl:text>menuconfig&#9;MENU_</xsl:text>
       <xsl:value-of select="@id"/>
       <xsl:text>
-bool&#9;"</xsl:text>
+tristate&#9;"</xsl:text>
       <xsl:value-of select="name"/>
       <xsl:text>"
-default&#9;n
 
 if&#9;MENU_</xsl:text>
       <xsl:value-of select="@id"/>
-      <xsl:text>
+      <xsl:text> != n
 
 </xsl:text>
       <xsl:apply-templates select="sublist"/>
@@ -229,14 +232,16 @@ if&#9;MENU_</xsl:text>
       <xsl:text>&#9;menuconfig&#9;MENU_</xsl:text>
       <xsl:value-of select="@id"/>
       <xsl:text>
-&#9;bool&#9;"</xsl:text>
+&#9;tristate&#9;"</xsl:text>
       <xsl:value-of select="name"/>
       <xsl:text>"
-&#9;default&#9;n
+&#9;&#9;default&#9;y if MENU_</xsl:text>
+      <xsl:value-of select="../@id"/>
+      <xsl:text> = y
 
 &#9;if&#9;MENU_</xsl:text>
       <xsl:value-of select="@id"/>
-      <xsl:text>
+      <xsl:text> != n
 
 </xsl:text>
       <xsl:apply-templates select="package"/>
@@ -263,7 +268,9 @@ if&#9;MENU_</xsl:text>
         <xsl:text>]</xsl:text>
       </xsl:if>
       <xsl:text>"
-&#9;&#9;default&#9;n
+&#9;&#9;default&#9;y if MENU_</xsl:text>
+      <xsl:value-of select="../@id"/>
+      <xsl:text> = y
 
 </xsl:text>
     </xsl:if>
@@ -273,14 +280,16 @@ if&#9;MENU_</xsl:text>
       <xsl:text>&#9;&#9;menuconfig&#9;MENU_</xsl:text>
       <xsl:value-of select="translate(name,' ()','___')"/>
       <xsl:text>
-&#9;&#9;bool&#9;"</xsl:text>
+&#9;&#9;tristate&#9;"</xsl:text>
       <xsl:value-of select="name"/>
       <xsl:text>"
-&#9;&#9;default&#9;n
+&#9;&#9;default&#9;y if MENU_</xsl:text>
+      <xsl:value-of select="../@id"/>
+      <xsl:text> = y
 
 &#9;&#9;if&#9;MENU_</xsl:text>
       <xsl:value-of select="translate(name,' ()','___')"/>
-      <xsl:text>
+      <xsl:text> !=n
 
 </xsl:text>
       <xsl:apply-templates select="module"/>
@@ -307,23 +316,11 @@ if&#9;MENU_</xsl:text>
         <xsl:text>]</xsl:text>
       </xsl:if>
       <xsl:text>"
-&#9;&#9;&#9;default&#9;</xsl:text>
-      <xsl:choose>
-      <!-- for compound packages, default to selecting all the subpackages-->
-        <xsl:when test="contains(../name,'xorg') or
-                        contains(../name,'plasma') or
-                        contains(../name,'kf6') or
-                        contains(../name,'xcb-utilities')">
-          <xsl:text>y
-
-</xsl:text>
-        </xsl:when>
-        <xsl:otherwise>
-          <xsl:text>n
+&#9;&#9;&#9;default&#9; y if MENU_</xsl:text>
+      <xsl:value-of select="translate(../name,' ()','___')"/>
+      <xsl:text> = y
 
 </xsl:text>
-        </xsl:otherwise>
-      </xsl:choose>
     </xsl:if>
   </xsl:template>
 

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.

-- 
http://lists.linuxfromscratch.org/sympa/info/alfs-discuss
Unsubscribe: See the above information page