[jhalfs] 06/14: Get completely rid of PROGNAME

"Git Owner" ([email protected] via alfs-discuss Mailing List) <[email protected]>
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 8825e695928037d7fa0d1ca5f4b048bca3a53164
Author: Pierre Labastie <[email protected]>
AuthorDate: Wed Mar 30 17:45:35 2022 +0200

    Get completely rid of PROGNAME
    
    There is only one PROGNAME: lfs, so no need for a variable.
---
 Config.in                            |   6 +-
 common/libs/func_book_parser         | 196 +++++++++++++----------------------
 common/libs/func_download_pkgs       |  24 ++---
 common/libs/func_validate_configs.sh |  11 +-
 common/libs/func_wrt_Makefile        |   2 -
 jhalfs                               |   4 +-
 6 files changed, 90 insertions(+), 153 deletions(-)

diff --git a/Config.in b/Config.in
index 32dc293..1ecfe10 100644
--- a/Config.in
+++ b/Config.in
@@ -45,10 +45,6 @@ menu "BOOK Settings"
         default "sysv"         if BOOK_LFS || BLFS_SYSV
         default "systemd"      if BOOK_LFS_SYSD || BLFS_SYSD
 
-    config    PROGNAME
-        string
-        default "lfs"          if BOOK_LFS || BOOK_LFS_SYSD
-
     config    RUN_ME
         string
         default "./jhalfs run" if BOOK_LFS || BOOK_LFS_SYSD
@@ -936,7 +932,7 @@ depends on !BOOK_BLFS
 
         config    XSL
             string "XSL stylesheet"
-            default "$PROGNAME.xsl"
+            default "lfs.xsl"
 
         config    PKG_LST
             string "Package contents list"
diff --git a/common/libs/func_book_parser b/common/libs/func_book_parser
index cf1390f..9460f19 100644
--- a/common/libs/func_book_parser
+++ b/common/libs/func_book_parser
@@ -10,7 +10,7 @@ get_book() {                 #
     test `type -p git` || eval "echo \"This feature requires Git.\"
     exit 1"
 
-    echo -n "Downloading the lfs document, $COMMIT commit... "
+    echo -n "Downloading the lfs document, $COMMIT branch/tag/commit... "
 
     # Grab a fresh book if it's missing, otherwise, update it from the
     # repo. If we've already extracted the commands, move on to getting the
@@ -50,123 +50,82 @@ extract_commands() {         #
 
   # Extract the commands
   echo -n "Extracting commands for"
-  case ${PROGNAME} in
-
-    lfs)
-        echo -n " ${L_arrow}${BOLD}LFS${R_arrow} build... "
-        # The scripts pages are xincluded by the book, so must
-        # be generated for running xsltproc
-        pushd $BOOK > /dev/null
-        if [ -f process-scripts.sh ]; then
-          bash process-scripts.sh >> $LOGDIR/$LOG 2>&1
-        fi
-        # Recent git versions need version.ent to be generated
-        if [ -f git-version.sh ]; then
-          bash git-version.sh "$INITSYS" >> $LOGDIR/$LOG 2>&1
-        fi
-        popd > /dev/null
-
-        # First profile the book, for revision and arch. Note that
-        # MULTIBLIB is set to "default" if pure 64 bit book. In this
-        # profiling on arch is useless, but does not hurt either.
-        xsltproc --nonet                                      \
-                 --xinclude                                   \
-                 --stringparam profile.revision "$INITSYS"    \
-                 --stringparam profile.arch     "$MULTILIB"   \
-                 --output prbook.xml                          \
-                 $BOOK/stylesheets/lfs-xsl/profile.xsl        \
-                 $BOOK/index.xml >> $LOGDIR/$LOG 2>&1
-
-        # Use the profiled book for generating the scriptlets
-        xsltproc --nonet                                      \
-                 --stringparam testsuite      "$TEST"         \
-                 --stringparam bomb-testsuite "$BOMB_TEST"    \
-                 --stringparam ncurses5       "$NCURSES5"     \
-                 --stringparam strip          "$STRIP"        \
-                 --stringparam del-la-files   "$DEL_LA_FILES" \
-                 --stringparam full-locale    "$FULL_LOCALE"  \
-                 --stringparam timezone       "$TIMEZONE"     \
-                 --stringparam page           "$PAGE"         \
-                 --stringparam lang           "$LANG"         \
-                 --stringparam pkgmngt        "$PKGMNGT"      \
-                 --stringparam wrap-install   "$WRAP_INSTALL" \
-                 --stringparam hostname       "$HOSTNAME"     \
-                 --stringparam interface      "$INTERFACE"    \
-                 --stringparam ip             "$IP_ADDR"      \
-                 --stringparam gateway        "$GATEWAY"      \
-                 --stringparam prefix         "$PREFIX"       \
-                 --stringparam broadcast      "$BROADCAST"    \
-                 --stringparam domain         "$DOMAIN"       \
-                 --stringparam nameserver1    "$DNS1"         \
-                 --stringparam nameserver2    "$DNS2"         \
-                 --stringparam font           "$FONT"         \
-                 --stringparam fontmap        "$FONTMAP"      \
-                 --stringparam unicode        "$UNICODE"      \
-                 --stringparam keymap         "$KEYMAP"       \
-                 --stringparam local          "$LOCAL"        \
-                 --stringparam log-level      "$LOG_LEVEL"    \
-                 --stringparam script-root    "$SCRIPT_ROOT"  \
-                 --output "./${COMMANDS}/"                    \
-                 $XSL                                         \
-                 prbook.xml >> $LOGDIR/$LOG 2>&1
-# Remove flags requesting user action in some cases. Much easier here than
-# in the stylesheet...
-        sed -i 's/-iv /-v /' "./${COMMANDS}/"chapter??/*kernel*
-      ;;
-    *)  echo -n " ${L_arrow}${PROGNAME}${R_arrow} book invalid, terminate build... "
-        exit 1 ;;
-  esac
+  echo -n " ${L_arrow}${BOLD}LFS${R_arrow} build... "
+  # The scripts pages are xincluded by the book, so must
+  # be generated for running xsltproc
+  pushd $BOOK > /dev/null
+  if [ -f process-scripts.sh ]; then
+    bash process-scripts.sh >> $LOGDIR/$LOG 2>&1
+  fi
+  # Recent git versions need version.ent to be generated
+  if [ -f git-version.sh ]; then
+    bash git-version.sh "$INITSYS" >> $LOGDIR/$LOG 2>&1
+  fi
+  popd > /dev/null
+
+  # First profile the book, for revision and arch. Note that
+  # MULTIBLIB is set to "default" if pure 64 bit book. In this case,
+  # profiling on arch is useless, but does not hurt either.
+  xsltproc --nonet                                      \
+           --xinclude                                   \
+           --stringparam profile.revision "$INITSYS"    \
+           --stringparam profile.arch     "$MULTILIB"   \
+           --output prbook.xml                          \
+           $BOOK/stylesheets/lfs-xsl/profile.xsl        \
+           $BOOK/index.xml >> $LOGDIR/$LOG 2>&1
+
+  # Use the profiled book for generating the scriptlets
+  xsltproc --nonet                                      \
+           --stringparam testsuite      "$TEST"         \
+           --stringparam bomb-testsuite "$BOMB_TEST"    \
+           --stringparam ncurses5       "$NCURSES5"     \
+           --stringparam strip          "$STRIP"        \
+           --stringparam del-la-files   "$DEL_LA_FILES" \
+           --stringparam full-locale    "$FULL_LOCALE"  \
+           --stringparam timezone       "$TIMEZONE"     \
+           --stringparam page           "$PAGE"         \
+           --stringparam lang           "$LANG"         \
+           --stringparam pkgmngt        "$PKGMNGT"      \
+           --stringparam wrap-install   "$WRAP_INSTALL" \
+           --stringparam hostname       "$HOSTNAME"     \
+           --stringparam interface      "$INTERFACE"    \
+           --stringparam ip             "$IP_ADDR"      \
+           --stringparam gateway        "$GATEWAY"      \
+           --stringparam prefix         "$PREFIX"       \
+           --stringparam broadcast      "$BROADCAST"    \
+           --stringparam domain         "$DOMAIN"       \
+           --stringparam nameserver1    "$DNS1"         \
+           --stringparam nameserver2    "$DNS2"         \
+           --stringparam font           "$FONT"         \
+           --stringparam fontmap        "$FONTMAP"      \
+           --stringparam unicode        "$UNICODE"      \
+           --stringparam keymap         "$KEYMAP"       \
+           --stringparam local          "$LOCAL"        \
+           --stringparam log-level      "$LOG_LEVEL"    \
+           --stringparam script-root    "$SCRIPT_ROOT"  \
+           --output "./${COMMANDS}/"                    \
+           $XSL                                         \
+           prbook.xml >> $LOGDIR/$LOG 2>&1
+  # Remove flags requesting user action in some cases. Much easier here than
+  # in the stylesheet...
+  sed -i 's/-iv /-v /' "./${COMMANDS}/"chapter??/*kernel*
 
   echo "done"
 
   # Make the scripts executable.
   chmod -R +x "$JHALFSDIR/${COMMANDS}"
-
-  # Create the packages file. We need it for proper Makefile creation
-  # lfs does not use this anymore, but this is taken care in the
-  # function body
-  create_package_list
-  # On the other hand, lfs needs two auxiliary files
-  if [ "${PROGNAME}" = lfs ]; then
-    create_chroot_scripts
-    create_kernfs_scripts
-  fi
+  create_chroot_scripts
+  create_kernfs_scripts
 
   # we create the VERSION variable here. Should maybe go into its own
   # function. But at this point we can use the profiled xml to get
   # version from lfs-release in the lfs case.
-  case $PROGNAME in
-    lfs)
-      VERSION=$(grep 'echo.*lfs-release' prbook.xml | sed 's/.*echo[ ]*\([^ ]*\).*/\1/')
-      ;;
-    *)
-      VERSION=$(xmllint --noent $BOOK/prologue/bookinfo.xml 2>/dev/null | grep subtitle | sed -e 's/^.*ion //'  -e 's/<\/.*//')  ;;
-  esac
+  VERSION=$(grep 'echo.*lfs-release' prbook.xml | sed 's/.*echo[ ]*\([^ ]*\).*/\1/')
 
   # Done. Moving on...
   get_sources
 }
 
-#----------------------------#
-create_package_list() {      #
-#----------------------------#
-
-  # Create the packages file. We need it for proper Makefile creation
-  rm -f pkg_tarball_list
-  echo -n "Creating <${PROGNAME}> list of tarball names for $BOOK"
-  if [ ! -z "$ARCH" ] ; then echo -n " $ARCH" ; fi
-  echo -n "... "
-  case ${PROGNAME} in
-    lfs)
-        # lfs does not use the package list anymore
-      ;;
-    *)
-  esac
-
-  echo "done"
-
-}
-
 #----------------------------#
 create_chroot_scripts() {    #
 #----------------------------#
@@ -175,14 +134,9 @@ create_chroot_scripts() {    #
   echo -n "Creating chroot commands scripts from $BOOK"
   if [ ! -z $ARCH ] ; then echo -n " $ARCH" ; fi
   echo -n "... "
-  case ${PROGNAME} in
-    lfs)
-      xsltproc --nonet --xinclude \
-               -o chroot-scripts/ chroot.xsl \
-               $BOOK/chapter0?/*chroot*.xml >> $LOGDIR/$LOG 2>&1
-      ;;
-    *)
-  esac
+  xsltproc --nonet --xinclude \
+           -o chroot-scripts/ chroot.xsl \
+           $BOOK/chapter0?/*chroot*.xml >> $LOGDIR/$LOG 2>&1
   echo "done"
 
 }
@@ -196,17 +150,13 @@ create_kernfs_scripts() {    #
   echo -n "Creating virtual kernel FS commands scripts from $BOOK"
   if [ ! -z $ARCH ] ; then echo -n " $ARCH" ; fi
   echo -n "... "
-  case ${PROGNAME} in
-    lfs)
-      xsltproc --nonet \
-               -o kernfs-scripts/devices.sh kernfs.xsl \
-               $BOOK/*/kernfs.xml >> $LOGDIR/$LOG 2>&1
-      xsltproc --nonet \
-               -o kernfs-scripts/teardown.sh kernfs.xsl \
-               $BOOK/chapter??/reboot.xml >> $LOGDIR/$LOG 2>&1
-      ;;
-    *)
-  esac
+  xsltproc --nonet \
+           -o kernfs-scripts/devices.sh kernfs.xsl \
+           $BOOK/*/kernfs.xml >> $LOGDIR/$LOG 2>&1
+  xsltproc --nonet \
+           -o kernfs-scripts/teardown.sh kernfs.xsl \
+           $BOOK/chapter??/reboot.xml >> $LOGDIR/$LOG 2>&1
+
   echo "done"
 
 }
diff --git a/common/libs/func_download_pkgs b/common/libs/func_download_pkgs
index de6e218..f2b23c7 100644
--- a/common/libs/func_download_pkgs
+++ b/common/libs/func_download_pkgs
@@ -130,20 +130,16 @@ create_urls() {              #
 #----------------------------#
   cd $JHALFSDIR
 
-  case ${PROGNAME} in
-    lfs)
-        echo -n "Creating LFS specific URLs file"
-        xsltproc --nonet --xinclude                \
-                 --stringparam server "$SERVER"    \
-                 --stringparam family lfs          \
-                 --stringparam pkgmngt "$PKGMNGT"  \
-                 --stringparam revision "$INITSYS" \
-                 --output ../sources/urls.lst      \
-                 urls.xsl                          \
-                 $BOOK/chapter03/chapter03.xml >>$LOGDIR/$LOG 2>&1
-        echo " ...OK"
-      ;;
-  esac
+  echo -n "Creating URLs file... "
+  xsltproc --nonet --xinclude                \
+           --stringparam server "$SERVER"    \
+           --stringparam family lfs          \
+           --stringparam pkgmngt "$PKGMNGT"  \
+           --stringparam revision "$INITSYS" \
+           --output ../sources/urls.lst      \
+           urls.xsl                          \
+           $BOOK/chapter03/chapter03.xml >>$LOGDIR/$LOG 2>&1
+  echo "OK"
 
   cd $BUILDDIR/sources
 
diff --git a/common/libs/func_validate_configs.sh b/common/libs/func_validate_configs.sh
index 3ce8fff..5d0b784 100644
--- a/common/libs/func_validate_configs.sh
+++ b/common/libs/func_validate_configs.sh
@@ -5,12 +5,10 @@ declare -r dotSTR=".................."
 validate_config() {          # Are the config values sane (within reason)
 #----------------------------#
 : <<inline_doc
-      Validates the configuration parameters. The global var PROGNAME selects the
-    parameter list.
+      Validates the configuration parameters.
 
     input vars: none
     externals:  color constants
-                PROGNAME (lfs only as of February 28th, 2022)
     modifies:   none
     returns:    nothing
     on error:   write text to console and dies
@@ -18,7 +16,7 @@ validate_config() {          # Are the config values sane (within reason)
 inline_doc
 
   # Common settings by Config.in sections and books family
-  local -r     BOOK_common="BOOK CUSTOM_TOOLS"
+  local -r     BOOK_common="COMMIT BOOK CUSTOM_TOOLS"
   local -r  GENERAL_common="LUSER LGROUP LHOME BUILDDIR CLEAN GETPKG SRC_ARCHIVE \
                             SERVER RETRYSRCDOWNLOAD RETRYDOWNLOADCNT DOWNLOADTIMEOUT \
                             RUNMAKE"
@@ -123,8 +121,7 @@ inline_doc
   }
 
   set +e
-  PARAM_GROUP=${PROGNAME}_PARAM_LIST
-  for config_param in ${!PARAM_GROUP}; do
+  for config_param in $lfs_PARAM_LIST; do
     case $config_param in
       # Envvars that depend on other settings to be displayed
       COMPARE)          [[ ! "$COMPARE" = "y" ]] && echo -e "`eval echo $PARAM_VALS`" ;;
@@ -208,7 +205,7 @@ inline_doc
                  fi
                fi
                ;;
-      # Display non-validated envars found in ${PROGNAME}_PARAM_LIST
+      # Display non-validated envars found in lfs_PARAM_LIST
       * ) echo -e "`eval echo $PARAM_VALS`" ;;
 
     esac
diff --git a/common/libs/func_wrt_Makefile b/common/libs/func_wrt_Makefile
index 15ef469..7c5f75a 100644
--- a/common/libs/func_wrt_Makefile
+++ b/common/libs/func_wrt_Makefile
@@ -233,7 +233,6 @@ LUSER_wrt_RunAsUser() {            # Calculate time with perl, footer to log fil
 cat << EOF
 	@source ~/.bashrc && \\
 	\$(CMDSDIR)/`dirname $file`/\$@ >> \$(LOGDIR)/\$@$version 2>&1 && \\
-	if [ "${PROGNAME}" != lfs ]; then \$(PRT_DU) >>logs/\$@$version; fi
 EOF
 ) >> $MKFILE.tmp
 }
@@ -250,7 +249,6 @@ CHROOT_wrt_RunAsRoot() {           #
 cat << EOF
 	@source envars && \\
 	\$(crCMDSDIR)/`dirname $file`/\$@ >>\$(crLOGDIR)/\$@$version 2>&1 && \\
-	if [ "${PROGNAME}" != lfs ]; then \$(PRT_DU_CR) >>logs/\$@$version; fi
 EOF
 ) >> $MKFILE.tmp
 
diff --git a/jhalfs b/jhalfs
index eaa58ae..3faf4a6 100755
--- a/jhalfs
+++ b/jhalfs
@@ -204,7 +204,7 @@ declare -r COMMANDS=lfs-commands
 
 # Set true internal variables
 COMMON_DIR="common"
-PACKAGE_DIR=$(echo "$PROGNAME" | tr '[:lower:]' '[:upper:]')
+PACKAGE_DIR=LFS
 MODULE=$PACKAGE_DIR/master.sh
 PKGMNGTDIR="pkgmngt"
 # The name packageManager.xml is hardcoded in *.xsl, so no variable.
@@ -342,7 +342,7 @@ if [[ "$REBUILD_MAKEFILE" = "n" ]] ; then
   export XSL=$JHALFSDIR/${XSL}
 
 # Copy packageManager.xml, if needed
-  [[ "$PKGMNGT" = "y" ]] && [[ "$PROGNAME" = "lfs" ]] && {
+  [[ "$PKGMNGT" = "y" ]] && {
     sed s@BOOK@"$BOOK"@ "$PKGMNGTDIR/packageManager.xml" > \
                         "$JHALFSDIR/"packageManager.xml
     cp "$PKGMNGTDIR/packInstall.sh" "$JHALFSDIR/"

-- 
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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.