2006-04-09 18:00:17 +02:00
|
|
|
Index: LFS/master.sh
|
|
|
|
===================================================================
|
2006-05-11 22:36:50 +02:00
|
|
|
--- LFS/master.sh (revision 2677)
|
2006-04-09 18:00:17 +02:00
|
|
|
+++ LFS/master.sh (working copy)
|
2006-05-11 22:36:50 +02:00
|
|
|
@@ -180,6 +180,18 @@
|
2006-04-13 18:29:22 +02:00
|
|
|
*stripping*) [[ "${STRIP}" = "0" ]] && continue ;;
|
|
|
|
esac
|
|
|
|
|
2006-04-29 18:11:42 +02:00
|
|
|
+ # Install paco as the first package in ch6, before installing
|
|
|
|
+ # linux-libc-headers, except in iterartive builds
|
|
|
|
+ if [[ -z "$N" ]]; then
|
|
|
|
+ case $this_script in
|
|
|
|
+ *linux-libc-headers)
|
2006-05-01 11:50:33 +02:00
|
|
|
+ TMP_SCRIPT="$this_script"
|
|
|
|
+ this_script=`echo $this_script | sed -e 's/linux-libc-headers/a-paco/'`
|
|
|
|
+ wrt_paco_inst "$this_script"
|
|
|
|
+ this_script="$TMP_SCRIPT" ;;
|
2006-04-29 18:11:42 +02:00
|
|
|
+ esac
|
|
|
|
+ fi
|
2006-04-13 18:29:22 +02:00
|
|
|
+
|
2006-04-29 18:11:42 +02:00
|
|
|
# Grab the name of the target
|
|
|
|
name=`echo ${this_script} | sed -e 's@[0-9]\{3\}-@@'`
|
|
|
|
|
2006-05-11 22:36:50 +02:00
|
|
|
@@ -223,7 +235,9 @@
|
2006-04-09 18:00:17 +02:00
|
|
|
# and not to use chroot.
|
|
|
|
case "${this_script}" in
|
|
|
|
*kernfs) wrt_run_as_root "${this_script}" "$file" ;;
|
|
|
|
- *) wrt_run_as_chroot1 "${this_script}" "$file" ;;
|
|
|
|
+ *) wrt_paco_prep
|
|
|
|
+ wrt_run_as_chroot1 "${this_script}" "$file"
|
|
|
|
+ wrt_paco_log "$name" "$vrs" ;;
|
|
|
|
esac
|
|
|
|
|
|
|
|
# Remove the build directory(ies) except if the package build fails.
|
2006-05-11 22:36:50 +02:00
|
|
|
@@ -243,6 +257,16 @@
|
2006-04-29 18:11:42 +02:00
|
|
|
PREV=${this_script}${N}
|
|
|
|
# Set system_build envar for iteration targets
|
|
|
|
system_build=$chapter6
|
2006-04-09 18:00:17 +02:00
|
|
|
+
|
2006-04-13 18:29:22 +02:00
|
|
|
+ # Reinstalling paco after readsjusting the toolchain.
|
2006-04-09 18:00:17 +02:00
|
|
|
+ case "${this_script}" in
|
2006-04-13 18:29:22 +02:00
|
|
|
+ *readjusting)
|
2006-05-01 11:50:33 +02:00
|
|
|
+ TMP_SCRIPT="$this_script"
|
|
|
|
+ this_script=`echo ${this_script} | sed -e 's/readjusting/x-paco/'`
|
|
|
|
+ wrt_paco_inst "$this_script"
|
|
|
|
+ this_script="$TMP_SCRIPT" ;;
|
2006-04-09 18:00:17 +02:00
|
|
|
+ esac
|
|
|
|
+
|
|
|
|
done # end for file in chapter06/*
|
|
|
|
}
|
|
|
|
|
2006-05-11 22:36:50 +02:00
|
|
|
@@ -304,6 +328,14 @@
|
2006-04-09 18:00:17 +02:00
|
|
|
wrt_run_as_chroot2 "$this_script" "$file"
|
|
|
|
fi
|
|
|
|
;;
|
|
|
|
+ *kernel) wrt_paco_prep
|
|
|
|
+ wrt_run_as_chroot2 "$this_script" "$file"
|
|
|
|
+ wrt_paco_log "linux-kernel" "$vrs"
|
|
|
|
+ ;;
|
|
|
|
+ *bootscripts) wrt_paco_prep
|
|
|
|
+ wrt_run_as_chroot2 "$this_script" "$file"
|
|
|
|
+ wrt_paco_log "lfs-bootscripts" "$vrs"
|
|
|
|
+ ;;
|
|
|
|
*) wrt_run_as_chroot2 "$this_script" "$file"
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
Index: LFS/lfs.xsl
|
|
|
|
===================================================================
|
2006-05-11 22:36:50 +02:00
|
|
|
--- LFS/lfs.xsl (revision 2677)
|
2006-04-09 18:00:17 +02:00
|
|
|
+++ LFS/lfs.xsl (working copy)
|
|
|
|
@@ -32,6 +32,9 @@
|
|
|
|
<!-- Locale settings -->
|
|
|
|
<xsl:param name="lang" select="en_CA"/>
|
|
|
|
|
|
|
|
+ <!-- Use paco? -->
|
|
|
|
+ <xsl:param name="use_paco" select="1"/>
|
|
|
|
+
|
|
|
|
<xsl:template match="/">
|
|
|
|
<xsl:apply-templates select="//sect1"/>
|
|
|
|
</xsl:template>
|
|
|
|
@@ -190,6 +193,33 @@
|
|
|
|
<xsl:apply-templates/>
|
|
|
|
<xsl:text> || true
</xsl:text>
|
|
|
|
</xsl:when>
|
|
|
|
+ <!-- paco begin -->
|
|
|
|
+ <!-- General rule -->
|
|
|
|
+ <xsl:when test="$use_paco != '0' and
|
|
|
|
+ ancestor::chapter[@id != 'chapter-temporary-tools'] and
|
|
|
|
+ contains(string(),'make') and
|
|
|
|
+ contains(string(),'install')">
|
|
|
|
+ <xsl:text>export LD_PRELOAD=/usr/lib/libpaco-log.so
</xsl:text>
|
|
|
|
+ <xsl:apply-templates/>
|
|
|
|
+ <xsl:text>
</xsl:text>
|
|
|
|
+ </xsl:when>
|
|
|
|
+ <!-- Linux-libc-headers -->
|
|
|
|
+ <xsl:when test="$use_paco != '0' and
|
|
|
|
+ ancestor::sect1[@id='ch-system-linux-libc-headers'] and
|
|
|
|
+ contains(string(),'install ')">
|
|
|
|
+ <xsl:text>export LD_PRELOAD=/usr/lib/libpaco-log.so
</xsl:text>
|
|
|
|
+ <xsl:apply-templates/>
|
|
|
|
+ <xsl:text>
</xsl:text>
|
|
|
|
+ </xsl:when>
|
|
|
|
+ <!-- Unset LD_PRELOAD before second make in Zlib -->
|
|
|
|
+ <xsl:when test="$use_paco != '0' and
|
|
|
|
+ ancestor::sect1[@id='ch-system-zlib'] and
|
|
|
|
+ contains(string(),'make clean')">
|
|
|
|
+ <xsl:text>unset LD_PRELOAD
</xsl:text>
|
|
|
|
+ <xsl:apply-templates/>
|
|
|
|
+ <xsl:text>
</xsl:text>
|
|
|
|
+ </xsl:when>
|
|
|
|
+ <!-- paco end -->
|
|
|
|
<!-- The rest of commands -->
|
|
|
|
<xsl:otherwise>
|
|
|
|
<xsl:apply-templates/>
|
|
|
|
Index: BLFS/master.sh
|
|
|
|
===================================================================
|
2006-05-11 22:36:50 +02:00
|
|
|
--- BLFS/master.sh (revision 2677)
|
2006-04-09 18:00:17 +02:00
|
|
|
+++ BLFS/master.sh (working copy)
|
|
|
|
@@ -79,6 +79,19 @@
|
|
|
|
EOF
|
|
|
|
) >> $MKFILE
|
|
|
|
|
|
|
|
+ if [[ $USE_PACO != 0 ]]; then
|
|
|
|
+(
|
|
|
|
+ cat << EOF
|
|
|
|
+ @echo -e "\n\`date\`\n\nKB: \`du -sk --exclude=logs/* /\`\n" >logs/$this_script && \\
|
|
|
|
+ source $JHALFSDIR/pacovars && \\
|
|
|
|
+ rm -f $PACO_TMPFILE && \\
|
|
|
|
+ $JHALFSDIR/${PROGNAME}-commands/$file >>logs/$this_script 2>&1 && \\
|
|
|
|
+ echo -e "\n\`date\`\n\nKB: \`du -sk --exclude=logs/* /\`\n" >>logs/$this_script
|
|
|
|
+EOF
|
|
|
|
+) >> $MKFILE
|
|
|
|
+ wrt_paco_log_blfs
|
|
|
|
+
|
|
|
|
+ else
|
|
|
|
# Insert date and disk usage at the top of the log file, the script run
|
|
|
|
# and date and disk usage again at the bottom of the log file.
|
|
|
|
(
|
2006-05-03 19:28:04 +02:00
|
|
|
@@ -88,6 +101,7 @@
|
|
|
|
echo -e "\n\`date\`\n\nKB: \`du -sk --exclude=logs/* /\`\n" >>logs/$this_script
|
|
|
|
EOF
|
|
|
|
) >> $MKFILE
|
|
|
|
+ fi
|
|
|
|
|
|
|
|
# Include a touch of the target name so make can check
|
|
|
|
# if it's already been made.
|
2006-04-09 18:00:17 +02:00
|
|
|
Index: BLFS/blfs.xsl
|
|
|
|
===================================================================
|
2006-05-11 22:36:50 +02:00
|
|
|
--- BLFS/blfs.xsl (revision 2677)
|
2006-04-09 18:00:17 +02:00
|
|
|
+++ BLFS/blfs.xsl (working copy)
|
|
|
|
@@ -159,7 +159,7 @@
|
|
|
|
<xsl:when test="@role = 'nodump'"/>
|
|
|
|
<xsl:otherwise>
|
|
|
|
<xsl:if test="@role = 'root'">
|
|
|
|
- <xsl:text>sudo </xsl:text>
|
|
|
|
+ <xsl:text>export LD_PRELOAD=/usr/lib/libpaco-log.so
</xsl:text>
|
|
|
|
</xsl:if>
|
|
|
|
<xsl:apply-templates select="userinput" mode="screen"/>
|
|
|
|
</xsl:otherwise>
|
2006-05-01 11:50:33 +02:00
|
|
|
Index: common/paco-build-hlfs.sh
|
|
|
|
===================================================================
|
|
|
|
--- common/paco-build-hlfs.sh (revision 0)
|
|
|
|
+++ common/paco-build-hlfs.sh (revision 0)
|
|
|
|
@@ -0,0 +1,11 @@
|
|
|
|
+#!/bin/sh
|
|
|
|
+set -e
|
|
|
|
+
|
|
|
|
+cd $PKGDIR
|
|
|
|
+./configure --with-pic \
|
|
|
|
+ --disable-static \
|
|
|
|
+ --disable-gpaco \
|
|
|
|
+ --sysconfdir=/etc &&
|
|
|
|
+make &&
|
|
|
|
+make install &&
|
|
|
|
+make logme
|
2006-04-09 18:00:17 +02:00
|
|
|
Index: common/config
|
|
|
|
===================================================================
|
2006-05-11 22:36:50 +02:00
|
|
|
--- common/config (revision 2677)
|
2006-04-09 18:00:17 +02:00
|
|
|
+++ common/config (working copy)
|
2006-05-11 22:36:50 +02:00
|
|
|
@@ -88,6 +88,14 @@
|
2006-04-29 18:11:42 +02:00
|
|
|
#--- Run farce testing 0(no)/1(yes)
|
|
|
|
RUN_FARCE=0
|
2006-04-10 19:01:08 +02:00
|
|
|
|
2006-04-09 18:00:17 +02:00
|
|
|
+#==== PACO VARIABLES ====
|
2006-04-29 18:11:42 +02:00
|
|
|
+#--- Use paco? 0(no)/1(yes)
|
2006-04-09 18:00:17 +02:00
|
|
|
+USE_PACO=1
|
2006-05-01 11:50:33 +02:00
|
|
|
+PACO_VERSION=1.10.7
|
2006-04-09 18:00:17 +02:00
|
|
|
+
|
|
|
|
+#--- Name of the Paco source package
|
|
|
|
+PACO_FILE=paco-$PACO_VERSION.tar.*
|
|
|
|
+
|
2006-04-29 18:11:42 +02:00
|
|
|
#==== INTERNAL VARIABLES ====
|
|
|
|
# Don't edit it unless you know what you are doing
|
|
|
|
|
2006-05-11 22:36:50 +02:00
|
|
|
@@ -100,3 +108,9 @@
|
2006-04-29 18:11:42 +02:00
|
|
|
|
|
|
|
#--- farce report log directory
|
|
|
|
FARCELOGDIR=$LOGDIR/farce
|
|
|
|
+
|
|
|
|
+#--- Variables needed by paco
|
2006-04-09 18:00:17 +02:00
|
|
|
+PACO_INCLUDE=/
|
2006-04-29 18:11:42 +02:00
|
|
|
+PACO_EXCLUDE=/sys:/dev:/proc:/tmp:/usr/src:/usr/share/info/dir:/jhalfs
|
2006-04-09 18:00:17 +02:00
|
|
|
+PACO_TMPFILE=/tmp/paco.tmp
|
|
|
|
+LD_PRELOAD=/usr/lib/libpaco-log.so
|
|
|
|
Index: common/func_validate_configs.sh
|
|
|
|
===================================================================
|
2006-05-11 22:36:50 +02:00
|
|
|
--- common/func_validate_configs.sh (revision 2677)
|
2006-04-09 18:00:17 +02:00
|
|
|
+++ common/func_validate_configs.sh (working copy)
|
2006-04-29 18:11:42 +02:00
|
|
|
@@ -84,10 +84,10 @@
|
2006-04-09 18:00:17 +02:00
|
|
|
inline_doc
|
|
|
|
|
|
|
|
# First internal variables, then the ones that change the book's flavour, and lastly system configuration variables
|
2006-05-11 22:36:50 +02:00
|
|
|
- local -r blfs_PARAM_LIST="BOOK BUILDDIR SRC_ARCHIVE GETPKG DEPEND TEST OPTIMIZE"
|
|
|
|
- local -r hlfs_PARAM_LIST="BOOK BUILDDIR SRC_ARCHIVE GETPKG RUNMAKE MODEL GRSECURITY_HOST TEST OPTIMIZE REPORT COMPARE RUN_ICA RUN_FARCE ITERATIONS STRIP FSTAB CONFIG KEYMAP PAGE TIMEZONE LANG LC_ALL"
|
|
|
|
- local -r clfs_PARAM_LIST="BOOK BUILDDIR SRC_ARCHIVE GETPKG RUNMAKE METHOD ARCH TARGET TEST OPTIMIZE REPORT COMPARE RUN_ICA RUN_FARCE ITERATIONS STRIP FSTAB BOOT_CONFIG CONFIG KEYMAP VIMLANG PAGE TIMEZONE LANG"
|
|
|
|
- local -r lfs_PARAM_LIST="BOOK BUILDDIR SRC_ARCHIVE GETPKG RUNMAKE TEST OPTIMIZE REPORT COMPARE RUN_ICA RUN_FARCE ITERATIONS STRIP FSTAB CONFIG VIMLANG PAGE TIMEZONE LANG"
|
|
|
|
+ local -r blfs_PARAM_LIST="BOOK BUILDDIR SRC_ARCHIVE USE_PACO GETPKG DEPEND TEST OPTIMIZE"
|
|
|
|
+ local -r hlfs_PARAM_LIST="BOOK BUILDDIR SRC_ARCHIVE USE_PACO GETPKG RUNMAKE MODEL GRSECURITY_HOST TEST OPTIMIZE REPORT COMPARE RUN_ICA RUN_FARCE ITERATIONS STRIP FSTAB CONFIG KEYMAP PAGE TIMEZONE LANG LC_ALL"
|
|
|
|
+ local -r clfs_PARAM_LIST="BOOK BUILDDIR SRC_ARCHIVE USE_PACO GETPKG RUNMAKE METHOD ARCH TARGET TEST OPTIMIZE REPORT COMPARE RUN_ICA RUN_FARCE ITERATIONS STRIP FSTAB BOOT_CONFIG CONFIG KEYMAP VIMLANG PAGE TIMEZONE LANG"
|
|
|
|
+ local -r lfs_PARAM_LIST="BOOK BUILDDIR SRC_ARCHIVE USE_PACO GETPKG RUNMAKE TEST OPTIMIZE REPORT COMPARE RUN_ICA RUN_FARCE ITERATIONS STRIP FSTAB CONFIG VIMLANG PAGE TIMEZONE LANG"
|
2006-04-09 18:00:17 +02:00
|
|
|
|
|
|
|
local -r ERROR_MSG_pt1='The variable \"${L_arrow}${config_param}${R_arrow}\" value ${L_arrow}${BOLD}${!config_param}${R_arrow} is invalid,'
|
|
|
|
local -r ERROR_MSG_pt2=' check the config file ${BOLD}${GREEN}\<$(echo $PROGNAME | tr [a-z] [A-Z])/config\> or \<common/config\>${OFF}'
|
2006-04-29 18:11:42 +02:00
|
|
|
@@ -179,6 +179,7 @@
|
|
|
|
# Validate general parameters..
|
2006-05-01 11:50:33 +02:00
|
|
|
GETPKG) validate_against_str "x0x x1x" ;;
|
2006-04-29 18:11:42 +02:00
|
|
|
RUNMAKE) validate_against_str "x0x x1x" ;;
|
|
|
|
+ USE_PACO) validate_against_str "x0x x1x" ;;
|
|
|
|
REPORT) validate_against_str "x0x x1x"
|
|
|
|
if [[ "${!config_param}" = "1" ]]; then
|
|
|
|
if [[ `type -p bc` ]]; then
|
2006-04-09 18:00:17 +02:00
|
|
|
Index: common/paco-functions
|
|
|
|
===================================================================
|
|
|
|
--- common/paco-functions (revision 0)
|
|
|
|
+++ common/paco-functions (revision 0)
|
2006-04-13 18:29:22 +02:00
|
|
|
@@ -0,0 +1,112 @@
|
2006-04-09 18:00:17 +02:00
|
|
|
+#!/bin/bash
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+#----------------------------#
|
|
|
|
+wrt_paco_inst() { #
|
|
|
|
+#----------------------------#
|
2006-04-10 19:01:08 +02:00
|
|
|
+
|
|
|
|
+# Not using Paco with uClibc, even if requested
|
|
|
|
+if [ $PROGNAME = "hlfs" ]; then
|
|
|
|
+ if [ $MODEL = "uclibc" ]; then
|
2006-04-13 18:29:22 +02:00
|
|
|
+ USE_PACO=0
|
2006-04-10 19:01:08 +02:00
|
|
|
+ fi
|
|
|
|
+fi
|
|
|
|
+
|
|
|
|
+if [ $USE_PACO != 0 ]; then
|
2006-04-13 18:29:22 +02:00
|
|
|
+ paco_script="$1"
|
|
|
|
+ paco_file="chapter06/$paco_script"
|
|
|
|
+ chapter6="$chapter6 $paco_script"
|
|
|
|
+
|
|
|
|
+ # Copy the paco build script to the correct directory and make it executable
|
2006-05-01 11:50:33 +02:00
|
|
|
+ cp $JHALFSDIR/paco-build-$PROGNAME.sh $JHALFSDIR/${PROGNAME}-commands/$paco_file &&
|
2006-04-13 18:29:22 +02:00
|
|
|
+ chmod +x $JHALFSDIR/${PROGNAME}-commands/$paco_file
|
2006-04-09 18:00:17 +02:00
|
|
|
+
|
|
|
|
+ # Write target, dependency and unpack
|
2006-04-13 18:29:22 +02:00
|
|
|
+ wrt_target "$paco_script" "$PREV"
|
2006-04-09 18:00:17 +02:00
|
|
|
+ wrt_unpack2 "$PACO_FILE"
|
|
|
|
+
|
|
|
|
+ # Run the script
|
2006-04-13 18:29:22 +02:00
|
|
|
+ wrt_run_as_chroot1 "${paco_script}" "${paco_file}"
|
2006-04-09 18:00:17 +02:00
|
|
|
+
|
|
|
|
+ # Clean up
|
2006-04-13 18:29:22 +02:00
|
|
|
+ wrt_remove_build_dirs "paco"
|
2006-04-09 18:00:17 +02:00
|
|
|
+ echo -e '\t@touch $@' >> $MKFILE.tmp
|
|
|
|
+
|
|
|
|
+ # Override the PREV variable
|
2006-04-13 18:29:22 +02:00
|
|
|
+ PREV="$paco_script"
|
2006-04-09 18:00:17 +02:00
|
|
|
+fi
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+#----------------------------------#
|
|
|
|
+wrt_paco_prep() { # Export Paco variables
|
|
|
|
+#----------------------------------# and remove tmpfile
|
2006-04-10 19:01:08 +02:00
|
|
|
+
|
|
|
|
+# Not using Paco with uClibc, even if requested
|
|
|
|
+if [ $PROGNAME = "hlfs" ]; then
|
|
|
|
+ if [ $MODEL = "uclibc" ]; then
|
2006-04-13 18:29:22 +02:00
|
|
|
+ USE_PACO=0
|
2006-04-10 19:01:08 +02:00
|
|
|
+ fi
|
|
|
|
+fi
|
|
|
|
+
|
|
|
|
+if [ $USE_PACO != 0 ] && [ "$vrs" != "" ]; then
|
2006-04-09 18:00:17 +02:00
|
|
|
+(
|
|
|
|
+cat << EOF
|
|
|
|
+ @echo "export PACO_INCLUDE=$PACO_INCLUDE" >> envars && \\
|
|
|
|
+ echo "export PACO_EXCLUDE=\$(SRC):$JHALFSDIR:$PACO_EXCLUDE" >> envars && \\
|
|
|
|
+ echo "export PACO_TMPFILE=$PACO_TMPFILE" >> envars && \\
|
|
|
|
+ rm -f \$(MOUNT_PT)$PACO_TMPFILE
|
|
|
|
+EOF
|
|
|
|
+) >> $MKFILE.tmp
|
|
|
|
+fi
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+#----------------------------------#
|
|
|
|
+wrt_paco_log() { # If the tmpfile exist, then log the current package
|
|
|
|
+#----------------------------------# and remove tempfile
|
2006-04-10 19:01:08 +02:00
|
|
|
+local PACKAGE
|
|
|
|
+
|
|
|
|
+# Allow packages to be logged without version
|
|
|
|
+if [[ $2 != "" ]] ; then
|
|
|
|
+ PACKAGE="$1-$2";
|
|
|
|
+else
|
|
|
|
+ PACKAGE="$1"
|
|
|
|
+fi
|
2006-04-09 18:00:17 +02:00
|
|
|
+
|
2006-04-10 19:01:08 +02:00
|
|
|
+# Not using Paco with uClibc, even if requested
|
|
|
|
+if [ $PROGNAME = "hlfs" ]; then
|
|
|
|
+ if [ $MODEL = "uclibc" ]; then
|
2006-04-13 18:29:22 +02:00
|
|
|
+ USE_PACO=0
|
2006-04-09 18:00:17 +02:00
|
|
|
+ fi
|
2006-04-10 19:01:08 +02:00
|
|
|
+fi
|
2006-04-09 18:00:17 +02:00
|
|
|
+
|
2006-04-10 19:01:08 +02:00
|
|
|
+if [ $USE_PACO != 0 ] && [ "$vrs" != "" ]; then
|
2006-04-09 18:00:17 +02:00
|
|
|
+(
|
|
|
|
+cat << EOF
|
|
|
|
+ @if [ -e \$(MOUNT_PT)$PACO_TMPFILE ]; then \\
|
2006-04-29 18:11:42 +02:00
|
|
|
+ \$(CHROOT1) 'paco -lp+ $PACKAGE < $PACO_TMPFILE' && \\
|
2006-04-09 18:00:17 +02:00
|
|
|
+ rm -f \$(MOUNT_PT)$PACO_TMPFILE; \\
|
|
|
|
+ fi;
|
|
|
|
+EOF
|
|
|
|
+) >> $MKFILE.tmp
|
|
|
|
+fi
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+#----------------------------------#
|
|
|
|
+wrt_paco_log_blfs() { # If the tmpfile exist, then log the current package
|
|
|
|
+#----------------------------------# and remove tempfile
|
|
|
|
+if [ $USE_PACO != 0 ] ; then
|
|
|
|
+(
|
|
|
|
+cat << EOF
|
|
|
|
+ @PACKAGE=\`head -n1 /tmp/unpacked | sed 's@^./@@;s@/.*@@'\` && \\
|
|
|
|
+ if [ -e $PACO_TMPFILE ]; then \\
|
2006-04-10 19:01:08 +02:00
|
|
|
+ paco -lp \$\$PACKAGE < $PACO_TMPFILE && \\
|
2006-04-09 18:00:17 +02:00
|
|
|
+ rm -f $PACO_TMPFILE; \\
|
|
|
|
+ fi;
|
|
|
|
+EOF
|
|
|
|
+) >> $MKFILE
|
|
|
|
+fi
|
|
|
|
+}
|
|
|
|
+
|
2006-05-01 11:50:33 +02:00
|
|
|
Index: common/paco-build-lfs.sh
|
2006-04-13 18:29:22 +02:00
|
|
|
===================================================================
|
2006-05-01 11:50:33 +02:00
|
|
|
--- common/paco-build-lfs.sh (revision 0)
|
|
|
|
+++ common/paco-build-lfs.sh (revision 0)
|
2006-04-13 18:29:22 +02:00
|
|
|
@@ -0,0 +1,9 @@
|
|
|
|
+#!/bin/sh
|
|
|
|
+set -e
|
|
|
|
+
|
|
|
|
+cd $PKGDIR
|
|
|
|
+./configure --disable-gpaco \
|
|
|
|
+ --sysconfdir=/etc &&
|
|
|
|
+make &&
|
|
|
|
+make install &&
|
|
|
|
+make logme
|
2006-04-09 18:00:17 +02:00
|
|
|
Index: common/common-functions
|
|
|
|
===================================================================
|
2006-05-11 22:36:50 +02:00
|
|
|
--- common/common-functions (revision 2677)
|
2006-04-09 18:00:17 +02:00
|
|
|
+++ common/common-functions (working copy)
|
2006-05-05 21:16:02 +02:00
|
|
|
@@ -65,6 +65,9 @@
|
2006-04-09 18:00:17 +02:00
|
|
|
in the configuration file has the proper packages and patches for the
|
|
|
|
book version being processed.
|
|
|
|
|
|
|
|
+${BOLD} --no-paco${OFF}
|
|
|
|
+ dissables paco logging feature.
|
|
|
|
+
|
2006-05-11 22:36:50 +02:00
|
|
|
${BOLD} -O, --optimize${OFF}
|
|
|
|
Optimize [0-2]
|
|
|
|
0 = no optimization
|
|
|
|
@@ -581,6 +584,7 @@
|
2006-04-09 18:00:17 +02:00
|
|
|
--stringparam lc_all $LC_ALL \
|
|
|
|
--stringparam keymap $KEYMAP \
|
|
|
|
--stringparam grsecurity_host $GRSECURITY_HOST \
|
|
|
|
+ --stringparam use_paco $USE_PACO \
|
|
|
|
-o ./${PROGNAME}-commands/ $XSL $BOOK/index.xml >>$LOGDIR/$LOG 2>&1
|
|
|
|
;;
|
|
|
|
lfs)
|
2006-05-11 22:36:50 +02:00
|
|
|
@@ -592,6 +596,7 @@
|
2006-04-09 18:00:17 +02:00
|
|
|
--stringparam timezone $TIMEZONE \
|
|
|
|
--stringparam page $PAGE \
|
|
|
|
--stringparam lang $LANG \
|
|
|
|
+ --stringparam use_paco $USE_PACO \
|
|
|
|
-o ./${PROGNAME}-commands/ $XSL $BOOK/index.xml >>$LOGDIR/$LOG 2>&1
|
|
|
|
;;
|
|
|
|
blfs)
|
|
|
|
Index: HLFS/hlfs.xsl
|
|
|
|
===================================================================
|
2006-05-11 22:36:50 +02:00
|
|
|
--- HLFS/hlfs.xsl (revision 2677)
|
2006-04-09 18:00:17 +02:00
|
|
|
+++ HLFS/hlfs.xsl (working copy)
|
|
|
|
@@ -39,6 +39,9 @@
|
|
|
|
<xsl:param name="lang" select="en_CA"/>
|
|
|
|
<xsl:param name="lc_all" select="en_CA"/>
|
|
|
|
|
|
|
|
+ <!-- Use paco? -->
|
|
|
|
+ <xsl:param name="use_paco" select="1"/>
|
|
|
|
+
|
|
|
|
<xsl:template match="/">
|
|
|
|
<xsl:apply-templates select="//sect1"/>
|
|
|
|
</xsl:template>
|
|
|
|
@@ -191,6 +194,10 @@
|
|
|
|
<!-- Fixing bootscripts installation -->
|
|
|
|
<xsl:when test="ancestor::sect1[@id='bootable-bootscripts'] and
|
|
|
|
string() = 'make install'">
|
|
|
|
+ <!-- inserting LD_PRELOAD before installing bootscripts -->
|
|
|
|
+ <xsl:if test="$use_paco != '0' and $model != 'uclibc'">
|
|
|
|
+ <xsl:text>export LD_PRELOAD=/usr/lib/libpaco-log.so
</xsl:text>
|
|
|
|
+ </xsl:if>
|
|
|
|
<xsl:text>make install
</xsl:text>
|
|
|
|
<xsl:text>cd ../blfs-bootscripts-&blfs-bootscripts-version;
</xsl:text>
|
|
|
|
</xsl:when>
|
|
|
|
@@ -248,6 +255,25 @@
|
|
|
|
<xsl:apply-templates/>
|
|
|
|
<xsl:text> || true
</xsl:text>
|
|
|
|
</xsl:when>
|
|
|
|
+ <!-- paco begin -->
|
|
|
|
+ <!-- General rule -->
|
|
|
|
+ <xsl:when test="$use_paco != '0' and $model != 'uclibc' and
|
|
|
|
+ ancestor::chapter[@id != 'chapter-temporary-tools'] and
|
|
|
|
+ contains(string(),'make') and
|
|
|
|
+ contains(string(),'install')">
|
|
|
|
+ <xsl:text>export LD_PRELOAD=/usr/lib/libpaco-log.so
</xsl:text>
|
|
|
|
+ <xsl:apply-templates/>
|
|
|
|
+ <xsl:text>
</xsl:text>
|
|
|
|
+ </xsl:when>
|
|
|
|
+ <!-- Linux-libc-headers -->
|
|
|
|
+ <xsl:when test="$use_paco != '0' and $model != 'uclibc' and
|
|
|
|
+ ancestor::sect1[@id='ch-system-linux-libc-headers'] and
|
|
|
|
+ contains(string(),'install ')">
|
|
|
|
+ <xsl:text>export LD_PRELOAD=/usr/lib/libpaco-log.so
</xsl:text>
|
|
|
|
+ <xsl:apply-templates/>
|
|
|
|
+ <xsl:text>
</xsl:text>
|
|
|
|
+ </xsl:when>
|
|
|
|
+ <!-- paco end -->
|
|
|
|
<!-- The rest of commands -->
|
|
|
|
<xsl:otherwise>
|
|
|
|
<xsl:apply-templates/>
|
|
|
|
Index: HLFS/master.sh
|
|
|
|
===================================================================
|
2006-05-11 22:36:50 +02:00
|
|
|
--- HLFS/master.sh (revision 2677)
|
2006-04-09 18:00:17 +02:00
|
|
|
+++ HLFS/master.sh (working copy)
|
2006-05-11 22:36:50 +02:00
|
|
|
@@ -254,6 +254,18 @@
|
2006-04-29 18:11:42 +02:00
|
|
|
*-stripping* ) [[ "$STRIP" = "0" ]] && continue ;;
|
2006-04-13 18:29:22 +02:00
|
|
|
esac
|
|
|
|
|
2006-04-29 18:11:42 +02:00
|
|
|
+ # Install paco as the first package in ch6, before installing
|
|
|
|
+ # linux-libc-headers, except in iterartive builds
|
|
|
|
+ if [[ -z "$N" ]]; then
|
|
|
|
+ case $this_script in
|
|
|
|
+ *linux-libc-headers)
|
2006-05-01 11:50:33 +02:00
|
|
|
+ TMP_SCRIPT="$this_script"
|
|
|
|
+ this_script=`echo $this_script | sed -e 's/linux-libc-headers/a-paco/'`
|
|
|
|
+ wrt_paco_inst "$this_script"
|
|
|
|
+ this_script="$TMP_SCRIPT" ;;
|
2006-04-29 18:11:42 +02:00
|
|
|
+ esac
|
|
|
|
+ fi
|
2006-04-13 18:29:22 +02:00
|
|
|
+
|
2006-04-29 18:11:42 +02:00
|
|
|
# Grab the name of the target
|
|
|
|
name=`echo $this_script | sed -e 's@[0-9]\{3\}-@@'`
|
|
|
|
|
2006-05-11 22:36:50 +02:00
|
|
|
@@ -324,7 +336,9 @@
|
2006-04-09 18:00:17 +02:00
|
|
|
wrt_run_as_root "${this_script}" "${file}"
|
|
|
|
;;
|
|
|
|
*) # The rest of Chapter06
|
|
|
|
+ wrt_paco_prep
|
|
|
|
wrt_run_as_chroot1 "${this_script}" "${file}"
|
|
|
|
+ wrt_paco_log "$name" "$vrs"
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
#
|
2006-05-11 22:36:50 +02:00
|
|
|
@@ -357,6 +371,16 @@
|
2006-04-29 18:11:42 +02:00
|
|
|
PREV=${this_script}${N}
|
|
|
|
# Set system_build envar for iteration targets
|
|
|
|
system_build=$chapter6
|
2006-04-09 18:00:17 +02:00
|
|
|
+
|
2006-04-13 18:29:22 +02:00
|
|
|
+ # Reinstall paco after the toolchain has been readjusted.
|
2006-04-09 18:00:17 +02:00
|
|
|
+ case "${this_script}" in
|
2006-04-13 18:29:22 +02:00
|
|
|
+ *readjusting)
|
2006-05-01 11:50:33 +02:00
|
|
|
+ TMP_SCRIPT="$this_script"
|
|
|
|
+ this_script=`echo $this_script | sed -e 's/readjusting/x-paco/'`
|
|
|
|
+ wrt_paco_inst "$this_script"
|
|
|
|
+ this_script="$TMP_SCRIPT" ;;
|
2006-04-09 18:00:17 +02:00
|
|
|
+ esac
|
|
|
|
+
|
|
|
|
done # end for file in chapter06/*
|
|
|
|
|
|
|
|
}
|
2006-05-11 22:36:50 +02:00
|
|
|
@@ -419,6 +443,15 @@
|
2006-04-09 18:00:17 +02:00
|
|
|
wrt_run_as_chroot2 "${this_script}" "${file}"
|
|
|
|
fi
|
|
|
|
;;
|
|
|
|
+ *kernel) wrt_paco_prep
|
|
|
|
+ wrt_run_as_chroot2 "$this_script" "$file"
|
|
|
|
+ version=`grep "^linux-version" $JHALFSDIR/packages | sed -e 's/.* //' -e 's/"//g'`
|
|
|
|
+ wrt_paco_log "linux-kernel" "$version"
|
|
|
|
+ ;;
|
|
|
|
+ *bootscripts) wrt_paco_prep
|
|
|
|
+ wrt_run_as_chroot2 "$this_script" "$file"
|
|
|
|
+ wrt_paco_log "hlfs-bootscripts"
|
|
|
|
+ ;;
|
|
|
|
*) # All other scripts
|
|
|
|
wrt_run_as_chroot2 "${this_script}" "${file}"
|
|
|
|
;;
|
2006-04-10 19:01:08 +02:00
|
|
|
Index: master.sh
|
|
|
|
===================================================================
|
2006-05-11 22:36:50 +02:00
|
|
|
--- master.sh (revision 2677)
|
2006-04-10 19:01:08 +02:00
|
|
|
+++ master.sh (working copy)
|
2006-05-05 21:16:02 +02:00
|
|
|
@@ -147,6 +147,8 @@
|
2006-04-10 19:01:08 +02:00
|
|
|
|
|
|
|
--help | -h ) usage | more && exit ;;
|
|
|
|
|
|
|
|
+ --no-paco ) USE_PACO=0 ;;
|
|
|
|
+
|
2006-05-11 22:36:50 +02:00
|
|
|
--optimize | -O )
|
2006-04-10 19:01:08 +02:00
|
|
|
test $# = 1 && eval "$exit_missing_arg"
|
|
|
|
shift
|
2006-05-11 22:36:50 +02:00
|
|
|
@@ -464,6 +466,14 @@
|
2006-05-05 21:16:02 +02:00
|
|
|
[[ $VERBOSITY > 0 ]] && echo "OK"
|
|
|
|
fi
|
2006-05-11 22:36:50 +02:00
|
|
|
#
|
2006-05-05 21:16:02 +02:00
|
|
|
+# paco module
|
|
|
|
+if [[ "$USE_PACO" = "1" ]]; then
|
|
|
|
+ [[ $VERBOSITY > 0 ]] && echo -n "Loading paco module..."
|
|
|
|
+ source $COMMON_DIR/paco-functions
|
|
|
|
+ [[ $? > 0 ]] && echo "$COMMON_DIR/paco-functions did not load.." && exit 2
|
|
|
|
+ [[ $VERBOSITY > 0 ]] && echo "OK"
|
|
|
|
+fi
|
|
|
|
+#
|
2006-05-11 22:36:50 +02:00
|
|
|
# optimize module
|
|
|
|
if [[ "$OPTIMIZE" != "0" ]]; then
|
|
|
|
[[ $VERBOSITY > 0 ]] && echo -n "Loading optimization module..."
|
|
|
|
@@ -507,6 +517,15 @@
|
2006-04-10 19:01:08 +02:00
|
|
|
|
|
|
|
if [[ "$PWD" != "$JHALFSDIR" ]]; then
|
|
|
|
cp $COMMON_DIR/makefile-functions $JHALFSDIR/
|
|
|
|
+ if [[ $USE_PACO != "0" ]] ; then
|
|
|
|
+ if [[ $PROGNAME != "blfs" ]]; then
|
2006-05-01 11:50:33 +02:00
|
|
|
+ cp $COMMON_DIR/paco-build-$PROGNAME.sh $JHALFSDIR/
|
2006-04-10 19:01:08 +02:00
|
|
|
+ else
|
|
|
|
+ echo -e "export PACO_INCLUDE=$PACO_INCLUDE" > $JHALFSDIR/pacovars
|
|
|
|
+ echo -e "export PACO_EXCLUDE=~/sources:$JHALFSDIR:$PACO_EXCLUDE" >> $JHALFSDIR/pacovars
|
|
|
|
+ echo -e "export PACO_TMPFILE=$PACO_TMPFILE" >> $JHALFSDIR/pacovars
|
|
|
|
+ fi
|
|
|
|
+ fi
|
2006-05-11 22:36:50 +02:00
|
|
|
[[ "$OPTIMIZE" != "0" ]] && cp optimize/opt_override $JHALFSDIR/
|
2006-04-29 18:11:42 +02:00
|
|
|
if [[ "$COMPARE" != "0" ]] ; then
|
|
|
|
mkdir -p $JHALFSDIR/extras
|