File:  [ELWIX - Embedded LightWeight unIX -] / elwix / Attic / install2ub.sh
Revision 1.1.2.4: download - view: text, annotated - select for diffs - revision graph
Fri May 17 23:33:41 2013 UTC (11 years, 1 month ago) by misho
Branches: elwix1_9_mips
changed kernel name

    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: #
    8: # $Id: install2ub.sh,v 1.1.2.4 2013/05/17 23:33:41 misho Exp $
    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}
   41: 	STARTADDR=$(${DEST}/cross_exec.sh nm ${UB_KERNEL} | grep ' _start$' | cut -f1 -d ' ')
   42: 	${DEST}/cross_exec.sh objcopy -O binary ${UB_KERNEL} ${UB_KERNEL}.bin
   43: 	UB_LOADADDR=${UB_LOADADDR:=$STARTADDR}
   44: 	UB_ENTRYADDR=${UB_ENTRYADDR:=$UB_LOADADDR}
   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: 			;;
   56: 		lzma)
   57: 			oldlzma e ${UB_KERNEL}.bin ${UB_KERNEL}.bin.lzma
   58: 			UB_K="${UB_KERNEL}.bin.lzma"
   59: 			;;
   60: 		none)
   61: 			UB_K="${UB_KERNEL}.bin"
   62: 			;;
   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: 
   74: 	uboot_mkimage -A ${TARGET} -O netbsd -T kernel -C ${UB_COMPRESS} \
   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>