The preliminary version of my Paco patch for jhahlfs seems to be ready. IMHO it's a mess, but it works.
Any improvements will be appreciated.

I've run it once with HLFS-Glibc, and it looks to be ok.
It's based on jhalfs-svn (2344)

Notes:
- It's for HLFS part og jhalfs only.
- Should probably start with a clean svn download, and apply the patch.
- The patch will modify (in the HLFS subdir) jhahlfs, jhahlfs.conf, and create paco-build.sh script. - Paco will install with /usr prefix, and sysconfdir /etc. If prefix is changed, it will have to be changed in both paco-build.sh and jhahlfs.conf. - Paco-1.10.3 should not be used. (There's a bug in the preloader library). Either use 1.10.2 or latest development version, and change the filename in jhahlfs.conf accordingly.
- The paco source archive have to be manually put into the sources dir.

Enjoy :)

Btw: I'm running a full compile of the LFS part right now, and will post another patch later or tomorrow if it's working.


Tor Olav
diff -Naur jhalfs-svn-2344/HLFS/jhahlfs jhalfs/HLFS/jhahlfs
--- jhalfs-svn-2344/HLFS/jhahlfs        2006-03-03 21:58:07.000000000 +0100
+++ jhalfs/HLFS/jhahlfs 2006-03-16 14:45:13.000000000 +0100
@@ -948,7 +948,11 @@
        @ROOT=\`head -n1 /tmp/unpacked | sed '[EMAIL PROTECTED]/@@;s@/.*@@'\` 
&& \\
        echo "export PKGDIR=\$(SRC)/\$\$ROOT" > envars && \\
        echo "export target=$(uname -m)-${TARGET}" >> envars && \\
-       echo "export ldso=/lib/${LOADER}" >> envars
+       echo "export ldso=/lib/${LOADER}" >> envars && \\
+       echo "export PACO_INCLUDE=$PACO_INCLUDE" >> envars && \\
+        echo "export PACO_EXCLUDE=\$(SRC):$PACO_EXCLUDE" >> envars && \\
+       echo "export PACO_TMPFILE=$PACO_TMPFILE" >> envars && \\
+       echo "export LD_PRELOAD=$LD_PRELOAD" >> envars
 EOF
 ) >> $MKFILE.tmp
     fi
@@ -976,12 +980,23 @@
 EOF
 ) >> $MKFILE.tmp
 
+    # UGLY, but will avoid using Paco up to linux-libc-headers
+    elif [[ `_IS_ $this_script chroot` ]] || [[ `_IS_ $this_script 
changingowner` ]] || [[ `_IS_ $this_script creatingdirs` ]] || [[ `_IS_ 
$this_script createfiles` ]] || [[ `_IS_ $this_script pwdgroup` ]] || [[ `_IS_ 
$this_script devices` ]] || [[ `_IS_ $this_script readjusting` ]] ; then
+(
+cat << EOF
+       @echo -e "\n\`date\`\n\nKB: \`du -skx --exclude={0,1}??-* \$(HLFS)\`\n" 
>logs/$this_script && \\
+       \$(CHROOT1) 'cd /jhahlfs && source envars && /jhahlfs/commands/$file 
>>/jhahlfs/logs/$this_script 2>&1' && \\
+       echo -e "\n\`date\`\n\nKB: \`du -skx --exclude={0,1}??-* \$(HLFS)\`\n" 
>>logs/$this_script
+EOF
+) >> $MKFILE.tmp
+
     # The rest of Chapter06
     else
 (
 cat << EOF
        @echo -e "\n\`date\`\n\nKB: \`du -skx --exclude={0,1}??-* \$(HLFS)\`\n" 
>logs/$this_script && \\
-       \$(CHROOT1) 'cd /jhahlfs && source envars && /jhahlfs/commands/$file 
>>/jhahlfs/logs/$this_script 2>&1' && \\
+       \$(CHROOT1) 'cd /jhahlfs && source envars && rm -f $PACO_TMPFILE && 
/jhahlfs/commands/$file >>/jhahlfs/logs/$this_script 2>&1' && \\
+       \$(CHROOT1) 'cd /jhahlfs && source envars && $PACO_PREFIX/bin/paco 
--log --package=$name-$vrs < $PACO_TMPFILE && rm -f $PACO_TMPFILE'&& \\
        echo -e "\n\`date\`\n\nKB: \`du -skx --exclude={0,1}??-* \$(HLFS)\`\n" 
>>logs/$this_script
 EOF
 ) >> $MKFILE.tmp
@@ -1020,6 +1035,29 @@
 
     # Keep the script file name for Makefile dependencies.
     PREV=$this_script
+
+    if [[ `_IS_ $this_script devices` ]] ; then
+      echo -e "\n999-paco:  $PREV
+       @\$(call echo_message, Building)" >> $MKFILE.tmp
+(
+cat  << EOF
+       @\$(call unpack2,$PACO_FILE)
+       @ROOT=\`head -n1 /tmp/unpacked | sed '[EMAIL PROTECTED]/@@;s@/.*@@'\` 
&& \\
+       echo "export PKGDIR=\$(SRC)/\$\$ROOT" > envars && \\
+       echo "export target=$(uname -m)-${TARGET}" >> envars && \\
+       echo "export ldso=/lib/${LOADER}" >> envars
+       @echo -e "\n\`date\`\n\nKB: \`du -skx --exclude={0,1}??-* \$(HLFS)\`\n" 
>logs/999-paco && \\
+       \$(CHROOT1) 'cd /jhahlfs && source envars && /jhahlfs/paco-build.sh 
>>/jhahlfs/logs/999-paco 2>&1' && \\
+       echo -e "\n\`date\`\n\nKB: \`du -skx --exclude={0,1}??-* \$(HLFS)\`\n" 
>>logs/999-paco
+       @ROOT=\`head -n1 /tmp/unpacked | sed '[EMAIL PROTECTED]/@@;s@/.*@@'\` 
&& \\
+       rm -r \$(HLFS)\$(SRC)/\$\$ROOT
+EOF
+) >> $MKFILE.tmp
+        echo -e '[EMAIL PROTECTED] $@' >> $MKFILE.tmp
+        chapter6="$chapter6 999-paco"
+        PREV="999-paco"
+    fi
+
   done # end for file in chapter06/*
 
 }
@@ -1094,6 +1132,10 @@
        @\$(call unpack2,$FILE)
        @ROOT=\`head -n1 /tmp/unpacked | sed '[EMAIL PROTECTED]/@@;s@/.*@@'\` 
&& \\
        echo "export PKGDIR=\$(SRC)/\$\$ROOT" > envars && \\
+       echo "export PACO_INCLUDE=$PACO_INCLUDE" >> envars && \\
+       echo "export PACO_EXCLUDE=\$(SRC):$PACO_EXCLUDE" >> envars && \\
+       echo "export PACO_TMPFILE=$PACO_TMPFILE" >> envars && \\
+       echo "export LD_PRELOAD=$LD_PRELOAD" >> envars && \\
        echo "\$(HLFS)\$(SRC)/blfs-bootscripts-$vrs" > sources-dir
 EOF
 ) >> $MKFILE.tmp
@@ -1101,7 +1143,15 @@
 
     if [[ `_IS_ $this_script kernel` ]] ; then
       # not much really, script does everything..
-      echo -e "[EMAIL PROTECTED] -f $CONFIG \$(HLFS)/sources/kernel-config" >> 
$MKFILE.tmp
+      echo -e "[EMAIL PROTECTED] -f $CONFIG \$(HLFS)/sources/kernel-config && 
\\" >> $MKFILE.tmp
+(
+cat  << EOF
+       echo "export PACO_INCLUDE=$PACO_INCLUDE" > envars && \\
+       echo "export PACO_EXCLUDE=\$(SRC):$PACO_EXCLUDE" >> envars && \\
+       echo "export PACO_TMPFILE=$PACO_TMPFILE" >> envars && \\
+       echo "export LD_PRELOAD=$LD_PRELOAD" >> envars
+EOF
+) >> $MKFILE.tmp
     fi
 
     # Check if we have a real /etc/fstab file
@@ -1113,6 +1163,28 @@
        echo -e "\n\`date\`\n\nKB: \`du -skx --exclude={0,1}??-* \$(HLFS)\`\n" 
>>logs/$this_script
 EOF
 ) >> $MKFILE.tmp
+
+    elif [[ `_IS_ $this_script bootscripts` ]] ; then
+(
+cat << EOF
+       @echo -e "\n\`date\`\n\nKB: \`du -skx --exclude={0,1}??-* \$(HLFS)\`\n" 
>logs/$this_script && \\
+       \$(CHROOT2) 'cd /jhahlfs && source envars && rm -f $PACO_TMPFILE && 
/jhahlfs/commands/$file >>/jhahlfs/logs/$this_script 2>&1' && \\
+       \$(CHROOT2) 'cd /jhahlfs && source envars && $PACO_PREFIX/bin/paco 
--log --package=hlfs-bootscripts < $PACO_TMPFILE && rm -f $PACO_TMPFILE'&& \\
+       echo -e "\n\`date\`\n\nKB: \`du -skx --exclude={0,1}??-* \$(HLFS)\`\n" 
>>logs/$this_script
+EOF
+) >> $MKFILE.tmp
+
+    elif [[ `_IS_ $this_script kernel` ]] ; then
+      vrs=`grep "^linux-version" $JHAHLFSDIR/packages | sed -e 's/.* //' -e 
's/"//g'`
+(
+cat << EOF
+       @echo -e "\n\`date\`\n\nKB: \`du -skx --exclude={0,1}??-* \$(HLFS)\`\n" 
>logs/$this_script && \\
+       \$(CHROOT2) 'cd /jhahlfs && source envars && rm -f $PACO_TMPFILE && 
/jhahlfs/commands/$file >>/jhahlfs/logs/$this_script 2>&1' && \\
+       \$(CHROOT2) 'cd /jhahlfs && source envars && $PACO_PREFIX/bin/paco 
--log --package=linux-kernel-$vrs < $PACO_TMPFILE && rm -f $PACO_TMPFILE'&& \\
+       echo -e "\n\`date\`\n\nKB: \`du -skx --exclude={0,1}??-* \$(HLFS)\`\n" 
>>logs/$this_script
+EOF
+) >> $MKFILE.tmp
+
     else
       # Initialize the log and run the script
 (
@@ -1411,6 +1483,7 @@
 [[ ! -d $LOGDIR ]]    && mkdir -v $LOGDIR
 if [[ "$PWD" != "$JHAHLFSDIR" ]]; then
   cp -v $FILES $JHAHLFSDIR/
+  chmod +x $JHAHLFSDIR/paco-build.sh
   sed 's,FAKEDIR,'$BOOK',' $XSL > $JHAHLFSDIR/dump-hlfs-scripts.xsl
   export XSL=$JHAHLFSDIR/dump-hlfs-scripts.xsl
 fi
diff -Naur jhalfs-svn-2344/HLFS/jhahlfs.conf jhalfs/HLFS/jhahlfs.conf
--- jhalfs-svn-2344/HLFS/jhahlfs.conf   2006-03-03 21:58:07.000000000 +0100
+++ jhalfs/HLFS/jhahlfs.conf    2006-03-16 14:45:11.000000000 +0100
@@ -65,7 +65,7 @@
 XSL=dump-hlfs-scripts.xsl
 
 #--- Files that will be copied to $JHAHLFSDIR
-FILES="hlfs-functions dump-hlfs-scripts.xsl hlfs-patcheslist_.xsl"
+FILES="hlfs-functions dump-hlfs-scripts.xsl hlfs-patcheslist_.xsl 
paco-build.sh"
 
 #--- Working directories
 JHAHLFSDIR=$BUILDDIR/jhahlfs
@@ -78,5 +78,17 @@
 #--- Book version
 HLFSVRS=development
 
+#==== PACO VARIABLES ====
+# Added by Tor Olav Stava - [EMAIL PROTECTED]
 
-
+#--- Source filename (edit as necessary)
+# Needs to be copied manually to $JHAHLFSDIR/sources
+# Don't use version 1.10.3 as it contains a bug in the shared library, 
svn-version should be ok
+PACO_FILE=paco-1.10.2.tar.bz2
+
+# Shouldn't need to be changed
+PACO_INCLUDE=/
+PACO_EXCLUDE=/tmp:/usr/src:/usr/share/info/dir
+PACO_TMPFILE=/tmp/paco.tmp
+PACO_PREFIX=/usr
+LD_PRELOAD=$PACO_PREFIX/lib/libpaco-log.so
diff -Naur jhalfs-svn-2344/HLFS/paco-build.sh jhalfs/HLFS/paco-build.sh
--- jhalfs-svn-2344/HLFS/paco-build.sh  1970-01-01 01:00:00.000000000 +0100
+++ jhalfs/HLFS/paco-build.sh   2006-03-16 14:45:12.000000000 +0100
@@ -0,0 +1,9 @@
+#!/bin/sh
+set -e
+
+cd $PKGDIR
+./configure --prefix=/usr \
+       --disable-gpaco \
+       --sysconfdir=/etc &&
+make &&
+make install
-- 
http://linuxfromscratch.org/mailman/listinfo/alfs-discuss
FAQ: http://www.linuxfromscratch.org/faq/
Unsubscribe: See the above information page

Reply via email to