118 lines
3 KiB
Bash
118 lines
3 KiB
Bash
#!/bin/bash
|
|
|
|
# $Id$
|
|
|
|
#----------------------------------#
|
|
wrt_CustomTools_target() { # Add any users supplied scripts
|
|
#----------------------------------#
|
|
PREV=""
|
|
|
|
echo " Adding custom packages... ${BOLD}START${OFF}"
|
|
|
|
# Create the custom_tools scripts directory
|
|
mkdir -p custom-tools
|
|
|
|
for file in $JHALFSDIR/custom-commands/*; do
|
|
if [[ `basename ${file}` = "*" ]]; then
|
|
break
|
|
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
|
|
|
|
# Create the build script file
|
|
( cat <<- xEOFx
|
|
#!/bin/bash
|
|
set -e
|
|
|
|
`cat tmp`
|
|
exit
|
|
xEOFx
|
|
) > custom-tools/${this_script}
|
|
|
|
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
|
|
fi
|
|
|
|
rm -f tmp
|
|
PREV=$this_script
|
|
custom_list="${custom_list} ${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
|
|
}
|