# Contributor: William Pitcock # Contributor: Timo Teras # Maintainer: Leonardo Arena setvar pkgname = 'u-boot' setvar pkgver = '2017.01' setvar pkgrel = '2' setvar pkgdesc = ""u-boot bootloader common files"" setvar url = ""http://www.denx.de/wiki/U-Boot/"" setvar arch = ""armhf aarch64"" setvar license = ""GPL2"" setvar depends = """" setvar depends_dev = """" setvar makedepends = ""$depends_dev bc dtc python"" setvar install = """" setvar source = ""ftp://ftp.denx.de/pub/u-boot/u-boot-${pkgver//_/-}.tar.bz2 README.txt update-u-boot "" setvar _srcdir = ""$srcdir"/u-boot-${pkgver//_/-}" setvar builddir = ""$srcdir"/build" case (CARCH) { armhf { setvar board_configs = "" beagleboard:am335x_boneblack cubieboard:Cubieboard,Cubieboard2 cuboxi:mx6cuboxi raspberrypi:rpi,rpi_2,rpi_3_32b wandboard:wandboard ""} aarch64 { setvar board_configs = "" thunderx:thunderx_88xx ""} } setvar _allboards = """" for board_config in $board_configs { setvar _allboards = ""$_allboards $pkgname-${board_config%%:*}"" } setvar subpackages = ""$pkgname-all:_all $_allboards"" proc build { cd $_srcdir touch include/config.h' LC_ALL=C' date +'#define U_BOOT_DATE "%b %d %C%y"' '> include/timestamp_autogenerated.h LC_ALL=C' date +'#define U_BOOT_TIME "%T"' >> include/timestamp_autogenerated.h local board_config board for board_config in $board_configs { local configs="${board_config#*:}" for board in ${configs//,/ } { msg "Building u-boot for $board" export BUILD_DIR="$builddir"/$board mkdir -p $BUILD_DIR make O="$BUILD_DIR" ${board}_config || return 1 make O="$BUILD_DIR" all || return 1 } } } proc package { cd $builddir mkdir -p "$pkgdir"/usr/share/$pkgname "$pkgdir"/usr/sbin install "$srcdir"/README.txt "$pkgdir"/usr/share/$pkgname/README.txt || return 1 install "$srcdir"/update-u-boot "$pkgdir"/usr/sbin || return 1 } proc _all { setvar pkgdesc = ""u-boot for all boards (meta package)"" setvar depends = "$_allboards" mkdir -p "$subpkgdir"/ } proc _split_boards { cd $builddir setvar pkgdesc = ""u-boot for $1"" setvar depends = ""u-boot"" shift local boardfor board in @ARGV { msg "Including board $board" mkdir -p "$subpkgdir"/usr/share/$pkgname/$board export BUILD_DIR="$builddir"/$board local ok=no for image in u-boot-sunxi-with-spl.bin -- MLO SPL u-boot.img -- u-boot.bin { if test $image = "--" { test $ok = yes && break continue } if test -e "$BUILD_DIR"/$image { cp "$BUILD_DIR"/$image "$subpkgdir"/usr/share/$pkgname/$board \ || return 1 setvar ok = 'yes' } } test $ok = yes || return 1 } } for board_config in $board_configs { setvar _board = "${board_config%%:*}" setvar _configs = "${board_config#*:}" eval "${_board}() { _split_boards $_board ${_configs//,/ }; }" } setvar sha512sums = ""d24c7d1305d81326a0f18071c073cd80c5ac43fcc8d8495509c56a8207620acc3d3e86afa873f738953841b3f6273e345493aad449f2464673275cc221270527 u-boot-2017.01.tar.bz2 f8c9bb6e84d6f0620c976ac7ad5dd7ec7ff9dfdd4b1d03d2bf6653e7beccf80bdf2debfc92fb1f696dba92fb40287d3c45897e0078951451d0835cb61a5f16d1 README.txt c860f2cd6fe0ad9a462ac12a7df24b621ac53a07ada21a53791fd14f73c08619adb1f70a61507cc0b531c7beb1953ea8224b8dca5585a5d11b8df43d9ee0ac76 update-u-boot""