diff --git a/BLFS/xsl/scripts.xsl b/BLFS/xsl/scripts.xsl index a3f3efa..85bfccc 100644 --- a/BLFS/xsl/scripts.xsl +++ b/BLFS/xsl/scripts.xsl @@ -151,7 +151,8 @@ case $PACKAGE in *) UNPACKDIR=$PKG_DIR-build mkdir $UNPACKDIR - cp $PACKAGE $UNPACKDIR + cp $SRC_DIR/$PACKAGE $UNPACKDIR + cp $(find . -mindepth 1 -maxdepth 1 -type l) $UNPACKDIR ;; esac export UNPACKDIR diff --git a/common/libs/func_install_blfs b/common/libs/func_install_blfs index c762413..caeeef1 100644 --- a/common/libs/func_install_blfs +++ b/common/libs/func_install_blfs @@ -193,12 +193,6 @@ if [ "$DEP_LYNX" = y ]; then -i $BUILDDIR$BLFS_ROOT/scripts/*lynx fi fi -# The book instructions for CA certificates suppose that the cerdata.txt -# file is in the same directory as make-ca.sh-. This is not the -# case with our default instructions. Just remove the "cd $UNPACKDIR" here. -if test -f $BUILDDIR$BLFS_ROOT/scripts/*cacerts; then - sed -i '/cd \$UNPACKDIR/d' $BUILDDIR$BLFS_ROOT/scripts/*cacerts -fi # At last generates the build Makefile mkdir -p $BUILDDIR$BLFS_ROOT/work pushd $BUILDDIR$BLFS_ROOT/work diff --git a/common/libs/func_validate_configs.sh b/common/libs/func_validate_configs.sh index 999e7e2..b3f4926 100644 --- a/common/libs/func_validate_configs.sh +++ b/common/libs/func_validate_configs.sh @@ -83,6 +83,15 @@ inline_doc exit 1 } +# This function is only used when testing package management files. + write_pkg_and_die() { + echo -e "\n${DD_BORDER}" + echo "Package management is requested but" >&2 + echo -e $* >&2 + echo -e "${DD_BORDER}\n" + exit 1 + } + validate_file() { # For parameters ending with a '+' failure causes a warning message only echo -n "`eval echo $PARAM_VALS`" @@ -192,6 +201,28 @@ inline_doc [[ "${!config_param}" = "**EDIT ME**" ]] && write_error_and_die ;; + # Case of PKGMNGT: two files, packageManager.xml and packInstall.sh + # must exist in $PKGMNGTDIR: + PKGMNGT) echo -e "`eval echo $PARAM_VALS`" + if [ ! -e "$PKGMNGTDIR/packageManager.xml" ]; then + write_pkg_and_die $PKGMNGTDIR/packageManager.xml does not exist + fi + if [ ! -e "$PKGMNGTDIR/packInstall.sh" ]; then + write_pkg_and_die $PKGMNGTDIR/packInstall.sh does not exist + fi + if [ ! -s "$PKGMNGTDIR/packageManager.xml" ]; then + write_pkg_and_die $PKGMNGTDIR/packageManager.xml has zero size + fi + if [ ! -s "$PKGMNGTDIR/packInstall.sh" ]; then + write_pkg_and_die $PKGMNGTDIR/packInstall.sh has zero size + fi + if [ ! -r "$PKGMNGTDIR/packageManager.xml" ]; then + write_pkg_and_die $PKGMNGTDIR/packageManager.xml is not readable + fi + if [ ! -r "$PKGMNGTDIR/packInstall.sh" ]; then + write_pkg_and_die $PKGMNGTDIR/packInstall.sh is not readable + fi + ;; # Display non-validated envars found in ${PROGNAME}_PARAM_LIST * ) echo -e "`eval echo $PARAM_VALS`" ;; diff --git a/jhalfs b/jhalfs index ab9b560..d74d56e 100755 --- a/jhalfs +++ b/jhalfs @@ -384,9 +384,10 @@ if [[ "$REBUILD_MAKEFILE" = "n" ]] ; then # # Copy packageManager.xml, if needed - [[ "$PKGMNGT" = "y" ]] && [[ "$PROGNAME" = "lfs" ]] && - cp $PKGMNGTDIR/packageManager.xml $JHALFSDIR/ && + [[ "$PKGMNGT" = "y" ]] && [[ "$PROGNAME" = "lfs" ]] && { + cp $PKGMNGTDIR/packageManager.xml $JHALFSDIR/ cp $PKGMNGTDIR/packInstall.sh $JHALFSDIR/ + } # # Copy urls.xsl, if needed [[ "$GETPKG" = "y" ]] && cp $COMMON_DIR/urls.xsl $JHALFSDIR/