diff --git a/BLFS/Makefile b/BLFS/Makefile new file mode 100644 index 0000000..a8486df --- /dev/null +++ b/BLFS/Makefile @@ -0,0 +1,33 @@ +# From the Build Scripts Written By: Jim Gifford +# Modified By: Joe Ciccone + +TOPDIR=$(shell pwd) +CONFIG_CONFIG_IN = aConfig.in +CONFIG = menu + +all: menuconfig + +$(CONFIG)/conf: + $(MAKE) -C $(CONFIG) conf + +$(CONFIG)/mconf: + $(MAKE) -C $(CONFIG) ncurses conf mconf + +menuconfig: $(CONFIG)/mconf + @$(CONFIG)/mconf $(CONFIG_CONFIG_IN) + +config: $(CONFIG)/conf + @$(CONFIG)/conf $(CONFIG_CONFIG_IN) + +# Clean up + +clean: + rm -f configuration configuration.old error + - $(MAKE) -C $(CONFIG) clean + +clean-target: + rm -f error + - $(MAKE) -C $(CONFIG) clean + +.PHONY: all menuconfig config clean clean-target diff --git a/BLFS/gen_pkg_book.sh b/BLFS/gen_pkg_book.sh new file mode 100755 index 0000000..4f1c455 --- /dev/null +++ b/BLFS/gen_pkg_book.sh @@ -0,0 +1,117 @@ +#!/bin/bash + +# +# Read and parse the configuration parameters.. +# +ConfigFile="configuration" +while [ 0 ]; do + read || break 1 + + # Garbage collection + case ${REPLY} in + \#* | '') continue ;; + esac + + case "${REPLY}" in + CONFIG_ALSA=* | \ + CONFIG_GNOME-CORE=* | \ + CONFIG_GNOME-FULL=* | \ + CONFIG_KDE-CORE=* | \ + CONFIG_KDE-FULL=* | \ + CONFIG_KDE-KOFFICE=* | \ + CONFIG_XORG7=* ) REPLY=${REPLY%=*} # Strip the trailing '=y' test.. unecessary + echo -n "${REPLY}" + if [[ $((++cntr)) > 1 ]]; then + echo " <<-- ERROR:: SELECT ONLY 1 PACKAGE AT A TIME, META-PACKAGE NOT SELECTED" + else + echo "" + optTARGET=$(echo $REPLY | cut -d "_" -f2 | tr [A-Z] [a-z]) + fi + continue ;; + + # Create global variables for these parameters. + optDependency=* | \ + PRINT_SERVER=* | \ + MAIL_SERVER=* | \ + GHOSTSCRIPT=* | \ + KBR5=* | \ + X11=* | \ + SUDO=* | \ + TRACKING_DIR=* ) eval ${REPLY} # Define/set a global variable.. + continue ;; + esac + + if [[ "${REPLY}" =~ "^CONFIG_" ]]; then + echo -n "$REPLY" + if [[ $((++cntr)) > 1 ]]; then + echo " <<-- ERROR SELECT ONLY 1 PACKAGE AT A TIME, WILL NOT BUILD" + else + echo "" + optTARGET=$( echo $REPLY | sed -e 's@CONFIG_@@' -e 's@=y@@' ) + fi + fi +done <$ConfigFile + +# +# Regenerate the META-package dependencies from the configuration file +# +rm -f libs/*.dep-MOD +while [ 0 ]; do + read || break 1 + case ${REPLY} in + \#* | '') continue ;; + esac + + # Drop the "=y" + REPLY=${REPLY%=*} + if [[ "${REPLY}" =~ "^DEP_" ]]; then + META_PACKAGE=$(echo $REPLY | cut -d "_" -f2 | tr [A-Z] [a-z]) + DEP_FNAME=$(echo $REPLY | cut -d "_" -f3) + echo "${DEP_FNAME}" >>libs/${META_PACKAGE}.dep-MOD + fi + +done <$ConfigFile +# +# Replace to 'old' dependency file with a new one. +# +for dst in libs/*.dep-MOD; do + cp -f $dst ${dst%-MOD} +done + + +set -e +declare TARGET=$optTARGET +declare DEP_LEVEL=$optDependency +declare PKGXML +declare BLFS_XML +declare VERBOSITY=1 +[[ -z $SUDO ]] && SUDO=y + + +#--------------------- +# Constants +source libs/constants.inc +[[ $? > 0 ]] && echo -e "\n\tERROR: constants.inc did not load..\n" && exit + +#--------------------- +# Dependencies module +source libs/func_dependencies +[[ $? > 0 ]] && echo -e "\n\tERROR: func_dependencies did not load..\n" && exit + +#--------------------- +# parser module +source libs/func_parser +[[ $? > 0 ]] && echo -e "\n\tERROR: func_parser did not load..\n" && exit + + +#------- MAIN -------- +if [[ ! -f packages ]] ; then + echo -e "\tNo packages file has been found.\n" + echo -e "\tExecution aborted.\n" + exit 1 +fi + +generate_dependency_tree +generate_TARGET_xml +generate_target_book +create_build_scripts "${SUDO}"