Annotation of elwix/install2ub.sh, revision 1.1.2.4

1.1.2.1   misho       1: #!/bin/sh
                      2: #
                      3: # ELWIX install script for u-boot image
                      4: #
                      5: # (C) AITNET ltd - Sofia/Bulgaria <office@aitnet.org>
                      6: #    by Michael Pounov <misho@elwix.org>
                      7: #
1.1.2.4 ! misho       8: # $Id: install2ub.sh,v 1.1.2.3 2013/05/15 16:30:59 misho Exp $
1.1.2.1   misho       9: #
                     10: 
                     11: [ -r ./config/rc.elwix ] && . ./config/rc.elwix
                     12: if [ X"${ELWIX_IS_CONFIGURED}" != X"YES" ]; then
                     13:        echo
                     14:        echo "ELWIX project is not configured !?!"
                     15:        echo
                     16:        exit 1
                     17: fi
                     18: 
                     19: if [ "${USER}" != "root" ]; then
                     20:        echo
                     21:        echo "ELWIX project is not configured - install must build under root !?!"
                     22:        echo
                     23:        exit 1
                     24: fi
                     25: 
                     26: UB_K=""
                     27: 
                     28: cleanUB()
                     29: {
                     30:        echo "+++ Clean ELWIX U-boot images ..."
                     31: 
                     32:        rm -rf ${UB_OBJS}
                     33:        install -d ${UB_OBJS}
                     34: }
                     35: 
                     36: prepareUB()
                     37: {
                     38:        echo "+++ Prepare ELWIX U-boot kernel ..."
                     39: 
                     40:        cp ${KERNEL} ${UB_OBJS}
1.1.2.3   misho      41:        STARTADDR=$(${DEST}/cross_exec.sh nm ${UB_KERNEL} | grep ' _start$' | cut -f1 -d ' ')
1.1.2.1   misho      42:        ${DEST}/cross_exec.sh objcopy -O binary ${UB_KERNEL} ${UB_KERNEL}.bin
1.1.2.3   misho      43:        UB_LOADADDR=${UB_LOADADDR:=$STARTADDR}
                     44:        UB_ENTRYADDR=${UB_ENTRYADDR:=$UB_LOADADDR}
1.1.2.1   misho      45: }
                     46: 
                     47: compUB()
                     48: {
                     49:        echo "+++ Compress ELWIX U-boot kernel ..."
                     50: 
                     51:        case ${UB_COMPRESS} in
                     52:                gzip)
                     53:                        gzip --force --best ${UB_KERNEL}.bin
                     54:                        UB_K="${UB_KERNEL}.bin.gz"
                     55:                        ;;
1.1.2.2   misho      56:                lzma)
1.1.2.3   misho      57:                        oldlzma e ${UB_KERNEL}.bin ${UB_KERNEL}.bin.lzma
1.1.2.2   misho      58:                        UB_K="${UB_KERNEL}.bin.lzma"
                     59:                        ;;
1.1.2.3   misho      60:                none)
                     61:                        UB_K="${UB_KERNEL}.bin"
                     62:                        ;;
1.1.2.1   misho      63:                *)
                     64:                        echo "Error:: not supported compress method ..."
                     65:                        exit 1
                     66:                        ;;
                     67:        esac
                     68: }
                     69: 
                     70: mkimgUB()
                     71: {
                     72:        echo "+++ Make ELWIX U-boot kernel image ..."
                     73: 
1.1.2.4 ! misho      74:        uboot_mkimage -A ${TARGET} -O netbsd -T kernel -C ${UB_COMPRESS} \
1.1.2.1   misho      75:                -a ${UB_LOADADDR} -e ${UB_ENTRYADDR} -n "ELWIX version ${VERSION} kernel" \
                     76:                -d ${UB_K} ${UB_K}.ub
                     77: }
                     78: 
                     79: instUB()
                     80: {
                     81:        echo "+++ Install ELWIX U-boot kernel image into release directory ..."
                     82: 
                     83:        install ${UB_K}.ub ${REL}
                     84: }
                     85: 
                     86: ### main()
                     87: 
                     88: if [ ! -x ${DEST}/cross_exec.sh ]; then
                     89:        echo
                     90:        echo "Error:: ELWIX cross-toolchain not ready ... First execute ./build_world.sh"
                     91:        echo
                     92:        exit 1
                     93: fi
                     94: 
                     95: cleanUB
                     96: prepareUB
                     97: compUB
                     98: mkimgUB
                     99: instUB
                    100: 
                    101: echo "ELWIX U-boot images install complete."

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>