summaryrefslogtreecommitdiff
path: root/uboot-sunxi/PKGBUILD
blob: 9b02fdf829f53a2cb45e3fcc972124f70351d200 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
# Maintainer:  Erich Eckner <arch at eckner dot net>
# Contributor: Christopher Reimer <mail+aur[at]c-reimer[dot]de>
# Contributor: Kevin Mihelich <kevin@archlinuxarm.org>

# ist alles absichtlich nicht any ohne ELF Dateien

pkgbase=uboot-sunxi
_boards=(
  'uboot-a10-olinuxino-lime A10-OLinuXino-Lime'
  'uboot-a10s-olinuxino-micro A10s-OLinuXino-M'
  'uboot-a13-olinuxino A13-OLinuXino'
  'uboot-a13-olinuxino-micro A13-OLinuXinoM'
  'uboot-a20-olinuxino-lime A20-OLinuXino-Lime'
  'uboot-a20-olinuxino-lime2 A20-OLinuXino-Lime2'
  'uboot-a20-olinuxino-micro A20-OLinuXino_MICRO'
  'uboot-bananapi Bananapi'
#  'uboot-bananapi-m1-plus bananapi_m1_plus'
#  'uboot-bananapi-m2-berry bananapi_m2_berry'
#  'uboot-Bananapi-m2m Bananapi_m2m'
#  'uboot-bananapi-m2-plus_h3 bananapi_m2_plus_h3'
#  'uboot-bananapi-m2-plus_h5 bananapi_m2_plus_h5'
#  'uboot-Bananapi-m2-ultra Bananapi_M2_Ultra'
#  'uboot-bananapi-m2-zero bananapi_m2_zero'
#  'uboot-Bananapro Bananapro'
  'uboot-cubieboard Cubieboard'
  'uboot-cubieboard2 Cubieboard2'
  'uboot-cubietruck Cubietruck'
  'uboot-pcduino Linksprite_pcDuino'
  'uboot-pcduino3 Linksprite_pcDuino3'
  'uboot-pcduino3-nano Linksprite_pcDuino3_Nano'
)
pkgname=("${_boards[@]%% *}")
pkgdesc='U-Boot for several architectures'
pkgver=2021.01
pkgrel=1
arch=('armv7h')
url="http://git.denx.de/u-boot.git/"
license=('GPL')
makedepends=('git' 'swig' 'bc' 'dtc' 'python2' 'python')
backup=(boot/boot.txt boot/boot.scr)
source=("ftp://ftp.denx.de/pub/u-boot/u-boot-${pkgver}.tar.bz2"
        'boot.txt'
        'mkscr')
sha512sums=('40dd4d9ef87a1829158658c433d46a047a39c0d8c314ad8d133f7240343ee3a75b060f009dd2efe598cfb8a766773f6cd773ea7f7745ee88e52a771c77eb1c6e'
            'f2978ea8acc39fccd0269eb74248e622d1e5daf0b30a2c48ac1d618deda3b4733e949d21bff5dbd2e5b6c39f0df60480c55e3ee1bf8e64df2c8157a51f2fbb49'
            '7046ab4d88efbba636be049be2f660e18c05e48d161d39437c1580b12795ba4d9197ad57ac4572398f80a38d4777507b57228abf4cc41f0081d196ece27ea9d0')

prepare() {
  cd u-boot-${pkgver}

  sed -i '
    1 s/env python$/&2/
    1 s/\(env python\)3$/\1/
  ' tools/binman/binman{,.py}
}

build() {
  cd u-boot-${pkgver}

  unset CFLAGS CXXFLAGS LDFLAGS

  for i in "${_boards[@]#* }"; do
    mkdir ../bin_${i}
    make distclean
    make ${i}_config
    echo 'CONFIG_IDENT_STRING=" Arch Linux ARM"' >> .config
    make EXTRAVERSION=-${pkgrel}
    mv u-boot-sunxi-with-spl.bin ../bin_${i}
  done

  tools/mkimage -A arm -O linux -T script -C none -n "U-Boot boot script" -d ../boot.txt ../boot.scr
}

for i in "${!_boards[@]}"; do
  _pn="${_boards[${i}]%% *}"
  _pd="${_boards[${i}]#* }"

  eval 'package_'"${_pn}"'() {
  pkgdesc="U-Boot for '"${_pd#Linksprite_}"'"
  install=${pkgbase}.install
  provides=('"'"'uboot-sunxi'"'"')
  conflicts=('"'"'uboot-sunxi'"'"')

  install -d "${pkgdir}"/boot
  install -Dm644 bin_'"${_pd}"'/u-boot-sunxi-with-spl.bin "${pkgdir}"/boot

  install -Dm644 boot.txt "${pkgdir}"/boot/boot.txt
  install -Dm644 boot.scr "${pkgdir}"/boot/boot.scr
  install -Dm755 mkscr "${pkgdir}"/boot/mkscr
}'

done