From 16cef03acf8061c3e001e432476ab82f1f4a1b6b Mon Sep 17 00:00:00 2001 From: Pierre Labastie Date: Mon, 28 Feb 2022 13:38:06 +0100 Subject: [PATCH] Remove legacy: First run of CLFS removal --- CLFS/clfs.xsl | 441 ---------- CLFS/master.sh | 1264 --------------------------- CLFS2/clfs2.xsl | 149 ---- CLFS2/master.sh | 536 ------------ CLFS3/clfs3.xsl | 154 ---- CLFS3/master.sh | 586 ------------- custom/examples_CLFS-E/950-dropbear | 46 - custom/examples_CLFS-E/960-iptables | 39 - jhalfs | 3 - 9 files changed, 3218 deletions(-) delete mode 100644 CLFS/clfs.xsl delete mode 100644 CLFS/master.sh delete mode 100644 CLFS2/clfs2.xsl delete mode 100644 CLFS2/master.sh delete mode 100644 CLFS3/clfs3.xsl delete mode 100644 CLFS3/master.sh delete mode 100644 custom/examples_CLFS-E/950-dropbear delete mode 100644 custom/examples_CLFS-E/960-iptables diff --git a/CLFS/clfs.xsl b/CLFS/clfs.xsl deleted file mode 100644 index fa43014..0000000 --- a/CLFS/clfs.xsl +++ /dev/null @@ -1,441 +0,0 @@ - - - %general-entities; -]> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 00 - - - - 0 - - - - - - - - - - - - #!/tools/bin/bash set +h - - - #!/bin/bash set +h - - - - set -e - - - - cd $PKGDIR - - - - echo -e "\n\nTotalseconds: $SECONDS\n" - - exit - - - - - - - - - - - - - - - # - - - - - make -k - - >> $TEST_LOG 2>&1 || true - - - - >> $TEST_LOG 2>&1 - - || true - - - - - - - - - - - - tar.* - - - - - - - export LANG= - - - - - - - - - make mrproper - - cp -v ../bootkernel-config .config - - - cp -v ../kernel-config .config - - - - - - - - - - # - - - - - - - - >> $TEST_LOG 2>&1 || true - - - - { - - ; } >> $TEST_LOG 2>&1 || true - - - - >> $TEST_LOG 2>&1 || true - - - - make -k - - >> $TEST_LOG 2>&1 || true - - - - - >> $TEST_LOG 2>&1 - - - - - - - - - - - - >> $TEST_LOG 2>&1 || true - - - - ( - - >> $TEST_LOG 2>&1 && exit $PIPESTATUS) - - - - { - - ; } >> $TEST_LOG 2>&1 - - - - >> $TEST_LOG 2>&1 || true - - - - - >> $TEST_LOG 2>&1 - - - - - - - - - - - - - - - - - - >> $TEST_LOG 2>&1 || true - - - >> $TEST_LOG 2>&1 - - || true - - - - - - - - - - - - - make -k check >> $TEST_LOG 2>&1 || true - - - - >> $TEST_LOG 2>&1 - - || true - - - - - - - - - - - - >> $TEST_LOG - - - - - - - || true - - - - - make -j1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - -m32 -mcpu=ultrasparc -mtune=ultrasparc - - - -m32 -mcpu=ultrasparc3 -mtune=ultrasparc3 - - - - - - - -m64 -mcpu=ultrasparc -mtune=ultrasparc - - - -m64 -mcpu=ultrasparc3 -mtune=ultrasparc3 - - - - - - - -mcpu=ultrasparc -mtune=ultrasparc - - - -mcpu=ultrasparc3 -mtune=ultrasparc3 - - - - - - - - - - - - - - - - - -m32 -mcpu=ultrasparc -mtune=ultrasparc - - - -m32 -mcpu=ultrasparc3 -mtune=ultrasparc3 - - - - - - - -m64 -mcpu=ultrasparc -mtune=ultrasparc - - - -m64 -mcpu=ultrasparc3 -mtune=ultrasparc3 - - - - - - - -mcpu=ultrasparc -mtune=ultrasparc - - - -mcpu=ultrasparc3 -mtune=ultrasparc3 - - - - - - - **EDITME - - EDITME** - - - - - diff --git a/CLFS/master.sh b/CLFS/master.sh deleted file mode 100644 index 5914ae1..0000000 --- a/CLFS/master.sh +++ /dev/null @@ -1,1264 +0,0 @@ -#!/bin/bash - -orphan_scripts="" # 2 scripts do not fit BOOT_Makefiles LUSER environment - - -#--------------------------------------# -host_prep_Makefiles() { # -#--------------------------------------# - local CLFS_HOST - - echo "${tab_}${GREEN}Processing... ${L_arrow}host prep files ( SETUP ) ${R_arrow}" - - # defined here, only for ease of reading - CLFS_HOST="$(echo $MACHTYPE | sed "s/$(echo $MACHTYPE | cut -d- -f2)/cross/")" -( -cat << EOF -023-creatingtoolsdir: - @\$(call echo_message, Building) - @install -dv \$(MOUNT_PT)/tools && \\ - rm -f /tools && \\ - ln -s \$(MOUNT_PT)/tools / - @\$(call housekeeping) - -024-creatingcrossdir: 023-creatingtoolsdir - @\$(call echo_message, Building) - @install -dv \$(MOUNT_PT)/cross-tools && \\ - rm -f /cross-tools && \\ - ln -s \$(MOUNT_PT)/cross-tools / - @\$(call housekeeping) - -025-addinguser: 024-creatingcrossdir - @\$(call echo_message, Building) - @if [ ! -d \$(LUSER_HOME) ]; then \\ - groupadd \$(LGROUP); \\ - useradd -s /bin/bash -g \$(LGROUP) -d \$(LUSER_HOME) \$(LUSER); \\ - mkdir -pv \$(LUSER_HOME); \\ - chown -v \$(LUSER):\$(LGROUP) \$(LUSER_HOME); \\ - else \\ - touch luser-exist; \\ - fi - @chown -v \$(LUSER) \$(MOUNT_PT)/tools && \\ - chown -v \$(LUSER) \$(MOUNT_PT)/cross-tools && \\ - chmod -R a+wt \$(MOUNT_PT)/\$(SCRIPT_ROOT) && \\ - chmod a+wt \$(SRCSDIR) - @\$(call housekeeping) - -026-settingenvironment: 025-addinguser - @\$(call echo_message, Building) - @if [ -f \$(LUSER_HOME)/.bashrc -a ! -f \$(LUSER_HOME)/.bashrc.XXX ]; then \\ - mv \$(LUSER_HOME)/.bashrc \$(LUSER_HOME)/.bashrc.XXX; \\ - fi - @if [ -f \$(LUSER_HOME)/.bash_profile -a ! -f \$(LUSER_HOME)/.bash_profile.XXX ]; then \\ - mv \$(LUSER_HOME)/.bash_profile \$(LUSER_HOME)/.bash_profile.XXX; \\ - fi; - @echo "set +h" > \$(LUSER_HOME)/.bashrc && \\ - echo "umask 022" >> \$(LUSER_HOME)/.bashrc && \\ - echo "CLFS=\$(MOUNT_PT)" >> \$(LUSER_HOME)/.bashrc && \\ - echo "LC_ALL=POSIX" >> \$(LUSER_HOME)/.bashrc && \\ - echo "PATH=/cross-tools/bin:/bin:/usr/bin" >> \$(LUSER_HOME)/.bashrc && \\ - echo "export CLFS LC_ALL PATH" >> \$(LUSER_HOME)/.bashrc && \\ - echo "" >> \$(LUSER_HOME)/.bashrc && \\ - echo "unset CFLAGS" >> \$(LUSER_HOME)/.bashrc && \\ - echo "unset CXXFLAGS" >> \$(LUSER_HOME)/.bashrc && \\ - echo "unset PKG_CONFIG_PATH" >> \$(LUSER_HOME)/.bashrc && \\ - echo "" >> \$(LUSER_HOME)/.bashrc && \\ -EOF -) >> $MKFILE.tmp -if ! [ -e final-preps/*variables ]; then - ( - cat << EOF - echo "export CLFS_HOST=\"${CLFS_HOST}\"" >> \$(LUSER_HOME)/.bashrc && \\ - echo "export CLFS_TARGET=\"${TARGET}\"" >> \$(LUSER_HOME)/.bashrc && \\ - echo "export CLFS_TARGET32=\"${TARGET32}\"" >> \$(LUSER_HOME)/.bashrc && \\ -EOF - ) >> $MKFILE.tmp -fi -( -cat << EOF - echo "source $JHALFSDIR/envars" >> \$(LUSER_HOME)/.bashrc - @chown \$(LUSER):\$(LGROUP) \$(LUSER_HOME)/.bashrc && \\ - chmod a+wt \$(MOUNT_PT) && \\ - if [ -d \$(MOUNT_PT)/var ]; then \\ - chown -R \$(LUSER) \$(MOUNT_PT)/var; \\ - fi && \\ - touch envars && \\ - chown \$(LUSER):\$(LGROUP) envars - @\$(call housekeeping) -EOF -) >> $MKFILE.tmp - host_prep=" 023-creatingtoolsdir 024-creatingcrossdir 026-settingenvironment" - -} - -#--------------------------------------# -final_preps_Makefiles() { -#--------------------------------------# - echo "${tab_}${GREEN}Processing... ${L_arrow}variables ( LUSER ) ${R_arrow}" - for file in final-preps/* ; do - this_script=`basename $file` - case $this_script in - *variables ) - ;; - *) continue; ;; - esac - # Set the dependency for the first target. - if [ -z $PREV ] ; then PREV=026-settingenvironment ; fi - - # First append each name of the script files to a list (this will become - # the names of the targets in the Makefile - final_preps="$final_preps $this_script" - - # No need to grab the package name - - LUSER_wrt_target "${this_script}" "$PREV" - LUSER_wrt_RunAsUser "${file}" - wrt_touch - PREV=$this_script - done # for file in .... -} - -#--------------------------------------# -cross_tools_Makefiles() { # -#--------------------------------------# - echo "${tab_}${GREEN}Processing... ${L_arrow}cross tools ( LUSER ) ${R_arrow}" - - for file in cross-tools/* ; do - # Keep the script file name - this_script=`basename $file` - # - # Skip this script... - case $this_script in - *cflags* | *variables* ) # work done in host_prep_Makefiles - continue; ;; - *) ;; - esac - # - # Set the dependency for the first target. - if [ -z $PREV ] ; then PREV=026-settingenvironment ; fi - - # First append each name of the script files to a list (this will become - # the names of the targets in the Makefile - cross_tools="$cross_tools $this_script" - - # Grab the name of the target (minus the -headers or -cross in the case of gcc - # and binutils in chapter 5) - name=`echo $this_script | sed -e 's@[0-9]\{3\}-@@' \ - -e 's@-static@@' \ - -e 's@-final@@' \ - -e 's@-64@@' \ - -e 's@-n32@@' \ - -e 's@-pass1@@'` - pkg_tarball=$(get_package_tarball_name $name) - - #--------------------------------------------------------------------# - # >>>>>>>> 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. - LUSER_wrt_target "${this_script}" "$PREV" - # - # If $pkg_tarball isn't empty, we've got a package... - # - [[ "$pkg_tarball" != "" ]] && LUSER_wrt_unpack "$pkg_tarball" - [[ "$pkg_tarball" != "" ]] && [[ "$OPTIMIZE" = 3 ]] && wrt_makeflags "${name}" - # - LUSER_wrt_RunAsUser "${file}" - # - [[ "$pkg_tarball" != "" ]] && LUSER_RemoveBuildDirs "${name}" - # - # 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 # for file in .... -} - -#--------------------------------------# -temptools_Makefiles() { # -#--------------------------------------# - echo "${tab_}${GREEN}Processing... ${L_arrow}temp system ( LUSER ) ${R_arrow}" - - for file in temp-system/* ; do - # Keep the script file name - this_script=`basename $file` - # - # Deal with any odd scripts.. - case $this_script in - *choose) # The choose script will fail if you cannot enter the new environment - # If the 'boot' build method was chosen don't run the script - [[ $METHOD = "boot" ]] && continue; ;; - *) ;; - esac - - # - # First append each name of the script files to a list (this will become - # the names of the targets in the Makefile - temptools="$temptools $this_script" - - # - # Grab the name of the target, strip id number, XXX-script - name=`echo $this_script | sed -e 's@[0-9]\{3\}-@@'` - # - pkg_tarball=$(get_package_tarball_name $name) - - #--------------------------------------------------------------------# - # >>>>>>>> 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. - LUSER_wrt_target "${this_script}" "$PREV" - # - # If $pkg_tarball isn't empty, we've got a package... - # Insert instructions for unpacking the package and to set the PKGDIR variable. - # - [[ "$pkg_tarball" != "" ]] && LUSER_wrt_unpack "$pkg_tarball" - [[ "$pkg_tarball" != "" ]] && [[ "$OPTIMIZE" -ge "2" ]] && wrt_optimize "$name" && wrt_makeflags "$name" - # - LUSER_wrt_RunAsUser "${file}" - # - [[ "$pkg_tarball" != "" ]] && LUSER_RemoveBuildDirs "${name}" - # - # 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 # for file in .... -} - - -#--------------------------------------# -chroot_Makefiles() { # -#--------------------------------------# - echo "${tab_}${GREEN}Processing... ${L_arrow}tmptools CHROOT ( CHROOT ) ${R_arrow}" - - for file in chroot/* ; do - # Keep the script file name - this_script=`basename $file` - # - # Skipping scripts is done now and not included in the build tree. - case $this_script in - *chroot*) continue ;; - esac - - # - # First append each name of the script files to a list (this will become - # the names of the targets in the Makefile - case "${this_script}" in - *kernfs) orphan_scripts="${orphan_scripts} ${this_script}" ;; - *) chroottools="$chroottools $this_script" ;; - esac - - # Grab the name of the target, strip id number, XXX-script - name=`echo $this_script | sed -e 's@[0-9]\{3\}-@@'` - - pkg_tarball=$(get_package_tarball_name $name) - - # This is very ugly:: util-linux is in /chroot but must be run under LUSER - # Same for e2fsprogs (in CLFS 1.1.0) - # .. Customized makefile entry - case "${this_script}" in - *util-linux) - LUSER_wrt_target "${this_script}" "$PREV" - LUSER_wrt_unpack "$pkg_tarball" - [[ "$OPTIMIZE" -ge "2" ]] && wrt_optimize "$name" && wrt_makeflags "$name" - LUSER_wrt_RunAsUser "${file}" - LUSER_RemoveBuildDirs "${name}" - wrt_touch - temptools="$temptools $this_script" - continue ;; - *util-linux-ng) - LUSER_wrt_target "${this_script}" "$PREV" - LUSER_wrt_unpack "$pkg_tarball" - [[ "$OPTIMIZE" -ge "2" ]] && wrt_optimize "$name" && wrt_makeflags "$name" - LUSER_wrt_RunAsUser "${file}" - LUSER_RemoveBuildDirs "${name}" - wrt_touch - temptools="$temptools $this_script" - continue ;; - *util-linux-libs) - LUSER_wrt_target "${this_script}" "$PREV" - LUSER_wrt_unpack "$pkg_tarball" - [[ "$OPTIMIZE" -ge "2" ]] && wrt_optimize "$name" && wrt_makeflags "$name" - LUSER_wrt_RunAsUser "${file}" - LUSER_RemoveBuildDirs "${name}" - wrt_touch - temptools="$temptools $this_script" - continue ;; - *e2fsprogs) - LUSER_wrt_target "${this_script}" "$PREV" - LUSER_wrt_unpack "$pkg_tarball" - [[ "$OPTIMIZE" -ge "2" ]] && wrt_optimize "$name" && wrt_makeflags "$name" - LUSER_wrt_RunAsUser "${file}" - LUSER_RemoveBuildDirs "${name}" - wrt_touch - temptools="$temptools $this_script" - continue ;; - *e2fsprogs-libs) - LUSER_wrt_target "${this_script}" "$PREV" - LUSER_wrt_unpack "$pkg_tarball" - [[ "$OPTIMIZE" -ge "2" ]] && wrt_optimize "$name" && wrt_makeflags "$name" - LUSER_wrt_RunAsUser "${file}" - LUSER_RemoveBuildDirs "${name}" - wrt_touch - temptools="$temptools $this_script" - continue ;; - esac - - - #--------------------------------------------------------------------# - # >>>>>>>> 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. - CHROOT_wrt_target "${this_script}" "$PREV" - # - # If $pkg_tarball isn't empty, we've got a package... - # Insert instructions for unpacking the package and changing directories - # - if [ "$pkg_tarball" != "" ] ; then - CHROOT_Unpack "$pkg_tarball" - [[ "$OPTIMIZE" -ge "2" ]] && wrt_optimize "$name" && wrt_makeflags "$name" - fi - # - # Select a script execution method - case $this_script in - *kernfs) wrt_RunAsRoot "${file}" ;; - *) CHROOT_wrt_RunAsRoot "${file}" ;; - esac - # - # Housekeeping...remove the build directory(ies), except if the package build fails. - [[ "$pkg_tarball" != "" ]] && CHROOT_wrt_RemoveBuildDirs "${name}" - # - # 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 # for file in... -} - - -#--------------------------------------# -boot_Makefiles() { # -#--------------------------------------# - - echo "${tab_}${GREEN}Processing... ${L_arrow}tmptools BOOT ( LUSER ) ${R_arrow}" - # - # Create a target bootable partition containing a compile environment. Later - # on we boot into this environment and contine the build. - # - for file in boot/* ; do - # Keep the script file name - this_script=`basename $file` - - # A little housekeeping on the scripts - case $this_script in - *grub | *aboot | *colo | *silo | *arcload | *lilo | *introduction ) continue ;; - *how-to-view*) continue ;; - *whatnext*) continue ;; - *fstab) [[ -z "${FSTAB}" ]] || - [[ ${FSTAB} == $BUILDDIR/sources/fstab ]] || - cp ${FSTAB} $BUILDDIR/sources/fstab ;; - *kernel) # if there is no kernel config file do not build the kernel - [[ -z $BOOT_CONFIG ]] && continue - # Copy the config file to /sources with a standardized name - [[ ${BOOT_CONFIG} == $BUILDDIR/sources/bootkernel-config ]] || - cp $BOOT_CONFIG $BUILDDIR/sources/bootkernel-config - ;; - esac - # - # First append each name of the script files to a list (this will become - # the names of the targets in the Makefile). Those names differ depending - # on the version of the book. What makes the difference between those - # versions is the presence of "how-to-view" in the boot chapter. - if [ -f boot/*how-to-view ]; then - case "${this_script}" in - *changingowner) - orphan_scripts="${orphan_scripts} ${this_script}" - ;; - *creatingdirs) - orphan_scripts="${orphan_scripts} ${this_script}" - ;; - *createfiles) - orphan_scripts="${orphan_scripts} ${this_script}" - ;; - *devices) - orphan_scripts="${orphan_scripts} ${this_script}" - ;; - *flags) - orphan_scripts="${orphan_scripts} ${this_script}" - ;; - *fstab) - orphan_scripts="${orphan_scripts} ${this_script}" - ;; - *pwdgroup) - orphan_scripts="${orphan_scripts} ${this_script}" - ;; - *settingenvironment) - orphan_scripts="${orphan_scripts} ${this_script}" - ;; - *) - boottools="$boottools $this_script" - ;; - esac - else - case "${this_script}" in - *changingowner) - orphan_scripts="${orphan_scripts} ${this_script}" - ;; - *devices) - orphan_scripts="${orphan_scripts} ${this_script}" - ;; - *) - boottools="$boottools $this_script" - ;; - esac - fi - # - # Grab the name of the target, strip id number and misc words. - case $this_script in - *kernel) name=linux ;; - *bootscripts) name="bootscripts-cross-lfs" ;; - *boot-scripts) name="boot-scripts-cross-lfs" ;; - *udev-rules) name="udev-cross-lfs" ;; - *grub-build) name=grub ;; - *-aboot-build) name=aboot ;; - *yaboot-build) name=yaboot ;; - *colo-build) name=colo ;; - *silo-build) name=silo ;; - *arcload-build) name=arcload ;; - *lilo-build) name=lilo ;; - *) name=`echo $this_script | sed -e 's@[0-9]\{3\}-@@' -e 's@-build@@' ` ;; - esac - # Identify the unique version naming scheme for the clfs bootscripts..(bad boys) - pkg_tarball=$(get_package_tarball_name $name) - - #--------------------------------------------------------------------# - # >>>>>>>> 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. - LUSER_wrt_target "${this_script}" "$PREV" - # - # If $pkg_tarball isn't empty, we've got a package... - # Insert instructions for unpacking the package and changing directories - # - [[ "$pkg_tarball" != "" ]] && LUSER_wrt_unpack "$pkg_tarball" - [[ "$pkg_tarball" != "" ]] && [[ "$OPTIMIZE" -ge "2" ]] && wrt_optimize "$name" && wrt_makeflags "$name" - # - # Select a script execution method - if [ -f boot/*how-to-view ]; then - case $this_script in - # The following 8 scripts are defined in the /boot directory but need - # to be run as a root user. Set them up here but run them in another - # phase - *changingowner) wrt_RunAsRoot "${file}" ;; - *creatingdirs) wrt_RunAsRoot "${file}" ;; - *createfiles) wrt_RunAsRoot "${file}" ;; - *devices) wrt_RunAsRoot "${file}" ;; - *flags) wrt_RunAsRoot "${file}" ;; - *fstab) - if [[ -n "$FSTAB" ]]; then - LUSER_wrt_CopyFstab - else - wrt_RunAsRoot "${file}" - fi - ;; - *pwdgroup) wrt_RunAsRoot "${file}" ;; - *settingenvironment) wrt_RunAsRoot "${file}" ;; - *) LUSER_wrt_RunAsUser "${file}" ;; - esac - else - case $this_script in - # The following 2 scripts are defined in the /boot directory but need - # to be run as a root user. Set them up here but run them in another - # phase - *changingowner) wrt_RunAsRoot "${file}" ;; - *devices) wrt_RunAsRoot "${file}" ;; - *fstab) - if [[ -n "${FSTAB}" ]]; then - LUSER_wrt_CopyFstab - else - LUSER_wrt_RunAsUser "${file}" - fi - ;; - *) LUSER_wrt_RunAsUser "${file}" ;; - esac - fi - # - # Housekeeping...remove any build directory(ies) except if the package build fails. - [[ "$pkg_tarball" != "" ]] && LUSER_RemoveBuildDirs "${name}" - # - # 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 -} - - -#--------------------------------------# -testsuite_tools_Makefiles() { # -#--------------------------------------# - - if [[ "${METHOD}" = "chroot" ]]; then - echo "${tab_}${GREEN}Processing... ${L_arrow}(chroot) testsuite tools ( CHROOT ) ${R_arrow}" - else - echo "${tab_}${GREEN}Processing... ${L_arrow}(boot) testsuite tools ( ROOT ) ${R_arrow}" - PREV="" - fi - - for file in testsuite-tools/* ; do - # Keep the script file name - this_script=`basename $file` - - # First append each name of the script files to a list (this will become - # the names of the targets in the Makefile - testsuitetools="$testsuitetools $this_script" - - # Grab the name of the target, strip id number, XXX-script - name=`echo $this_script | sed -e 's@[0-9]\{3\}-@@'\ - -e 's@-64bit@@' \ - -e 's@-64@@' \ - -e 's@64@@' \ - -e 's@n32@@'` - - pkg_tarball=$(get_package_tarball_name $name) - - #--------------------------------------------------------------------# - # >>>>>>>> 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. - CHROOT_wrt_target "${this_script}" "$PREV" - # - CHROOT_Unpack "$pkg_tarball" - [[ "$OPTIMIZE" -ge "2" ]] && wrt_optimize "$name" && wrt_makeflags "$name" - # - CHROOT_wrt_RunAsRoot "${file}" - # - CHROOT_wrt_RemoveBuildDirs "${name}" - # - # 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 -} - - -#--------------------------------------# -final_system_Makefiles() { # -#--------------------------------------# - # Set envars and scripts for iteration targets - if [[ -z "$1" ]] ; then - local N="" - # In boot method the makesys phase was initiated in testsuite_tools_makefile - [[ "${METHOD}" = "boot" ]] && [[ "$TEST" = 0 ]] && PREV="" - else - local N=-build_$1 - local basicsystem="" - mkdir final-system$N - cp final-system/* final-system$N - for script in final-system$N/* ; do - # Overwrite existing symlinks, files, and dirs - sed -e 's/ln -sv/&f/g' \ - -e 's/mv -v/&f/g' \ - -e 's/mkdir -v/&p/g' -i ${script} - # Rename the scripts - mv ${script} ${script}$N - done - # Remove Bzip2 binaries before make install (CLFS-1.0 compatibility) - sed -e 's@make install@rm -vf /usr/bin/bz*\n&@' -i final-system$N/*-bzip2$N - # Delete *old Readline libraries just after make install - sed -e 's@make install@&\nrm -v /lib/lib{history,readline}*old@' -i final-system$N/*-readline$N - fi - - if [[ "${METHOD}" = "chroot" ]]; then - echo "${tab_}${GREEN}Processing... ${L_arrow}(chroot) final system$N ( CHROOT ) ${R_arrow}" - else - echo "${tab_}${GREEN}Processing... ${L_arrow}(boot) final system$N ( ROOT ) ${R_arrow}" - fi - - for file in final-system$N/* ; do - # Keep the script file name - this_script=`basename $file` - - # Test if the stripping phase must be skipped. - # Skip also temp-perl for iterative runs - case $this_script in - *stripping*) [[ "$STRIP" = "n" ]] && continue ;; - *temp-perl*) [[ -n "$N" ]] && continue ;; - esac - - # Grab the name of the target, strip id number, XXX-script. - # name1 is partially stripped and should be used for logging files. - # name is completely stripped and is used for grabbing - # the package name. - name1=`echo $this_script | sed -e 's@[0-9]\{3\}-@@' \ - -e 's,'$N',,'` - name=`echo $name1 | sed -e 's@temp-@@' \ - -e 's@-64bit@@' \ - -e 's@-64@@' \ - -e 's@64@@' \ - -e 's@n32@@'` - - # Find the version of the command files, if it corresponds with the building of - # a specific package. We need this here to can skip scripts not needed for - # iterations rebuilds - pkg_tarball=$(get_package_tarball_name $name) - - if [[ "$pkg_tarball" = "" ]] && [[ -n "$N" ]] ; then - case "${this_script}" in - *stripping*) ;; - *) continue ;; - esac - fi - - # Append each name of the script files to a list (this will become - # the names of the targets in the Makefile - basicsystem="$basicsystem ${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. - CHROOT_wrt_target "${this_script}" "$PREV" - - # If $pkg_tarball isn't empty, we've got a package... - if [ "$pkg_tarball" != "" ] ; then - # Touch timestamp file if installed files logs will be created. - # But only for the firt build when running iterative builds. - if [ "${INSTALL_LOG}" = "y" ] && [ "x${N}" = "x" ] ; then - CHROOT_wrt_TouchTimestamp - fi - CHROOT_Unpack "$pkg_tarball" - # If the testsuites must be run, initialize the log file - case $name in - binutils | gcc | glibc | eglibc | gmp | mpfr | mpc | isl | cloog ) - [[ "$TEST" != "0" ]] && CHROOT_wrt_test_log "${this_script}" - ;; - * ) - [[ "$TEST" = "2" ]] || [[ "$TEST" = "3" ]] && CHROOT_wrt_test_log "${this_script}" - ;; - esac - # If using optimizations, write the instructions - [[ "$OPTIMIZE" != "0" ]] && wrt_optimize "$name" && wrt_makeflags "$name" - fi - # - CHROOT_wrt_RunAsRoot "${file}" - # - # Write installed files log and remove the build directory(ies) - # except if the package build fails. - if [ "$pkg_tarball" != "" ] ; then - CHROOT_wrt_RemoveBuildDirs "$name" - if [ "${INSTALL_LOG}" = "y" ] && [ "x${N}" = "x" ] ; then - CHROOT_wrt_LogNewFiles "$name1" - fi - fi - # - # 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} - # Set system_build envar for iteration targets - system_build=$basicsystem - done # for file in final-system/* ... -} - -#--------------------------------------# -bootscripts_Makefiles() { # -#--------------------------------------# - -# New versions of the book do not have bootscripts anymore -# (use systemd configuration files) -# Define a variable to be used for the right script directory to parse - if [ -d bootscripts ]; then - config="bootscripts" - else - config="system-config" - fi - - if [[ "${METHOD}" = "chroot" ]]; then - echo "${tab_}${GREEN}Processing... ${L_arrow}(chroot) $config ( CHROOT ) ${R_arrow}" - else - echo "${tab_}${GREEN}Processing... ${L_arrow}(boot) $config ( ROOT ) ${R_arrow}" - fi - - for file in $config/* ; do - # Keep the script file name - this_script=`basename $file` - - case $this_script in - *udev) continue ;; # This is not a script but a comment, we want udev-rules - *console*) continue ;; # Use the files that came with the bootscripts -# fstab is now here (for 3.x.y) - *fstab) [[ -z "${FSTAB}" ]] || - [[ ${FSTAB} == $BUILDDIR/sources/fstab ]] || - cp ${FSTAB} $BUILDDIR/sources/fstab ;; - *) ;; - esac - - # First append each name of the script files to a list (this will become - # the names of the targets in the Makefile - bootscripttools="$bootscripttools $this_script" - - # Grab the name of the target, strip id number, XXX-script. - # name1 is partially stripped and should be used for logging files. - # name is completely stripped and is used for grabbing - # the package name. - name1=`echo $this_script | sed -e 's@[0-9]\{3\}-@@'` - name=`echo $name1 | sed -e 's@-64bit@@' \ - -e 's@-64@@' \ - -e 's@64@@' \ - -e 's@n32@@'` - case $name in - *bootscripts*) name=bootscripts-cross-lfs ;; - *udev-rules) name=udev-cross-lfs ;; - esac - - pkg_tarball=$(get_package_tarball_name $name) - - #--------------------------------------------------------------------# - # >>>>>>>> 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. - CHROOT_wrt_target "${this_script}" "$PREV" - # - # If $pkg_tarball isn't empty, we've got a package... - # - if [ "$pkg_tarball" != "" ] ; then - if [ "${INSTALL_LOG}" = "y" ] ; then - CHROOT_wrt_TouchTimestamp - fi - CHROOT_Unpack "$pkg_tarball" - fi - # - case $this_script in - *fstab*) if [[ -n "$FSTAB" ]]; then - CHROOT_wrt_CopyFstab - else - CHROOT_wrt_RunAsRoot "${file}" - fi - ;; - *) CHROOT_wrt_RunAsRoot "${file}" - ;; - esac - # - # Write installed files log and remove the build directory(ies) - # except if the package build fails. - if [ "$pkg_tarball" != "" ] ; then - CHROOT_wrt_RemoveBuildDirs "$name" - if [ "${INSTALL_LOG}" = "y" ] ; then - CHROOT_wrt_LogNewFiles "$name1" - fi - fi - # - # 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 # for file in bootscripts/* ... -} - -#--------------------------------------# -network_Makefiles() { # -#--------------------------------------# - - if [[ "${METHOD}" = "chroot" ]]; then - echo "${tab_}${GREEN}Processing... ${L_arrow}(chroot) network ( CHROOT ) ${R_arrow}" - else - echo "${tab_}${GREEN}Processing... ${L_arrow}(boot) network ( ROOT ) ${R_arrow}" - fi - - for file in network/* ; do - # Keep the script file name - this_script=`basename $file` - - case $this_script in - *choose) continue ;; # This is not a script but a commentary. - *dhcp) continue ;; # Assume static networking. - *dhcpcd) continue ;; # Assume static networking. - *) ;; - esac - - # First append each name of the script files to a list (this will become - # the names of the targets in the Makefile - networktools="$networktools $this_script" - - # Grab the name of the target, strip id number, XXX-script - # name1 is partially stripped and should be used for logging files. - # name is completely stripped and is used for grabbing - # the package name. - name1=`echo $this_script | sed -e 's@[0-9]\{3\}-@@'` - name=`echo $name1 | sed -e 's@-64bit@@' \ - -e 's@-64@@' \ - -e 's@64@@' \ - -e 's@n32@@'` - case $name in - network-scripts) name=clfs-network-scripts ;; - esac - - pkg_tarball=$(get_package_tarball_name $name) - - #--------------------------------------------------------------------# - # >>>>>>>> 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. - CHROOT_wrt_target "${this_script}" "$PREV" - # - # If $pkg_tarball isn't empty, we've got a package... - # - if [ "$pkg_tarball" != "" ] ; then - if [ "${INSTALL_LOG}" = "y" ] ; then - CHROOT_wrt_TouchTimestamp - fi - CHROOT_Unpack "$pkg_tarball" - fi - # - CHROOT_wrt_RunAsRoot "${file}" - # - # Write installed files log and remove the build directory(ies) - # except if the package build fails. - if [ "$pkg_tarball" != "" ] ; then - CHROOT_wrt_RemoveBuildDirs "$name" - if [ "${INSTALL_LOG}" = "y" ] ; then - CHROOT_wrt_LogNewFiles "$name1" - fi - fi - # - # 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 # for file in network/* ... -} - -#--------------------------------------# -bootable_Makefiles() { # -#--------------------------------------# - - if [[ "${METHOD}" = "chroot" ]]; then - echo "${tab_}${GREEN}Processing... ${L_arrow}(chroot) make bootable ( CHROOT ) ${R_arrow}" - else - echo "${tab_}${GREEN}Processing... ${L_arrow}(boot) make bootable ( ROOT ) ${R_arrow}" - fi - - - for file in bootable/* ; do - # Keep the script file name - this_script=`basename $file` - - # A little housekeeping on the scripts - case $this_script in - *grub | *aboot | *colo | *silo | *arcload | *lilo | *reboot* ) continue ;; - *fstab) [[ -z "${FSTAB}" ]] || - [[ ${FSTAB} == $BUILDDIR/sources/fstab ]] || - cp ${FSTAB} $BUILDDIR/sources/fstab ;; - *kernel) # if there is no kernel config file do not build the kernel - [[ -z $CONFIG ]] && continue - # Copy the config file to /sources with a standardized name - [[ $CONFIG == $BUILDDIR/sources/kernel-config ]] || - cp $CONFIG $BUILDDIR/sources/kernel-config - ;; - esac - # - # First append each name of the script files to a list (this will become - # the names of the targets in the Makefile - bootabletools="$bootabletools $this_script" - # - # Grab the name of the target, strip id number and misc words. - name=`echo $this_script | sed -e 's@[0-9]\{3\}-@@' -e 's@-build@@' ` - case $this_script in - *kernel*) name=linux - ;; - esac - - pkg_tarball=$(get_package_tarball_name $name) - - #--------------------------------------------------------------------# - # >>>>>>>> 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. - CHROOT_wrt_target "${this_script}" "$PREV" - # - # If $pkg_tarball isn't empty, we've got a package... - # Insert instructions for unpacking the package and changing directories - # - if [ "$pkg_tarball" != "" ] ; then - if [ "${INSTALL_LOG}" = "y" ] ; then - CHROOT_wrt_TouchTimestamp - fi - CHROOT_Unpack "$pkg_tarball" - fi - # - # Select a script execution method - case $this_script in - *fstab*) if [[ -n "$FSTAB" ]]; then - CHROOT_wrt_CopyFstab - else - CHROOT_wrt_RunAsRoot "${file}" - fi - ;; - *) CHROOT_wrt_RunAsRoot "${file}" - ;; - esac - # - # Write installed files log and remove the build directory(ies) - # except if the package build fails. - if [ "$pkg_tarball" != "" ] ; then - CHROOT_wrt_RemoveBuildDirs "$name" - if [ "${INSTALL_LOG}" = "y" ] ; then - CHROOT_wrt_LogNewFiles "$name" - fi - fi - # - # 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 - -} - - -#--------------------------------------# -build_Makefile() { # Construct a Makefile from the book scripts -#--------------------------------------# - - echo "...Creating Makefile... ${BOLD}START${OFF}" - - cd $JHALFSDIR/${PROGNAME}-commands - # Start with clean files - >$MKFILE - >$MKFILE.tmp - - method_cmds=${METHOD}_Makefiles - - host_prep_Makefiles # mk_SETUP (SETUP) $host_prep - final_preps_Makefiles # mk_F_PREPS (LUSER) $final_preps - cross_tools_Makefiles # mk_CROSS (LUSER) $cross_tools - temptools_Makefiles # mk_TEMP (LUSER) $temptools - $method_cmds # mk_SYSTOOLS (CHROOT) $chroottools/$boottools - if [[ ! $TEST = "0" ]]; then - testsuite_tools_Makefiles # mk_SYSTOOLS (CHROOT) $testsuitetools - fi - final_system_Makefiles # mk_FINAL (CHROOT) $basicsystem - # Add the iterations targets, if needed - [[ "$COMPARE" = "y" ]] && wrt_compare_targets - bootscripts_Makefiles # mk_BOOTSCRIPT (CHROOT) $bootscripttools - if [ -d network ]; then - network_Makefiles # If present, process network setup. - fi - bootable_Makefiles # mk_BOOTABLE (CHROOT) $bootabletools - - # Add the CUSTOM_TOOLS targets, if needed - [[ "$CUSTOM_TOOLS" = "y" ]] && wrt_CustomTools_target - - # Add a header, some variables and include the function file - # to the top of the real Makefile. - wrt_Makefile_header - - # Add chroot commands - if [ "$METHOD" = "chroot" ] ; then - CHROOT_LOC="`whereis -b chroot | cut -d " " -f2`" - chroot=`cat chroot/???-chroot | \ - sed -e "s@chroot@$CHROOT_LOC@" \ - -e '/#!\/bin\/bash/d' \ - -e '/^export/d' \ - -e '/^logout/d' \ - -e 's@ \\\@ @g' | \ - tr -d '\n' | \ - sed -e 's/ */ /g' \ - -e 's|\\$|&&|g' \ - -e 's|exit||g' \ - -e 's|$| -c|' \ - -e 's|"$${CLFS}"|$(MOUNT_PT)|'\ - -e 's|set -e||' \ - -e 's|set +h||'` - echo -e "CHROOT1= $chroot\n" >> $MKFILE - fi - -################## CHROOT #################### - -if [[ "${METHOD}" = "chroot" ]]; then -( -cat << EOF - -all: ck_UID mk_SETUP mk_F_PREPS mk_SUDO mk_SYSTOOLS create-sbu_du-report mk_CUSTOM_TOOLS mk_BLFS_TOOL - @sudo make do-housekeeping - @echo "$VERSION - jhalfs build" > clfs-release && \\ - sudo mv clfs-release \$(MOUNT_PT)/etc && \\ - sudo chown root:root \$(MOUNT_PT)/etc/clfs-release - @\$(call echo_finished,$VERSION) - -ck_UID: - @if [ \`id -u\` = "0" ]; then \\ - echo "+--------------------------------------------------+"; \\ - echo "|You cannot run this makefile from the root account|"; \\ - echo "+--------------------------------------------------+"; \\ - exit 1; \\ - fi - -#---------------AS ROOT -mk_SETUP: - @\$(call echo_SU_request) - @sudo make BREAKPOINT=\$(BREAKPOINT) SETUP - @touch \$@ - -#---------------AS LUSER -mk_F_PREPS: mk_SETUP - @\$(call echo_PHASE,Final Preparations Cross and Temporary Tools) - @( \$(SU_LUSER) "make -C \$(MOUNT_PT)/\$(SCRIPT_ROOT) BREAKPOINT=\$(BREAKPOINT) AS_LUSER" ) - @sudo make restore-luser-env - @touch \$@ - -mk_SUDO: mk_F_PREPS - @sudo make BREAKPOINT=\$(BREAKPOINT) SUDO - @touch \$@ - -#---------------CHROOT JAIL -mk_SYSTOOLS: mk_SUDO - @\$(call echo_CHROOT_request) - @\$(call echo_PHASE, CHROOT JAIL ) - @( sudo \$(CHROOT1) "cd \$(SCRIPT_ROOT) && make BREAKPOINT=\$(BREAKPOINT) PREP_CHROOT_JAIL") - @( sudo \$(CHROOT1) "cd \$(SCRIPT_ROOT) && make BREAKPOINT=\$(BREAKPOINT) CHROOT_JAIL") - @touch \$@ - -mk_BLFS_TOOL: create-sbu_du-report - @if [ "\$(ADD_BLFS_TOOLS)" = "y" ]; then \\ - \$(call sh_echo_PHASE,Building BLFS_TOOL); \\ - (sudo \$(CHROOT1) "make -C $BLFS_ROOT/work"); \\ - fi; - @touch \$@ - -mk_CUSTOM_TOOLS: mk_BLFS_TOOL - @if [ "\$(ADD_CUSTOM_TOOLS)" = "y" ]; then \\ - \$(call sh_echo_PHASE,Building CUSTOM_TOOLS); \\ - sudo mkdir -p ${BUILDDIR}${TRACKING_DIR}; \\ - (sudo \$(CHROOT1) "cd \$(SCRIPT_ROOT) && make BREAKPOINT=\$(BREAKPOINT) CUSTOM_TOOLS"); \\ - fi; - @touch \$@ - -SETUP: $host_prep -AS_LUSER: $final_preps $cross_tools $temptools -SUDO: $orphan_scripts -PREP_CHROOT_JAIL: SHELL=/tools/bin/bash -PREP_CHROOT_JAIL: ${chroottools} -CHROOT_JAIL: SHELL=/tools/bin/bash -CHROOT_JAIL: $testsuitetools $basicsystem $bootscripttools $bootabletools -CUSTOM_TOOLS: $custom_list - - -create-sbu_du-report: mk_SYSTOOLS - @\$(call echo_message, Building) - @if [ "\$(ADD_REPORT)" = "y" ]; then \\ - ./create-sbu_du-report.sh logs $VERSION $(date --iso-8601); \\ - \$(call echo_report,$VERSION-SBU_DU-$(date --iso-8601).report); \\ - fi; - @touch \$@ - -do-housekeeping: - @-umount \$(MOUNT_PT)/sys - @-umount \$(MOUNT_PT)/proc - @-if mountpoint -q \$(MOUNT_PT)/run; then \\ - umount \$(MOUNT_PT)/run; \\ - elif [ -h \$(MOUNT_PT)/dev/shm ]; then \\ - link=\$\$(readlink \$(MOUNT_PT)/dev/shm); \\ - umount \$(MOUNT_PT)/\$\$link; \\ - unset link; \\ - else \\ - umount \$(MOUNT_PT)/dev/shm; \\ - fi - @-umount \$(MOUNT_PT)/dev/pts - @-umount \$(MOUNT_PT)/dev - @-rm /tools /cross-tools - @-if [ ! -f luser-exist ]; then \\ - userdel \$(LUSER); \\ - rm -rf \$(LUSER_HOME); \\ - fi; -EOF -) >> $MKFILE - -fi - -################### BOOT ##################### - -if [[ "${METHOD}" = "boot" ]]; then -( -cat << EOF - -all: ck_UID mk_SETUP mk_F_PREPS mk_SUDO - @sudo make restore-luser-env - @sudo make do-housekeeping - @\$(call echo_boot_finished,$VERSION) - -makesys: mk_FINAL mk_CUSTOM_TOOLS mk_BLFS_TOOL - @echo "$VERSION - jhalfs build" > /etc/clfs-release - @\$(call echo_finished,$VERSION) - - -ck_UID: - @if [ \`id -u\` = "0" ]; then \\ - echo "+--------------------------------------------------+"; \\ - echo "|You cannot run this makefile from the root account|"; \\ - echo "|However, if this is the boot environment |"; \\ - echo "| the command you are looking for is |"; \\ - echo "| make makesys |"; \\ - echo "| to complete the build |"; \\ - echo "+--------------------------------------------------+"; \\ - exit 1; \\ - fi - -#---------------AS ROOT - -mk_SETUP: - @\$(call echo_SU_request) - @sudo make BREAKPOINT=\$(BREAKPOINT) SETUP - @touch \$@ - -#---------------AS LUSER - -mk_F_PREPS: mk_SETUP - @\$(call echo_PHASE,Final Preparations and Cross Tools) - @( \$(SU_LUSER) "make -C \$(MOUNT_PT)/\$(SCRIPT_ROOT) BREAKPOINT=\$(BREAKPOINT) AS_LUSER" ) - @touch \$@ - -mk_SUDO: mk_F_PREPS - @sudo make BREAKPOINT=\$(BREAKPOINT) SUDO - @touch \$@ - -#---------------AS ROOT - -mk_FINAL: - @\$(call echo_PHASE,Final System) - @( source /root/.bash_profile && make BREAKPOINT=\$(BREAKPOINT) AS_ROOT ) - @touch \$@ - -mk_BLFS_TOOL: mk_FINAL - @if [ "\$(ADD_BLFS_TOOLS)" = "y" ]; then \\ - \$(call sh_echo_PHASE,Building BLFS_TOOL); \\ - ( make -C $BLFS_ROOT/work ); \\ - fi; - @touch \$@ - -mk_CUSTOM_TOOLS: mk_BLFS_TOOL - @if [ "\$(ADD_CUSTOM_TOOLS)" = "y" ]; then \\ - \$(call sh_echo_PHASE,Building CUSTOM_TOOLS); \\ - mkdir -p ${TRACKING_DIR}; \\ - ( source /root/.bash_profile && make BREAKPOINT=\$(BREAKPOINT) CUSTOM_TOOLS ); \\ - fi; - @touch \$@ - -SETUP: $host_prep -AS_LUSER: $final_preps $cross_tools $temptools ${boottools} -SUDO: $orphan_scripts -AS_ROOT: SHELL=/tools/bin/bash -AS_ROOT: $testsuitetools $basicsystem $bootscripttools $bootabletools -CUSTOM_TOOLS: $custom_list - -do-housekeeping: - @-rm /tools /cross-tools - @-if [ ! -f luser-exist ]; then \\ - userdel \$(LUSER); \\ - rm -rf \$(LUSER_HOME); \\ - fi; - -EOF -) >> $MKFILE -fi - -( - cat << EOF - -restore-luser-env: - @\$(call echo_message, Building) - @if [ -f \$(LUSER_HOME)/.bashrc.XXX ]; then \\ - mv -f \$(LUSER_HOME)/.bashrc.XXX \$(LUSER_HOME)/.bashrc; \\ - fi; - @if [ -f \$(LUSER_HOME)/.bash_profile.XXX ]; then \\ - mv \$(LUSER_HOME)/.bash_profile.XXX \$(LUSER_HOME)/.bash_profile; \\ - fi; - @chown \$(LUSER):\$(LGROUP) \$(LUSER_HOME)/.bash* && \\ - touch \$@ && \\ - echo " "\$(BOLD)Target \$(BLUE)\$@ \$(BOLD)OK && \\ - echo --------------------------------------------------------------------------------\$(WHITE) - -######################################################## - - -EOF -) >> $MKFILE - - # Bring over the items from the Makefile.tmp - cat $MKFILE.tmp >> $MKFILE - rm $MKFILE.tmp - - echo "Creating Makefile... ${BOLD}DONE${OFF}" -} diff --git a/CLFS2/clfs2.xsl b/CLFS2/clfs2.xsl deleted file mode 100644 index 4f54f86..0000000 --- a/CLFS2/clfs2.xsl +++ /dev/null @@ -1,149 +0,0 @@ - - - %general-entities; -]> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 00 - - - - 0 - - - - - - - - - - #!/bin/bash set +h - - set -e - - - - cd $PKGDIR - - - exit - - - - - - - - - - - - - - - - - - - - tar.* - - - - - - - export LANG= - - - - - - - - - make mrproper - cp -v ../kernel-config .config - - - - - - - || true - - - - - - - - - - - - - - - - - - - - - - **EDITME - - EDITME** - - - - - diff --git a/CLFS2/master.sh b/CLFS2/master.sh deleted file mode 100644 index 32cb018..0000000 --- a/CLFS2/master.sh +++ /dev/null @@ -1,536 +0,0 @@ -#!/bin/bash - -################################### -### FUNCTIONS ### -################################### - - -#----------------------------# -host_prep_Makefiles() { # Initialization of the system -#----------------------------# - local CLFS_HOST - - echo "${tab_}${GREEN}Processing... ${L_arrow}host prep files ( SETUP ) ${R_arrow}" - - # defined here, only for ease of reading - CLFS_HOST="$(echo $MACHTYPE | sed "s/$(echo $MACHTYPE | cut -d- -f2)/cross/")" -( -cat << EOF - -025-addinguser: - @\$(call echo_message, Building) - @if [ ! -d \$(LUSER_HOME) ]; then \\ - groupadd \$(LGROUP); \\ - useradd -s /bin/bash -g \$(LGROUP) -m -k /dev/null \$(LUSER); \\ - else \\ - touch luser-exist; \\ - fi; - @\$(call housekeeping) - -026-settingenvironment: 025-addinguser - @\$(call echo_message, Building) - @if [ -f \$(LUSER_HOME)/.bashrc -a ! -f \$(LUSER_HOME)/.bashrc.XXX ]; then \\ - mv \$(LUSER_HOME)/.bashrc \$(LUSER_HOME)/.bashrc.XXX; \\ - fi; - @if [ -f \$(LUSER_HOME)/.bash_profile -a ! -f \$(LUSER_HOME)/.bash_profile.XXX ]; then \\ - mv \$(LUSER_HOME)/.bash_profile \$(LUSER_HOME)/.bash_profile.XXX; \\ - fi; - @echo "set +h" > \$(LUSER_HOME)/.bashrc && \\ - echo "umask 022" >> \$(LUSER_HOME)/.bashrc && \\ - echo "CLFS=\$(MOUNT_PT)" >> \$(LUSER_HOME)/.bashrc && \\ - echo "LC_ALL=POSIX" >> \$(LUSER_HOME)/.bashrc && \\ - echo "PATH=\$(MOUNT_PT)/cross-tools/bin:/bin:/usr/bin" >> \$(LUSER_HOME)/.bashrc && \\ - echo "export CLFS LC_ALL PATH" >> \$(LUSER_HOME)/.bashrc && \\ - echo "" >> \$(LUSER_HOME)/.bashrc && \\ - echo "unset CFLAGS" >> \$(LUSER_HOME)/.bashrc && \\ - echo "unset CXXFLAGS" >> \$(LUSER_HOME)/.bashrc && \\ - echo "unset PKG_CONFIG_PATH" >> \$(LUSER_HOME)/.bashrc && \\ - echo "" >> \$(LUSER_HOME)/.bashrc && \\ - echo "export CLFS_HOST=\"${CLFS_HOST}\"" >> \$(LUSER_HOME)/.bashrc && \\ - echo "export CLFS_TARGET=\"${TARGET}\"" >> \$(LUSER_HOME)/.bashrc && \\ - echo "source $JHALFSDIR/envars" >> \$(LUSER_HOME)/.bashrc - @chown \$(LUSER):\$(LGROUP) \$(LUSER_HOME)/.bashrc && \\ - touch envars && \\ - chown \$(LUSER):\$(LGROUP) envars - @\$(call housekeeping) - -027-create-directories: 026-settingenvironment - @\$(call echo_message, Building) - - @mkdir -p \$(MOUNT_PT)/{bin,boot,dev,{etc/,}opt,home,lib,mnt} - @mkdir -p \$(MOUNT_PT)/{proc,media/{floppy,cdrom},sbin,srv,sys} - @mkdir -p \$(MOUNT_PT)/var/{lock,log,mail,run,spool} - @mkdir -p \$(MOUNT_PT)/var/{opt,cache,lib/{misc,locate},local} - @install -d -m 0750 \$(MOUNT_PT)/root - @install -d -m 1777 \$(MOUNT_PT){/var,}/tmp - @mkdir -p \$(MOUNT_PT)/usr/{,local/}{bin,include,lib,sbin,src} - @mkdir -p \$(MOUNT_PT)/usr/{,local/}share/{doc,info,locale,man} - @mkdir -p \$(MOUNT_PT)/usr/{,local/}share/{misc,terminfo,zoneinfo} - @mkdir -p \$(MOUNT_PT)/usr/{,local/}share/man/man{1,2,3,4,5,6,7,8} - @for dir in \$(MOUNT_PT)/usr{,/local}; do \\ - ln -s share/{man,doc,info} \$\$dir ; \\ - done - @\$(call housekeeping) - -028-creating-sysfile: 027-create-directories - @\$(call echo_message, Building) - - @touch \$(MOUNT_PT)/etc/mtab - @echo "root::0:0:root:/root:/bin/bash" >> \$(MOUNT_PT)/etc/passwd - @echo "root:x:0:" >> \$(MOUNT_PT)/etc/group - @echo "bin:x:1:" >> \$(MOUNT_PT)/etc/group - @echo "sys:x:2:" >> \$(MOUNT_PT)/etc/group - @echo "kmem:x:3" >> \$(MOUNT_PT)/etc/group - @echo "tty:x:4:" >> \$(MOUNT_PT)/etc/group - @echo "tape:x:5:" >> \$(MOUNT_PT)/etc/group - @echo "daemon:x:6:" >> \$(MOUNT_PT)/etc/group - @echo "floppy:x:7:" >> \$(MOUNT_PT)/etc/group - @echo "disk:x:8:" >> \$(MOUNT_PT)/etc/group - @echo "lp:x:9:" >> \$(MOUNT_PT)/etc/group - @echo "dialout:x:10:" >> \$(MOUNT_PT)/etc/group - @echo "audio:x:11:" >> \$(MOUNT_PT)/etc/group - @echo "video:x:12:" >> \$(MOUNT_PT)/etc/group - @echo "utmp:x:13:" >> \$(MOUNT_PT)/etc/group - @echo "usb:x:14:" >> \$(MOUNT_PT)/etc/group - @echo "cdrom:x:15:" >> \$(MOUNT_PT)/etc/group - - @touch \$(MOUNT_PT)/var/run/utmp \$(MOUNT_PT)/var/log/{btmp,lastlog,wtmp} - @chmod 664 \$(MOUNT_PT)/var/run/utmp \$(MOUNT_PT)/var/log/lastlog - @chown -R \$(LUSER) \$(MOUNT_PT) && \\ - chmod -R a+w \$(MOUNT_PT)/\$(SCRIPT_ROOT) && \\ - chmod -R a+w \$(SRCSDIR) - @\$(call housekeeping) - -EOF -) >> $MKFILE.tmp - - host_prep=" 025-addinguser 026-settingenvironment 027-create-directories 028-creating-sysfile" -} - - -#-----------------------------# -cross_tools_Makefiles() { # -#-----------------------------# - echo "${tab_}${GREEN}Processing... ${L_arrow}cross tools ( LUSER ) ${R_arrow}" - - for file in cross-tools/* ; do - # Keep the script file name - this_script=`basename $file` - # - # Skip this script... - case $this_script in - *cflags* | *variables* ) # work done in host_prep_Makefiles - continue ;; - *) ;; - esac - - # - # Set the dependency for the first target. - if [ -z $PREV ] ; then PREV=028-creating-sysfile ; fi - - # First append each name of the script files to a list (this will become - # the names of the targets in the Makefile - cross_tools="$cross_tools $this_script" - - # Grab the name of the target (minus the -headers or -cross in the case of gcc - # and binutils in chapter 5) - name=`echo $this_script | sed -e 's@[0-9]\{3\}-@@' \ - -e 's@-static@@' \ - -e 's@-final@@' \ - -e 's@-64@@' \ - -e 's@-n32@@'` - case $name in - glibc-headers) name="glibc" ;; - esac - pkg_tarball=$(get_package_tarball_name $name) - #--------------------------------------------------------------------# - # >>>>>>>> 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. - LUSER_wrt_target "${this_script}" "$PREV" - # - # If $pkg_tarball isn't empty, we've got a package... - if [ "$pkg_tarball" != "" ] ; then - LUSER_wrt_unpack "$pkg_tarball" - # If using optimizations, write the instructions - [[ "$OPTIMIZE" != "0" ]] && wrt_optimize "$name" && wrt_makeflags "$name" - fi - # - LUSER_wrt_RunAsUser "${file}" - # - [[ "$pkg_tarball" != "" ]] && LUSER_RemoveBuildDirs "${name}" - # - # 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 # for file in .... -} - - - -#-----------------------------# -final_system_Makefiles() { # -#-----------------------------# - echo "${tab_}${GREEN}Processing... ${L_arrow}final system ( LUSER ) ${R_arrow}" - - for file in final-system/* ; do - # Keep the script file name - this_script=`basename $file` - - # Test if the stripping phase must be skipped. - # Skip alsp temp-perl for iterative runs - case $this_script in - *stripping*) [[ "$STRIP" = "n" ]] && continue ;; - esac - - # Grab the name of the target, strip id number, XXX-script - name=`echo $this_script | sed -e 's@[0-9]\{3\}-@@' \ - -e 's@temp-@@' \ - -e 's@-64bit@@' \ - -e 's@-64@@' \ - -e 's@64@@' \ - -e 's@n32@@'` - - # Find the version of the command files, if it corresponds with the building of - # a specific package. - pkg_tarball=$(get_package_tarball_name $name) - - # Append each name of the script files to a list (this will become - # the names of the targets in the Makefile - basicsystem="$basicsystem ${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. - LUSER_wrt_target "${this_script}" "$PREV" - # - # If $pkg_tarball isn't empty, we've got a package... - if [ "$pkg_tarball" != "" ] ; then - # Touch timestamp file if installed files logs will be created. - # But only for the firt build when running iterative builds. - if [ "${INSTALL_LOG}" = "y" ] ; then - LUSER_wrt_TouchTimestamp - fi - LUSER_wrt_unpack "$pkg_tarball" - # If using optimizations, write the instructions - [[ "$OPTIMIZE" != "0" ]] && wrt_optimize "$name" && wrt_makeflags "$name" - fi - # - LUSER_wrt_RunAsUser "${file}" - # - # Write installed files log and remove the build directory(ies) - # except if the package build fails. - if [ "$pkg_tarball" != "" ] ; then - LUSER_RemoveBuildDirs "${name}" - if [ "${INSTALL_LOG}" = "y" ] ; then - LUSER_wrt_LogNewFiles "$name" - fi - fi - # - # 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 # for file in final-system/* ... -} - - - -#-----------------------------# -bootscripts_Makefiles() { # -#-----------------------------# - echo "${tab_}${GREEN}Processing... ${L_arrow}bootscripts ( LUSER ) ${R_arrow}" - - for file in bootscripts/* ; do - # Keep the script file name - this_script=`basename $file` - - case $this_script in - *udev) continue ;; # This is not a script but a commentary, we want udev-rules - *console*) continue ;; # Use the files that came with the bootscripts - *network*) continue ;; # Manually create these files - *) ;; - esac - - # First append each name of the script files to a list (this will become - # the names of the targets in the Makefile - bootscripttools="$bootscripttools $this_script" - - # Grab the name of the target, strip id number, XXX-script - name=`echo $this_script | sed -e 's@[0-9]\{3\}-@@'\ - -e 's@-64bit@@' \ - -e 's@-64@@' \ - -e 's@64@@' \ - -e 's@n32@@'` - case $name in - *bootscripts*) name=bootscripts-cross-lfs ;; - *udev-rules) name=udev-cross-lfs ;; - esac - - pkg_tarball=$(get_package_tarball_name $name) - - #--------------------------------------------------------------------# - # >>>>>>>> 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. - LUSER_wrt_target "${this_script}" "$PREV" - # - # If $pkg_tarball isn't empty, we've got a package... - if [ "$pkg_tarball" != "" ] ; then - LUSER_wrt_unpack "$pkg_tarball" - if [ "${INSTALL_LOG}" = "y" ] ; then - LUSER_wrt_TouchTimestamp - fi - fi - # - LUSER_wrt_RunAsUser "${file}" - # - if [ "$pkg_tarball" != "" ] ; then - LUSER_RemoveBuildDirs "${name}" - if [ "${INSTALL_LOG}" = "y" ] ; then - LUSER_wrt_LogNewFiles "$name" - fi - fi - # - # 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 # for file in bootscripts/* ... - -} - - -#-----------------------------# -bootable_Makefiles() { # -#-----------------------------# - echo "${tab_}${GREEN}Processing... ${L_arrow}make bootable ( LUSER ) ${R_arrow}" - - for file in bootable/* ; do - # Keep the script file name - this_script=`basename $file` - - # A little housekeeping on the scripts - case $this_script in - *grub | *aboot | *colo | *silo | *arcload | *lilo | *reboot* ) continue ;; - *fstab) [[ ! -z ${FSTAB} ]] && cp ${FSTAB} $BUILDDIR/sources/fstab ;; - *kernel) # if there is no kernel config file do not build the kernel - [[ -z $CONFIG ]] && continue - # Copy the config file to /sources with a standardized name - cp $CONFIG $BUILDDIR/sources/kernel-config - ;; - esac - # - # First append each name of the script files to a list (this will become - # the names of the targets in the Makefile - # NOTE: new makfile format forces the last script, *chowning, into a separate - # phase. - case ${this_script} in - *chowning) chowning=" ${this_script}" ;; - *) bootable="$bootable $this_script" ;; - esac - # - # Grab the name of the target, strip id number and misc words. - name=`echo $this_script | sed -e 's@[0-9]\{3\}-@@' -e 's@-build@@' ` - case $this_script in - *kernel*) name=linux - ;; - esac - - pkg_tarball=$(get_package_tarball_name $name) - - #--------------------------------------------------------------------# - # >>>>>>>> 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. - LUSER_wrt_target "${this_script}" "$PREV" - # - # If $pkg_tarball isn't empty, we've got a package... - if [ "$pkg_tarball" != "" ] ; then - LUSER_wrt_unpack "$pkg_tarball" - if [ "${INSTALL_LOG}" = "y" ] ; then - LUSER_wrt_TouchTimestamp - fi - fi - # - # Select a script execution method - case $this_script in - *fstab*) if [[ -n "$FSTAB" ]]; then - LUSER_wrt_CopyFstab - else - LUSER_wrt_RunAsUser "${file}" - fi - ;; - *chowning) wrt_RunAsRoot "${file}" - ;; - *) LUSER_wrt_RunAsUser "${file}" - ;; - esac - # - # Housekeeping...remove any build directory(ies) except if the package build fails. - if [ "$pkg_tarball" != "" ] ; then - LUSER_RemoveBuildDirs "${name}" - if [ "${INSTALL_LOG}" = "y" ] ; then - LUSER_wrt_LogNewFiles "$name" - fi - fi - # - # 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 - -} - - -#-----------------------------# -build_Makefile() { # Construct a Makefile from the book scripts -#-----------------------------# - echo "Creating Makefile... ${BOLD}START${OFF}" - - cd $JHALFSDIR/${PROGNAME}-commands - # Start with a clean Makefile.tmp file - >$MKFILE.tmp - - host_prep_Makefiles - cross_tools_Makefiles # $cross_tools - final_system_Makefiles # $basicsystem - bootscripts_Makefiles # $bootscripttools - bootable_Makefiles # $bootable - # Add the CUSTOM_TOOLS targets, if needed - [[ "$CUSTOM_TOOLS" = "y" ]] && wrt_CustomTools_target - # Add the BLFS_TOOL targets, if needed. - [[ "$BLFS_TOOL" = "y" ]] && wrt_blfs_tool_targets - - # Add a header, some variables and include the function file - # to the top of the real Makefile. - wrt_Makefile_header - - # Drop in the main target 'all:' and the chapter targets with each sub-target - # as a dependency. -( -cat << EOF - -all: ck_UID mk_SETUP mk_LUSER create-sbu_du-report mk_CUSTOM_TOOLS mk_BLFS_TOOL mk_ROOT - @sudo make restore-luser-env - @sudo make do-housekeeping - @\$(call echo_finished,$VERSION) - -ck_UID: - @if [ \`id -u\` = "0" ]; then \\ - echo "--------------------------------------------------"; \\ - echo "You cannot run this makefile from the root account"; \\ - echo "--------------------------------------------------"; \\ - exit 1; \\ - fi - -mk_SETUP: - @\$(call echo_SU_request) - @sudo make BREAKPOINT=\$(BREAKPOINT) SETUP - @touch \$@ - -mk_LUSER: mk_SETUP - @\$(call echo_SULUSER_request) - @(sudo \$(SU_LUSER) "source .bashrc && cd \$(MOUNT_PT)/\$(SCRIPT_ROOT) && make BREAKPOINT=\$(BREAKPOINT) LUSER" ) - @touch \$@ - -mk_CUSTOM_TOOLS: create-sbu_du-report - @if [ "\$(ADD_CUSTOM_TOOLS)" = "y" ]; then \\ - \$(call sh_echo_PHASE,Building CUSTOM_TOOLS); \\ - (sudo \$(SU_LUSER) "mkdir -p $BUILDDIR$TRACKING_DIR"); \\ - (sudo \$(SU_LUSER) "source .bashrc && cd \$(MOUNT_PT)/\$(SCRIPT_ROOT) && make BREAKPOINT=\$(BREAKPOINT) CUSTOM_TOOLS"); \\ - fi; - @touch \$@ - -mk_BLFS_TOOL: mk_CUSTOM_TOOLS - @if [ "\$(ADD_BLFS_TOOLS)" = "y" ]; then \\ - \$(call sh_echo_PHASE,Building BLFS_TOOL); \\ - (sudo \$(SU_LUSER) "mkdir -p $BUILDDIR$TRACKING_DIR"); \\ - (sudo \$(SU_LUSER) "source .bashrc && cd \$(MOUNT_PT)/\$(SCRIPT_ROOT) && make BREAKPOINT=\$(BREAKPOINT) BLFS_TOOL"); \\ - fi; - @touch \$@ - -mk_ROOT: create-sbu_du-report - @\$(call echo_SU_request) - @echo "$VERSION-sysroot - jhalfs build" > clfs-release && \\ - sudo mv clfs-release \$(MOUNT_PT)/etc - @sudo make BREAKPOINT=\$(BREAKPOINT) ROOT - @touch \$@ - -SETUP: $host_prep -LUSER: $cross_tools $basicsystem $bootscripttools $bootable -CUSTOM_TOOLS: $custom_list -BLFS_TOOL: $blfs_tool -ROOT: $chowning - - -create-sbu_du-report: mk_LUSER - @\$(call echo_message, Building) - @if [ "\$(ADD_REPORT)" = "y" ]; then \\ - ./create-sbu_du-report.sh logs $VERSION $(date --iso-8601); \\ - \$(call echo_report,$VERSION-SBU_DU-$(date --iso-8601).report); \\ - fi; - @touch \$@ - -restore-luser-env: - @\$(call echo_message, Building) - @if [ -f \$(LUSER_HOME)/.bashrc.XXX ]; then \\ - mv -f \$(LUSER_HOME)/.bashrc.XXX \$(LUSER_HOME)/.bashrc; \\ - fi; - @if [ -f \$(LUSER_HOME)/.bash_profile.XXX ]; then \\ - mv \$(LUSER_HOME)/.bash_profile.XXX \$(LUSER_HOME)/.bash_profile; \\ - fi; - @chown \$(LUSER):\$(LGROUP) \$(LUSER_HOME)/.bash* && \\ - touch \$@ && \\ - echo " "\$(BOLD)Target \$(BLUE)\$@ \$(BOLD)OK && \\ - echo --------------------------------------------------------------------------------\$(WHITE) - -do-housekeeping: - @-if [ ! -f luser-exist ]; then \\ - userdel \$(LUSER); \\ - rm -rf \$(LUSER_HOME); \\ - fi; - -EOF -) >> $MKFILE - - # Bring over the items from the Makefile.tmp - cat $MKFILE.tmp >> $MKFILE - rm $MKFILE.tmp - echo "Creating Makefile... ${BOLD}DONE${OFF}" - -} diff --git a/CLFS3/clfs3.xsl b/CLFS3/clfs3.xsl deleted file mode 100644 index 04381f5..0000000 --- a/CLFS3/clfs3.xsl +++ /dev/null @@ -1,154 +0,0 @@ - - - %general-entities; -]> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 00 - - - - 0 - - - - - - - - - - #!/bin/bash set +h set -e - - - - - - - cd $PKGDIR - - - exit - - - - - - - - - - - - - - - - - - - - tar.* - - - - - - - - - export LANG= - - - - - - - - - make mrproper - cp -v ../kernel-config .config - - - - - - - || true - - - - - - - - - - - - - - - - - - - **EDITME - - EDITME** - - - - - diff --git a/CLFS3/master.sh b/CLFS3/master.sh deleted file mode 100644 index d7851a0..0000000 --- a/CLFS3/master.sh +++ /dev/null @@ -1,586 +0,0 @@ -#!/bin/bash - -################################### -### FUNCTIONS ### -################################### - - -#----------------------------# -host_prep_Makefiles() { # Initialization of the system -#----------------------------# - local CLFS_HOST - - echo "${tab_}${GREEN}Processing... ${L_arrow}host prep files ( SETUP ) ${R_arrow}" - - # defined here, only for ease of reading - CLFS_HOST="$(echo $MACHTYPE | sed "s/$(echo $MACHTYPE | cut -d- -f2)/cross/")" -( -cat << EOF - -025-addinguser: - @\$(call echo_message, Building) - @if [ ! -d \$(LUSER_HOME) ]; then \\ - groupadd \$(LGROUP); \\ - useradd -s /bin/bash -g \$(LGROUP) -m -k /dev/null \$(LUSER); \\ - else \\ - touch luser-exist; \\ - fi; - @\$(call housekeeping) - -026-settingenvironment: 025-addinguser - @\$(call echo_message, Building) - @if [ -f \$(LUSER_HOME)/.bashrc -a ! -f \$(LUSER_HOME)/.bashrc.XXX ]; then \\ - mv \$(LUSER_HOME)/.bashrc \$(LUSER_HOME)/.bashrc.XXX; \\ - fi; - @if [ -f \$(LUSER_HOME)/.bash_profile -a ! -f \$(LUSER_HOME)/.bash_profile.XXX ]; then \\ - mv \$(LUSER_HOME)/.bash_profile \$(LUSER_HOME)/.bash_profile.XXX; \\ - fi; - @echo "set +h" > \$(LUSER_HOME)/.bashrc && \\ - echo "umask 022" >> \$(LUSER_HOME)/.bashrc && \\ - echo "CLFS=\$(MOUNT_PT)" >> \$(LUSER_HOME)/.bashrc && \\ - echo "LC_ALL=POSIX" >> \$(LUSER_HOME)/.bashrc && \\ - echo "PATH=\$(MOUNT_PT)/cross-tools/bin:/bin:/usr/bin" >> \$(LUSER_HOME)/.bashrc && \\ - echo "export CLFS LC_ALL PATH" >> \$(LUSER_HOME)/.bashrc && \\ - echo "" >> \$(LUSER_HOME)/.bashrc && \\ - echo "unset CFLAGS" >> \$(LUSER_HOME)/.bashrc && \\ - echo "unset CXXFLAGS" >> \$(LUSER_HOME)/.bashrc && \\ - echo "unset PKG_CONFIG_PATH" >> \$(LUSER_HOME)/.bashrc && \\ - echo "" >> \$(LUSER_HOME)/.bashrc && \\ - echo "export CLFS_HOST=\"${CLFS_HOST}\"" >> \$(LUSER_HOME)/.bashrc && \\ - echo "export CLFS_TARGET=\"${TARGET}\"" >> \$(LUSER_HOME)/.bashrc && \\ - echo "export CLFS_MIPS_LEVEL=\"${MIPS_LEVEL}\"" >> \$(LUSER_HOME)/.bashrc && \\ - echo "export BUILD=\"${ABI}\"" >> \$(LUSER_HOME)/.bashrc && \\ - echo "source $JHALFSDIR/envars" >> \$(LUSER_HOME)/.bashrc - @chown \$(LUSER):\$(LGROUP) \$(LUSER_HOME)/.bashrc && \\ - touch envars && \\ - chown \$(LUSER):\$(LGROUP) envars - @\$(call housekeeping) - -027-create-directories: 026-settingenvironment - @\$(call echo_message, Building) - - @mkdir -p \$(MOUNT_PT)/{bin,boot,dev,{etc/,}opt,home,lib,mnt} - @mkdir -p \$(MOUNT_PT)/{proc,media/{floppy,cdrom},sbin,srv,sys} - @mkdir -p \$(MOUNT_PT)/var/{lock,log,mail,run,spool} - @mkdir -p \$(MOUNT_PT)/var/{opt,cache,lib/{misc,locate},local} - @install -d -m 0750 \$(MOUNT_PT)/root - @install -d -m 1777 \$(MOUNT_PT){/var,}/tmp - @mkdir -p \$(MOUNT_PT)/usr/{,local/}{bin,include,lib,sbin,src} - @mkdir -p \$(MOUNT_PT)/usr/{,local/}share/{doc,info,locale,man} - @mkdir -p \$(MOUNT_PT)/usr/{,local/}share/{misc,terminfo,zoneinfo} - @mkdir -p \$(MOUNT_PT)/usr/{,local/}share/man/man{1,2,3,4,5,6,7,8} - @for dir in \$(MOUNT_PT)/usr{,/local}; do \\ - ln -s share/{man,doc,info} \$\$dir ; \\ - done - @\$(call housekeeping) - -028-creating-sysfile: 027-create-directories - @\$(call echo_message, Building) - - @touch \$(MOUNT_PT)/etc/mtab - @echo "root::0:0:root:/root:/bin/ash" >> \$(MOUNT_PT)/etc/passwd - @echo "root:x:0:" >> \$(MOUNT_PT)/etc/group - @echo "bin:x:1:" >> \$(MOUNT_PT)/etc/group - @echo "sys:x:2:" >> \$(MOUNT_PT)/etc/group - @echo "kmem:x:3" >> \$(MOUNT_PT)/etc/group - @echo "tty:x:4:" >> \$(MOUNT_PT)/etc/group - @echo "tape:x:5:" >> \$(MOUNT_PT)/etc/group - @echo "daemon:x:6:" >> \$(MOUNT_PT)/etc/group - @echo "floppy:x:7:" >> \$(MOUNT_PT)/etc/group - @echo "disk:x:8:" >> \$(MOUNT_PT)/etc/group - @echo "lp:x:9:" >> \$(MOUNT_PT)/etc/group - @echo "dialout:x:10:" >> \$(MOUNT_PT)/etc/group - @echo "audio:x:11:" >> \$(MOUNT_PT)/etc/group - @echo "video:x:12:" >> \$(MOUNT_PT)/etc/group - @echo "utmp:x:13:" >> \$(MOUNT_PT)/etc/group - @echo "usb:x:14:" >> \$(MOUNT_PT)/etc/group - @echo "cdrom:x:15:" >> \$(MOUNT_PT)/etc/group - - @touch \$(MOUNT_PT)/var/run/utmp \$(MOUNT_PT)/var/log/{btmp,lastlog,wtmp} - @chmod 664 \$(MOUNT_PT)/var/run/utmp \$(MOUNT_PT)/var/log/lastlog - @chown -R \$(LUSER) \$(MOUNT_PT) && \\ - chmod -R a+w \$(MOUNT_PT)/\$(SCRIPT_ROOT) && \\ - chmod -R a+w \$(SRCSDIR) - @\$(call housekeeping) - -EOF -) >> $MKFILE.tmp - - host_prep=" 025-addinguser 026-settingenvironment 027-create-directories 028-creating-sysfile" -} - -#-----------------------------# -systemprep_Makefiles() { # -#-----------------------------# - echo "${tab_}${GREEN}Processing... ${L_arrow}system prep tools ( LUSER ) ${R_arrow}" - - for file in systemprep/* ; do - # Keep the script file name - this_script=`basename $file` - - # Set the dependency for the first target. - if [ -z $PREV ] ; then PREV=028-creating-sysfile ; fi - - # First append each name of the script files to a list (this will become - # the names of the targets in the Makefile) - cross_tools="$cross_tools $this_script" - - # Grab the name of the target (minus the -headers or -cross in the case of gcc - # and binutils in chapter 5) - name=`echo $this_script | sed -e 's@[0-9]\{3\}-@@'` - - pkg_tarball=$(get_package_tarball_name $name) - #--------------------------------------------------------------------# - # >>>>>>>> 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. - LUSER_wrt_target "${this_script}" "$PREV" - # - # If $pkg_tarball isn't empty, we've got a package... - if [ "$pkg_tarball" != "" ] ; then - LUSER_wrt_unpack "$pkg_tarball" - fi - # - LUSER_wrt_RunAsUser "${file}" - # - [[ "$pkg_tarball" != "" ]] && LUSER_RemoveBuildDirs "${name}" - # - # 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 # for file in .... -} - - -#-----------------------------# -cross_tools_Makefiles() { # -#-----------------------------# - echo "${tab_}${GREEN}Processing... ${L_arrow}cross tools ( LUSER ) ${R_arrow}" - - for file in cross-tools/* ; do - # Keep the script file name - this_script=`basename $file` - # - # Skip this script... - # NOTE.. the book indicated you only needed to install groff or file if the host - # had older versions. The packages would be installed in the target directory - # and not the host. - case $this_script in - *cflags* | *variables* | *abi | *toolchain*) # work done in host_prep_Makefiles - continue ;; - *) ;; - esac - - # - # Set the dependency for the first target. - if [ -z $PREV ] ; then PREV=028-creating-sysfile ; fi - - # First append each name of the script files to a list (this will become - # the names of the targets in the Makefile) - cross_tools="$cross_tools $this_script" - - # Grab the name of the target (minus the -headers or -cross in the case of gcc - # and binutils in chapter 5) - name=`echo $this_script | sed -e 's@[0-9]\{3\}-@@' \ - -e 's@-static@@' \ - -e 's@-final@@' \ - -e 's@-64@@' \ - -e 's@-n32@@'` - case $name in - uclibc*) name="uClibc" ;; - esac - pkg_tarball=$(get_package_tarball_name $name) - #--------------------------------------------------------------------# - # >>>>>>>> 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. - LUSER_wrt_target "${this_script}" "$PREV" - # - # If $pkg_tarball isn't empty, we've got a package... - if [ "$pkg_tarball" != "" ] ; then - LUSER_wrt_unpack "$pkg_tarball" - # Touch timestamp file if installed files logs will be created. - if [ "${INSTALL_LOG}" = "y" ] ; then - LUSER_wrt_TouchTimestamp - fi - # If using optimizations, write the instructions - [[ "$OPTIMIZE" != "0" ]] && wrt_optimize "$name" && wrt_makeflags "$name" - fi - # - LUSER_wrt_RunAsUser "${file}" - # - # Write installed files log and remove the build directory(ies) - # except if the package build fails. - if [ "$pkg_tarball" != "" ] ; then - LUSER_RemoveBuildDirs "${name}" - if [ "${INSTALL_LOG}" = "y" ] ; then - LUSER_wrt_LogNewFiles "$name" - fi - fi - # - # 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 # for file in .... -} - - - -#-----------------------------# -final_system_Makefiles() { # -#-----------------------------# - echo "${tab_}${GREEN}Processing... ${L_arrow}final system ( LUSER ) ${R_arrow}" - - for file in final-system/* ; do - # Keep the script file name - this_script=`basename $file` - - # Grab the name of the target, strip id number, XXX-script - name=`echo $this_script | sed -e 's@[0-9]\{3\}-@@' \ - -e 's@temp-@@' \ - -e 's@-64bit@@' \ - -e 's@-64@@' \ - -e 's@64@@' \ - -e 's@n32@@'` - - # Find the version of the command files, if it corresponds with the building of - # a specific package. - pkg_tarball=$(get_package_tarball_name $name) - - # Append each name of the script files to a list (this will become - # the names of the targets in the Makefile - basicsystem="$basicsystem ${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. - LUSER_wrt_target "${this_script}" "$PREV" - # - # If $pkg_tarball isn't empty, we've got a package... - if [ "$pkg_tarball" != "" ] ; then - # Touch timestamp file if installed files logs will be created. - if [ "${INSTALL_LOG}" = "y" ] ; then - LUSER_wrt_TouchTimestamp - fi - LUSER_wrt_unpack "$pkg_tarball" - # If using optimizations, write the instructions - [[ "$OPTIMIZE" != "0" ]] && wrt_optimize "$name" && wrt_makeflags "$name" - fi - # - LUSER_wrt_RunAsUser "${file}" - # - # Write installed files log and remove the build directory(ies) - # except if the package build fails. - if [ "$pkg_tarball" != "" ] ; then - LUSER_RemoveBuildDirs "${name}" - if [ "${INSTALL_LOG}" = "y" ] ; then - LUSER_wrt_LogNewFiles "$name" - fi - fi - # - # 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 # for file in final-system/* ... -} - - - -#-----------------------------# -bootscripts_Makefiles() { # -#-----------------------------# - echo "${tab_}${GREEN}Processing... ${L_arrow}bootscripts ( LUSER ) ${R_arrow}" - - for file in bootscripts/* ; do - # Keep the script file name - this_script=`basename $file` - - case $this_script in - *console*) continue ;; # Use the files that came with the bootscripts - *network*) continue ;; # Manually create these files - *) ;; - esac - - # First append each name of the script files to a list (this will become - # the names of the targets in the Makefile - bootscripttools="$bootscripttools $this_script" - - # Grab the name of the target, strip id number, XXX-script - name=`echo $this_script | sed -e 's@[0-9]\{3\}-@@'\ - -e 's@-64bit@@' \ - -e 's@-64@@' \ - -e 's@64@@' \ - -e 's@n32@@'` - case $name in - *bootscripts*) name=clfs-embedded-bootscripts ;; - esac - - pkg_tarball=$(get_package_tarball_name $name) - - #--------------------------------------------------------------------# - # >>>>>>>> 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. - LUSER_wrt_target "${this_script}" "$PREV" - # - # If $pkg_tarball isn't empty, we've got a package... - if [ "$pkg_tarball" != "" ] ; then - LUSER_wrt_unpack "$pkg_tarball" - if [ "${INSTALL_LOG}" = "y" ] ; then - LUSER_wrt_TouchTimestamp - fi - fi - # - LUSER_wrt_RunAsUser "${file}" - # - if [ "$pkg_tarball" != "" ] ; then - LUSER_RemoveBuildDirs "${name}" - if [ "${INSTALL_LOG}" = "y" ] ; then - LUSER_wrt_LogNewFiles "$name" - fi - fi - # - # 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 # for file in bootscripts/* ... - -} - - -#-----------------------------# -bootable_Makefiles() { # -#-----------------------------# - echo "${tab_}${GREEN}Processing... ${L_arrow}make bootable ( LUSER ) ${R_arrow}" - - for file in bootable/* ; do - # Keep the script file name - this_script=`basename $file` - - # A little housekeeping on the scripts - case $this_script in - *grub | *aboot | *colo | *silo | *arcload | *lilo | *reboot* ) continue ;; - *fstab) [[ ! -z ${FSTAB} ]] && cp ${FSTAB} $BUILDDIR/sources/fstab ;; - *kernel) # if there is no kernel config file do not build the kernel - [[ -z $CONFIG ]] && continue - # Copy the config file to /sources with a standardized name - cp $CONFIG $BUILDDIR/sources/kernel-config - ;; - esac - # - # First append each name of the script files to a list (this will become - # the names of the targets in the Makefile - # NOTE: new makfile format forces the last script, *chowning, into a separate - # phase. - case ${this_script} in - *chowning) chowning=${this_script} ;; - *) bootable="$bootable $this_script" ;; - esac - # - # Grab the name of the target, strip id number and misc words. - name=`echo $this_script | sed -e 's@[0-9]\{3\}-@@' -e 's@-build@@' ` - case $this_script in - *kernel*) name=linux - ;; - esac - - pkg_tarball=$(get_package_tarball_name $name) - - #--------------------------------------------------------------------# - # >>>>>>>> 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. - LUSER_wrt_target "${this_script}" "$PREV" - # - # If $pkg_tarball isn't empty, we've got a package... - if [ "$pkg_tarball" != "" ] ; then - LUSER_wrt_unpack "$pkg_tarball" - if [ "${INSTALL_LOG}" = "y" ] ; then - LUSER_wrt_TouchTimestamp - fi - fi - # - # Select a script execution method - case $this_script in - *fstab*) if [[ -n "$FSTAB" ]]; then - LUSER_wrt_CopyFstab - else - LUSER_wrt_RunAsUser "${file}" - fi - ;; - *chowning) wrt_RunAsRoot "${file}" - ;; - *) LUSER_wrt_RunAsUser "${file}" - ;; - esac - # - # Housekeeping...remove any build directory(ies) except if the package build fails. - if [ "$pkg_tarball" != "" ] ; then - LUSER_RemoveBuildDirs "${name}" - if [ "${INSTALL_LOG}" = "y" ] ; then - LUSER_wrt_LogNewFiles "$name" - fi - fi - # - # 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 - -} - - -#-----------------------------# -build_Makefile() { # Construct a Makefile from the book scripts -#-----------------------------# - echo "Creating Makefile... ${BOLD}START${OFF}" - - cd $JHALFSDIR/${PROGNAME}-commands - # Start with a clean Makefile.tmp file - >$MKFILE.tmp - - host_prep_Makefiles - [[ "${PLATFORM% -*}" = "WRT" ]] && systemprep_Makefiles # $cross_tools - cross_tools_Makefiles # $cross_tools - final_system_Makefiles # $basicsystem - bootscripts_Makefiles # $bootscripttools - bootable_Makefiles # $bootable - # Add the CUSTOM_TOOLS targets, if needed - [[ "$CUSTOM_TOOLS" = "y" ]] && wrt_CustomTools_target - - # Add a header, some variables and include the function file - # to the top of the real Makefile. - wrt_Makefile_header - - # Drop in the main target 'all:' and the chapter targets with each sub-target - # as a dependency. -( -cat << EOF - -all: ck_UID mk_SETUP mk_LUSER create-sbu_du-report mk_CUSTOM_TOOLS mk_ROOT - @sudo make restore-luser-env - @sudo make do-housekeeping - @\$(call echo_finished,$VERSION) - -ck_UID: - @if [ \`id -u\` = "0" ]; then \\ - echo "--------------------------------------------------"; \\ - echo "You cannot run this makefile from the root account"; \\ - echo "--------------------------------------------------"; \\ - exit 1; \\ - fi - -mk_SETUP: - @\$(call echo_SU_request) - @sudo make BREAKPOINT=\$(BREAKPOINT) SETUP - @touch \$@ - -mk_LUSER: mk_SETUP - @\$(call echo_SULUSER_request) - @(sudo \$(SU_LUSER) "source .bashrc && cd \$(MOUNT_PT)/\$(SCRIPT_ROOT) && make BREAKPOINT=\$(BREAKPOINT) LUSER" ) - @touch \$@ - -mk_CUSTOM_TOOLS: create-sbu_du-report - @if [ "\$(ADD_CUSTOM_TOOLS)" = "y" ]; then \\ - \$(call sh_echo_PHASE,Building CUSTOM_TOOLS); \\ - (sudo \$(SU_LUSER) "mkdir -p $BUILDDIR$TRACKING_DIR"); \\ - (sudo \$(SU_LUSER) "source .bashrc && cd \$(MOUNT_PT)/\$(SCRIPT_ROOT) && make BREAKPOINT=\$(BREAKPOINT) CUSTOM_TOOLS"); \\ - fi; - @touch \$@ - -mk_ROOT: - @\$(call echo_SU_request) - @echo "$VERSION-embedded - jhalfs build" > clfs-release && \\ - sudo mv clfs-release \$(MOUNT_PT)/etc - @sudo make BREAKPOINT=\$(BREAKPOINT) ROOT - @touch \$@ - - -SETUP: $host_prep -LUSER: $cross_tools $basicsystem $bootscripttools $bootable -CUSTOM_TOOLS: $custom_list -ROOT: $chowning - - -create-sbu_du-report: mk_LUSER - @\$(call echo_message, Building) - @if [ "\$(ADD_REPORT)" = "y" ]; then \\ - ./create-sbu_du-report.sh logs $VERSION $(date --iso-8601); \\ - \$(call echo_report,$VERSION-SBU_DU-$(date --iso-8601).report); \\ - fi; - @touch \$@ - -restore-luser-env: - @\$(call echo_message, Building) - @if [ -f \$(LUSER_HOME)/.bashrc.XXX ]; then \\ - mv -f \$(LUSER_HOME)/.bashrc.XXX \$(LUSER_HOME)/.bashrc; \\ - fi; - @if [ -f \$(LUSER_HOME)/.bash_profile.XXX ]; then \\ - mv \$(LUSER_HOME)/.bash_profile.XXX \$(LUSER_HOME)/.bash_profile; \\ - fi; - @chown \$(LUSER):\$(LGROUP) \$(LUSER_HOME)/.bash* && \\ - touch \$@ && \\ - echo " "\$(BOLD)Target \$(BLUE)\$@ \$(BOLD)OK && \\ - echo --------------------------------------------------------------------------------\$(WHITE) - -do-housekeeping: - @-if [ ! -f luser-exist ]; then \\ - userdel \$(LUSER); \\ - rm -rf \$(LUSER_HOME); \\ - fi; - -EOF -) >> $MKFILE - - # Bring over the items from the Makefile.tmp - cat $MKFILE.tmp >> $MKFILE - rm $MKFILE.tmp - echo "Creating Makefile... ${BOLD}DONE${OFF}" - -} - diff --git a/custom/examples_CLFS-E/950-dropbear b/custom/examples_CLFS-E/950-dropbear deleted file mode 100644 index 8d5769b..0000000 --- a/custom/examples_CLFS-E/950-dropbear +++ /dev/null @@ -1,46 +0,0 @@ -# Code taken from CLFS-Embedded -# Chapter 12 Beyond CLFS Embedded -# -# Dropbear is a relatively small SSH 2 server and client. -# Dropbear has a small memory footprint suitable for memory-constrained -# environments, while still having the same features as OpenSSH. It -# does not depend on OpenSSL and it has a MIT style license. Optionally -# it can even be made smaller. -# - -PKG="DROPBEAR" -PKG_VERSION="0.48.1" -PKG_FILE="${PKG}-${PKG_VERSION}.tar.gz" -URL="http://matt.ucc.asn.au/dropbear/releases/${PKG_FILE}" -MD5="ca8e53a766faec831882831364568421" -for i in PATCH{1..10}; do - unset $i -done -PATCH1="http://svn.cross-lfs.org/svn/repos/cross-lfs/branches/clfs-embedded/patches/dropbear-0.48.1-autotool-1.patch" - -( cat << "xEOFx" - -patch -Np1 -i ../dropbear-0.48.1-autotool-1.patch - -cp Makefile.in{,.orig} -sed -e s/@LD@/@CC@/ Makefile.in.orig > Makefile.in - -CC="${CC} ${BUILD}" ./configure --prefix=/usr --host=${CLFS_TARGET} - -cp -v options.h options.h.backup -sed -e "s@/dev/random@/dev/urandom@" options.h.backup > options.h - -make MULTI=1 PROGRAMS="dropbear dbclient dropbearkey dropbearconvert scp" - -make MULTI=1 PROGRAMS="dropbear dbclient dropbearkey dropbearconvert scp" install DESTDIR=${CLFS} -ln -svf ../../usr/bin/dropbearmulti ${CLFS}/usr/sbin/dropbear -ln -svf ../../usr/bin/dropbearmulti ${CLFS}/usr/bin/dbclient -ln -svf ../../usr/bin/dropbearmulti ${CLFS}/usr/bin/dropbearkey -ln -svf ../../usr/bin/dropbearmulti ${CLFS}/usr/bin/dropbearconvert -ln -svf ../../usr/bin/dropbearmulti ${CLFS}/usr/bin/scp - -install -dv ${CLFS}/etc/ssh - - -xEOFx -) > tmp diff --git a/custom/examples_CLFS-E/960-iptables b/custom/examples_CLFS-E/960-iptables deleted file mode 100644 index 0371b33..0000000 --- a/custom/examples_CLFS-E/960-iptables +++ /dev/null @@ -1,39 +0,0 @@ -# Code taken from CLFS-Embedded -# Chapter 12 Beyond CLFS Embedded -# -# iptables is the userspace command line program -# used to configure the Linux firewall. -# - -PKG="iptables" -PKG_VERSION="1.3.7" -PKG_FILE="${PKG}-${PKG_VERSION}.tar.bz2" -URL=" http://www.netfilter.org/projects/iptables/files/iptables-1.3.7.tar.bz2" -MD5="077e886a9c90a11bb47f3d7a4fc4a689" -for i in PATCH{1..10}; do - unset $i -done -PATCH1="http://svn.cross-lfs.org/svn/repos/cross-lfs/branches/clfs-embedded/patches/iptables-1.3.7-do_multi-1.patch" - -( cat << "xEOFx" - -patch -Np1 -i ../iptables-1.3.7-do_multi-1.patch - -make CC="${CC} ${BUILD}" \ - COPT_FLAGS="-Os" \ - LD=${LD} DO_MULTI=1 \ - PREFIX=/usr \ - KERNEL_DIR=${CLFS}/lib/modules/2.6.19.2/build \ - LIBDIR=/lib \ - BINDIR=/sbin - -make CC="${CC} ${BUILD}" \ - COPT_FLAGS="-Os" \ - LD=${LD} DO_MULTI=1 \ - PREFIX=/usr \ - KERNEL_DIR=${CLFS}/lib/modules/2.6.19.2/build \ - LIBDIR=/lib BINDIR=/sbin \ - DESTDIR=${CLFS} install - -xEOFx -) > tmp diff --git a/jhalfs b/jhalfs index 56b1231..484789d 100755 --- a/jhalfs +++ b/jhalfs @@ -247,9 +247,6 @@ case $PROGNAME in esac declare -r LOG=000-masterscript.log -# Needed for fetching BLFS book sources when building CLFS -# shellcheck disable=SC2034 -# declare -r GIT="git://git.linuxfromscratch.org" # Set true internal variables COMMON_DIR="common"