Updated CUSTOM_TOOLS code
This commit is contained in:
parent
e5fe8321a9
commit
dfa51ee1dd
2 changed files with 44 additions and 105 deletions
|
@ -7,112 +7,58 @@ wrt_CustomTools_target() { # Add any users supplied scripts
|
|||
#----------------------------------#
|
||||
PREV=""
|
||||
|
||||
echo " Adding custom packages... ${BOLD}START${OFF}"
|
||||
echo "${tab_}${GREEN}Processing... ${L_arrow}CUSTOM_TOOLS ${R_arrow}"
|
||||
|
||||
# Create the custom_tools scripts directory
|
||||
mkdir -p custom-tools
|
||||
for file in custom-tools/* ; do
|
||||
# Keep the script file name
|
||||
this_script=`basename $file`
|
||||
|
||||
for file in $JHALFSDIR/custom-commands/*; do
|
||||
if [[ `basename ${file}` = "*" ]]; then
|
||||
break
|
||||
# Grab the phase name to be used with INSTALL_LOG and tracking dir touch
|
||||
name=`grep "^PKG_PHASE=" ${file} | sed -e 's@PKG_PHASE=@@'`
|
||||
# Grab also the package version
|
||||
pkg_ver=`grep "^VERSION=" ${file} | sed -e 's@VERSION=@@'`
|
||||
|
||||
# Append each name of the script files to a list (this will become
|
||||
# the names of the targets in the Makefile)
|
||||
custom_list="$custom_list ${this_script}"
|
||||
|
||||
#--------------------------------------------------------------------#
|
||||
# >>>>>>>> START BUILDING A Makefile ENTRY <<<<<<<< #
|
||||
#--------------------------------------------------------------------#
|
||||
#
|
||||
# Drop in the name of the target on a new line, and the previous target
|
||||
# as a dependency. Also call the echo_message function.
|
||||
wrt_target "${this_script}" "$PREV"
|
||||
|
||||
# Touch timestamp file if installed files logs will be created.
|
||||
if [ "$name" != "" ] && [ "${INSTALL_LOG}" = "y" ] ; then
|
||||
wrt_TouchTimestamp
|
||||
fi
|
||||
source $file
|
||||
this_script=$(basename ${file})
|
||||
echo "$tab_${GREEN}Adding${OFF} ${this_script}"
|
||||
|
||||
# Create a Makefile entry
|
||||
if [[ "x${PKG}" = "x" ]]; then
|
||||
# Create an entry for a self contained cmd script that does not
|
||||
# reference a package tarball
|
||||
case $PROGNAME in
|
||||
clfs2 | clfs3 )
|
||||
LUSER_wrt_target "${this_script}" "$PREV"
|
||||
LUSER_wrt_RunAsUser "custom-tools/${this_script}"
|
||||
;;
|
||||
*)
|
||||
CHROOT_wrt_target "${this_script}" "$PREV"
|
||||
CHROOT_wrt_RunAsRoot "custom-tools/${this_script}"
|
||||
;;
|
||||
esac
|
||||
wrt_touch
|
||||
# Run the script.
|
||||
wrt_RunScript "$file"
|
||||
|
||||
# Create the build script file
|
||||
( cat <<- xEOFx
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
`cat tmp`
|
||||
exit
|
||||
xEOFx
|
||||
) > custom-tools/${this_script}
|
||||
# Write installed files log
|
||||
if [ "$name" != "" ] && [ "${INSTALL_LOG}" = "y" ] ; then
|
||||
wrt_LogNewFiles "$name"
|
||||
fi
|
||||
|
||||
# Touch the tracking file.
|
||||
if [ "$PROGNAME" = "clfs2" ]; then
|
||||
echo -e "\t@touch \$(MOUNT_PT)$TRACKING_DIR/${name}-${pkg_ver}" >> $MKFILE.tmp
|
||||
else
|
||||
# Create an entry for package
|
||||
case $PROGNAME in
|
||||
clfs2 | clfs3 )
|
||||
LUSER_wrt_target "${this_script}" "$PREV"
|
||||
LUSER_wrt_unpack "${PKG_FILE}"
|
||||
LUSER_wrt_RunAsUser "custom-tools/${this_script}"
|
||||
LUSER_RemoveBuildDirs "${PKG}"
|
||||
echo -e "\t@touch \$(MOUNT_PT)$TRACKING_DIR/${PKG}-${PKG_VERSION}" >> $MKFILE.tmp
|
||||
;;
|
||||
*)
|
||||
CHROOT_wrt_target "${this_script}" "$PREV"
|
||||
CHROOT_Unpack "${PKG_FILE}"
|
||||
CHROOT_wrt_RunAsRoot "custom-tools/${this_script}"
|
||||
CHROOT_wrt_RemoveBuildDirs "${PKG}"
|
||||
echo -e "\t@touch $TRACKING_DIR/${PKG}-${PKG_VERSION}" >> $MKFILE.tmp
|
||||
;;
|
||||
esac
|
||||
wrt_touch
|
||||
|
||||
# Create the build script file
|
||||
( cat <<- xEOFx
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
cd \$PKGDIR
|
||||
`cat tmp`
|
||||
exit
|
||||
xEOFx
|
||||
) > custom-tools/$this_script
|
||||
echo -e "\t@touch $TRACKING_DIR/${name}-${pkg_ver}" >> $MKFILE.tmp
|
||||
fi
|
||||
|
||||
rm -f tmp
|
||||
PREV=$this_script
|
||||
custom_list="${custom_list} ${this_script}"
|
||||
# Include a touch of the target name so make can check
|
||||
# if it's already been made.
|
||||
wrt_touch
|
||||
#
|
||||
#--------------------------------------------------------------------#
|
||||
# >>>>>>>> END OF Makefile ENTRY <<<<<<<< #
|
||||
#--------------------------------------------------------------------#
|
||||
|
||||
# Keep the script file name for Makefile dependencies.
|
||||
PREV=${this_script}
|
||||
done
|
||||
|
||||
# Make the scripts executable.
|
||||
chmod +x custom-tools/*
|
||||
|
||||
echo " Adding custom packages... ${BOLD}DONE${OFF}"
|
||||
}
|
||||
|
||||
|
||||
#----------------------------------#
|
||||
add_CustomToolsURLS() { # Add any users supplied scripts URL information
|
||||
#----------------------------------#
|
||||
local BLFS_SERVER="${SERVER}/pub/blfs/conglomeration/"
|
||||
local this_script
|
||||
local URL PKG PKG_VERSION PKG_FILE MD5
|
||||
|
||||
> urls.lst.tmp
|
||||
for this_script in $JHALFSDIR/custom-commands/*; do
|
||||
if [[ `basename ${this_script}` = "*" ]]; then
|
||||
CUSTOM_TOOLS="n"
|
||||
break
|
||||
fi
|
||||
source $this_script
|
||||
# A cmd only script had no PKG defined
|
||||
[[ "x${PKG}" = "x" ]] && continue
|
||||
|
||||
echo "${URL} ${BLFS_SERVER}${PKG}/${PKG_FILE} ${MD5}" >> urls.lst.tmp
|
||||
# Add any patches..
|
||||
for PATCH in PATCH{1..10}; do
|
||||
[[ -n ${!PATCH} ]] && echo "dummy-url ${!PATCH}" >> urls.lst.tmp
|
||||
done
|
||||
done
|
||||
cat urls.lst.tmp >> $BUILDDIR/sources/urls.lst
|
||||
rm urls.lst.tmp
|
||||
}
|
||||
|
|
7
jhalfs
7
jhalfs
|
@ -337,13 +337,6 @@ if [[ "$REBUILD_MAKEFILE" = "n" ]] ; then
|
|||
fi
|
||||
#
|
||||
|
||||
# Copy custom tools config files, if requested
|
||||
if [[ "${CUSTOM_TOOLS}" = "y" ]]; then
|
||||
echo "Copying custom tool scripts to $JHALFSDIR"
|
||||
mkdir -p $JHALFSDIR/custom-commands
|
||||
cp -f custom/config/* $JHALFSDIR/custom-commands
|
||||
fi
|
||||
#
|
||||
# Install blfs-tool, if requested.
|
||||
if [[ "${BLFS_TOOL}" = "y" ]] ; then
|
||||
# Install the files
|
||||
|
|
Reference in a new issue