Nimbin[12]?Mirrors & Forks / jhalfs / commits / 63190e6

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

Only pass MAKEFLAGS and NINJAJOBS to old books

Pierre Labastie · 2023-11-15 17:16 · 63190e6547cbe5f05d6f3db106f8ed81bd730b0c

Also pass them to binutils-pass1 if calculating the SBU
 LFS/master.sh | 24 ++++++++++++++++++++----
 1 file changed, 20 insertions(+), 4 deletions(-)

diff --git a/LFS/master.sh b/LFS/master.sh
index 2aa9843..d28b5cb 100644
--- a/LFS/master.sh
+++ b/LFS/master.sh
@@ -127,11 +127,19 @@ chapter_targets() {       #
 
       # If using optimizations, write the instructions
       case "${OPTIMIZE}$1${nb_chaps}${this_script}${REALSBU}" in
-          0* | *binutils-pass1y | 15* | 167* | 177*)
+          0* | *binutils-pass1y | 15* | 167* | 177*) ;;
+          *kernel*) ;; # No CFLAGS for kernel
+          *)  wrt_optimize "$name" ;;
+      esac
+      # MAKEFLAGS is set even if no optimization now.
+      # For new books, the scripts contain the MAKEFLAGS, so no
+      # need to set them in the envars except if binutils-pass1
+      # and REALSBU=y. For Old books, N_PARALLEL and JH_MAKEFLAGS
+      # are set and we must set the envars.
+      case "${mkf_included}${this_script}${REALSBU}" in
+          *binutils-pass1y)
               wrt_makeflags "$name" "-j1" "1" ;;
-          *kernel*) # No CFLAGS for kernel
-              wrt_makeflags "$name" "$JH_MAKEFLAGS" "$N_PARALLEL" ;;
-          *)  wrt_optimize "$name" &&
+          n*)
               wrt_makeflags "$name" "$JH_MAKEFLAGS" "$N_PARALLEL" ;;
       esac
     fi
@@ -252,6 +260,14 @@ build_Makefile() {           #
 #  echo nb_chaps: $nb_chaps
 # end DEBUG
 
+  # We need to know if we have an old or a new book (with included MAKEFLAGS)
+  # we grep for MAKEFLAGS in chapter04 to find out.
+  if grep -q MAKEFLAGS chapter04/*; then
+	  mkf_included=y
+  else
+	  mkf_included=n
+  fi
+
   # Make a temporary file with all script targets
   for (( i = 4; i < nb_chaps+4; i++ )); do
     chapter_targets $i