clfs-bootstrap

clfs-bootstrap.git
git clone git://git.lenczewski.org/clfs-bootstrap.git
Log | Files | Refs | README | LICENSE

setup (1882B)


      1 #!/bin/sh
      2 
      3 . ./common.sh
      4 
      5 echo $CLFS_STAGE1
      6 
      7 TARGET=$1
      8 
      9 [ "${TARGET:-z}" = "z" ] && echo "No target specified!" && exit 1
     10 
     11 # select a build target + build configuration
     12 TARGET_EXISTS=
     13 for ENTRY in ./targets/*; do
     14 	if [ -d $ENTRY -a "$(basename $ENTRY)" = "$TARGET" ]; then
     15 		TARGET_EXISTS=y
     16 		echo "Selected target: $TARGET"
     17 	fi
     18 done
     19 
     20 [ "${TARGET_EXISTS:-z}" = "z" ] && echo "Target $TARGET not found!" && exit 1
     21 
     22 # write out shell includes for any environment variables
     23 # TODO(mikolaj)
     24 
     25 # create clfs build user + setup user bashrc with environment variables
     26 groupadd clfs
     27 useradd clfs -s /bin/bash -g clfs -m -k /dev/null
     28 
     29 cat > /home/clfs/.bash_profile <<'EOF'
     30 exec env -i HOME=${HOME} TERM=${TERM} PS1='\u:\w\$ ' /bin/bash
     31 EOF
     32 
     33 cat > /home/clfs/.bashrc <<'EOF'
     34 set +h
     35 umask 022
     36 EOF
     37 
     38 cat common.sh >> /home/clfs/.bashrc
     39 
     40 # TODO(mikolaj): append shell includes to bashrc
     41 # TODO(mikolaj): ensure CLFS_SYSROOT, CLFS_XSYSROOT and other important
     42 # environment variables have been assigned
     43 
     44 cat >> /home/clfs/.bashrc <<'EOF'
     45 export CLFS_HOST="$(echo ${MACHTYPE} | sed "s/-[^-]*/-cross/")"
     46 
     47 LC_ALL=POSIX
     48 PATH=${CLFS_STAGE1}/bin:/bin:/usr/bin
     49 export LC_ALL PATH
     50 EOF
     51 
     52 # create clfs build directory + subdirectories
     53 mkdir $CLFS
     54 chmod 755 $CLFS
     55 
     56 mkdir $CLFS_CONFIGS $CLFS_SCRIPTS $CLFS_SOURCES $CLFS_LOGS
     57 mkdif $CLFS_CONF $CLFS_INIT
     58 mkdir $CLFS_STAGE1 $CLFS_STAGE2 $CLFS_STAGE3 $CLFS_STAGE4
     59 chmod a+wt $CLFS/*
     60 
     61 cp -r bootscripts/* $CLFS_INIT
     62 cp -r configs/* $CLFS_CONF
     63 cp -r stages/* $CLFS_SCRIPTS
     64 chmod +x $CLFS_SCRIPTS/*
     65 
     66 chown clfs:clfs $CLFS -R
     67 
     68 # download sources and verify source signatures
     69 cp wget-list.src $CLFS_SOURCES/wget-list
     70 cp md5sums.src $CLFS_SOURCES/md5sums
     71 
     72 OLD=$(pwd)
     73 cd $CLFS_SOURCES
     74 	wget --input-file=wget-list --continue
     75 	md5sum -c md5sums
     76 cd $OLD
     77 
     78 # copy required source package build scripts to build directory
     79 
     80 # create linux standard hierarchy (fs) for rootfs
     81