PKGBUILD 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599
  1. # U-Boot: sunXi
  2. # Maintainer: Isaac David <isacdaavid@at@isacdaavid@dot@info>
  3. # Contributor: André Silva <emulatorman@hyperbola.info>
  4. # Contributor: Timothy Redaelli <timothy.redaelli@gmail.com>
  5. # Contributor: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
  6. # Maintainer: Jacob 'KREYREN' Hrbek <kreyren+parabola@fsfe.org>
  7. # Maintainer: Parabola Hackers <dev@lists.parabola.nu>
  8. # shellcheck shell=bash
  9. # To add a new board (that uses an Allwinner System On a Chip) you need:
  10. # - The package name. Example: uboot4extlinux-a20-olinuxino_micro
  11. # - The u-boot configuration. Example: A20-OLinuXino_MICRO_defconfig
  12. # - The name of the board(s). Example: A20 OLinuXino Micro
  13. # A single package / u-boot configuration sometimes support multiple
  14. # boards and the configuration name doesn't always have the boards names
  15. # in it. Example: uboot4extlinux-am335x_bone supports various BeagleBones,
  16. # the AM335x GP EVM and the EVM SK all in one u-boot binary and package.
  17. # - If relevant, the packages it replaces, if there are older u-boot packages
  18. # also supporting that board. Example:uboot-a20-olinuxino-micro
  19. #
  20. # Ideally we'd like to enable people to only add these 4 variables in this
  21. # package to add a new board. These 4 variables could go in something like
  22. # a CVS file that is parsed, but that would require to be able to dynamically
  23. # define packages, but even if eval package_{$_pkgname}() { [...] } works,
  24. # it doesn't make that package function visible to makepkg.
  25. #
  26. # Because of that, contributors wanting to add new boards will have to search
  27. # for example of the information mentioned above and add it in the PKGBUILD
  28. # for their boards.
  29. #
  30. # After adding a new board in this PKGBUILD, to get the board officially
  31. # supported by Parabola.you also need to create a page for it in the
  32. # Parabola wiki for that board and update the ARM installation guide to
  33. # point to it when relevant. Examples of that are available for other
  34. # boards in the ARM installation guide.
  35. # FIXME-QA(Krey): The `cd path` should be sanitized with `cd "$path" || die 1 "Unable to change path to '$path'"` ideally through a wrapper like `ecd "$path"`
  36. _pkgbase=u-boot-libre
  37. pkgbase=uboot4extlinux-sunxi
  38. pkgname=("$pkgbase"
  39. 'uboot4extlinux-a10-olinuxino-lime'
  40. 'uboot4extlinux-a10s-olinuxino-m'
  41. 'uboot4extlinux-a13-olinuxino'
  42. 'uboot4extlinux-a13-olinuxinom'
  43. 'uboot4extlinux-a20-olinuxino-lime'
  44. 'uboot4extlinux-a20-olinuxino-lime2'
  45. 'uboot4extlinux-a20-olinuxino-lime2-emmc'
  46. 'uboot4extlinux-a20-olinuxino_micro'
  47. #'uboot4extlinux-teres-i'
  48. 'uboot4extlinux-bananapi'
  49. 'uboot4extlinux-bananapro'
  50. 'uboot4extlinux-chip'
  51. 'uboot4extlinux-cubieboard'
  52. 'uboot4extlinux-cubieboard2'
  53. 'uboot4extlinux-cubietruck'
  54. 'uboot4extlinux-linksprite_pcduino'
  55. 'uboot4extlinux-linksprite_pcduino3'
  56. 'uboot4extlinux-linksprite_pcduino3_nano'
  57. 'uboot4extlinux-orangepi_2'
  58. 'uboot4extlinux-orangepi_one'
  59. 'uboot4extlinux-orangepi_pc'
  60. 'uboot4extlinux-orangepi_plus')
  61. # We have a ${pkgver}-${pkgrel} that looks like that:
  62. # '2021.07-r1.parabola3' and all the individual components are needed:
  63. # - '2021.07' corresponds to the upstream u-boot version. It is needed
  64. # to know which u-boot version source code is used.
  65. # - 'r1' corresponds to the u-boot-libre revision. Without it it would
  66. # be impossible to fix bugs inside the u-boot-libre deblob script.
  67. # - .parabola3 is the Parabola package revision. Without it it would be
  68. # impossible to fix bugs inside this PKGBUILD.
  69. # As for the '-r1', it cannot go inside pkgver, else we end up with an
  70. # error like that when running makepkg:
  71. # ==> ERROR: pkgver is not allowed to contain colons, forward slashes,
  72. # hyphens or whitespace.
  73. # so it was moved in pkgrel.
  74. _pkgver="2021.07"
  75. _pkgrel="r1"
  76. pkgver="$_pkgver"
  77. pkgrel="$_pkgrel.parabola3"
  78. arch=('armv7h' 'armv8h' 'i686' 'x86_64')
  79. url="https://libreboot.org/docs/maintain/#resourcesscriptsbuildreleaseu-boot-libre"
  80. license=('GPL')
  81. makedepends=('bc' 'dtc' 'python' 'python-setuptools' 'python2' 'swig')
  82. makedepends_i686+=('arm-none-eabi-gcc')
  83. makedepends_ppc64le+=('arm-none-eabi-gcc')
  84. makedepends_x86_64+=('arm-none-eabi-gcc')
  85. # According to the Libreboot maintainer[citation needed], we are supposed to use
  86. # any of the mirrors in https://libreboot.org/download.html#https
  87. # and not use the rsync server. The rsync server is only supposed
  88. # to be used by mirrors as it has limited bandwith.
  89. _mirror="https://mirrors.mit.edu/libreboot/"
  90. source=("$_mirror/$_pkgbase/$_pkgver-$_pkgrel/$_pkgbase-$_pkgver-$_pkgrel.tar")
  91. # TODO: this checksum doesn't correspond to the one in
  92. # tests/u-boot-libre.sha512. This means that the tarball is not
  93. # reproducible yet. According to diffoscope, the only changes so
  94. # far seems to be some permissions changes:
  95. # │ -drwxr-xr-x [...] 0 1969-12-31 23:00:00.000000 u-boot-libre-2021.07-r1/
  96. # │ +drwxrwxr-x [...] 0 1969-12-31 23:00:00.000000 u-boot-libre-2021.07-r1/
  97. # │ --rw-r--r-- [...] 16576 1969-12-31 23:00:00.000000 u-boot-libre-2021.07-r1/.azure-pipelines.yml
  98. # │ +-rw-rw-r-- [...] 16576 1969-12-31 23:00:00.000000 u-boot-libre-2021.07-r1/.azure-pipelines.yml
  99. # I've not checked if some files were added or not but at least it
  100. # shows only diffs like the one above, and it doesn't show any file
  101. # content diff.
  102. # TODO: Check the signatures of the released files, not just the content
  103. # TODO: We also need to look into drivers/dma/MCD_tasks.c. The debian
  104. # version of u-boot removes it. It's some data that looks like
  105. # code, so while there is a valid license, we might lack
  106. # corresponding source code if it's really some code. The debian
  107. # commits might have more information about it.
  108. sha512sums=('4fd4cb762efd6b3e1eede883ee44cbf16f787de7f9bd8d6f9a98d69a22fd75519cce4b9ff713b205d34854597d2f9d6053dabc6097e55cb5be7c7ce71dae2ef6')
  109. source+=('extlinux.conf'
  110. "$pkgbase.hook.in"
  111. 'install-uboot4extlinux.sh.in'
  112. "generate-$pkgbase-install-text.sh")
  113. sha512sums+=('SKIP'
  114. 'SKIP'
  115. 'SKIP'
  116. 'SKIP')
  117. _defconfigs=('A10-OLinuXino-Lime_defconfig'
  118. 'A10s-OLinuXino-M_defconfig'
  119. 'A13-OLinuXino_defconfig'
  120. 'A13-OLinuXinoM_defconfig'
  121. 'A20-OLinuXino-Lime_defconfig'
  122. 'A20-OLinuXino-Lime2_defconfig'
  123. 'A20-OLinuXino-Lime2-eMMC_defconfig'
  124. 'A20-OLinuXino_MICRO_defconfig'
  125. 'teres_i_defconfig'
  126. 'Bananapi_defconfig'
  127. 'Bananapro_defconfig'
  128. 'CHIP_defconfig'
  129. 'Cubieboard_defconfig'
  130. 'Cubieboard2_defconfig'
  131. 'Cubietruck_defconfig'
  132. 'Linksprite_pcDuino_defconfig'
  133. 'Linksprite_pcDuino3_defconfig'
  134. 'Linksprite_pcDuino3_Nano_defconfig'
  135. 'orangepi_2_defconfig'
  136. 'orangepi_one_defconfig'
  137. 'orangepi_pc_defconfig'
  138. 'orangepi_plus_defconfig')
  139. # Helper for assertation
  140. command -v die 1>/dev/null || die() { printf "FATAL: %s\n" "$2"; exit 1 ;}
  141. # Helper for status update
  142. status_update() { printf "==> %s\n" "$*" ;}
  143. # Offset at which to install u-boot
  144. u_boot_with_spl_offset=8192
  145. # Set the required variabls for cross-platforming
  146. status_update "Applying architecture specific variables.."
  147. case "$CARCH" in
  148. armv7h|armv8h)
  149. ARCH=arm ;;
  150. i686|ppc64le|x86_64)
  151. ARCH=arm
  152. CROSS_COMPILE="arm-none-eabi-" ;;
  153. *)
  154. die 1 "Building from host platform '$CARCH' is not implemented!"
  155. esac
  156. status_update "Processing.."
  157. # Calculate how many defconfigs do we have and store it in _nr_targets
  158. _nr_targets=0
  159. for _defconfig in ${_defconfigs[@]}; do
  160. _nr_targets="$(expr "$_nr_targets" + 1)"
  161. done
  162. # Return the configuration name without the '_defconfig' suffix as stdout
  163. _get_target_name()
  164. {
  165. _defconfig="$1"
  166. printf "%s\n" "$_defconfig" | \
  167. sed 's/_defconfig$//' | \
  168. awk '{print tolower($0)}'
  169. }
  170. # Return the directory for configuration's name as stdout
  171. # Requires: _get_target_name()
  172. _get_target_destdir()
  173. {
  174. _defconfig="$1"
  175. _target_name="$(_get_target_name "$_defconfig")"
  176. echo "build/uboot4extlinux-$_target_name"
  177. }
  178. _build_uboot_target()
  179. {
  180. _defconfig="$1"
  181. _destdir="$(_get_target_destdir "$_defconfig")"
  182. _target_name="$(_get_target_name "$_defconfig")"
  183. # WTF(Krey): Why are these needed?
  184. # LDFLAGS need to be unset to avoid linker error at the final step
  185. unset CFLAGS CXXFLAGS LDFLAGS
  186. # FIXME-QA(Krey): Does this need to be cleaned?
  187. make "ARCH=$ARCH" distclean
  188. # FIXME-QA(Krey): Should be in prepare instead
  189. # Generate the config
  190. make "ARCH=$ARCH" "$_defconfig"
  191. # FIXME-QA(Krey): This solution will append the string to the '.config' file causing scenario where the CONFIG_IDENT_STRING might be present twice -> Do regex replacement instead
  192. printf "%s\n" 'CONFIG_IDENT_STRING=" Parabola GNU/Linux-libre"' >> .config
  193. # Apply variables needed for cross-compiling and version control
  194. ## FIXME-QA(Krey): Possibly duplicate code, see above
  195. case "$CARCH" in
  196. armv7h|armv8h)
  197. make ARCH="$ARCH" EXTRAVERSION="-$pkgrel" ;;
  198. i686|ppc64le|x86_64)
  199. make ARCH="$ARCH" CROSS_COMPILE="$CROSS_COMPILE" EXTRAVERSION="-$pkgrel" ;;
  200. *)
  201. die 1 "Platform '$CARCH' is not implemented!"
  202. esac
  203. update_status "Installing $_target_name to $_destdir"
  204. install -d "$_destdir"
  205. [ -f "$_destdir/u-boot-sunxi-with-spl.bin" ] || mv -f u-boot-sunxi-with-spl.bin "$_destdir"
  206. }
  207. # TODO: We need to fix the timestamps upstream to a valid date
  208. # (like the first January 1970at 01:00:00 CET) or something derived
  209. # from the release version somehow. Else we have the build log spammed
  210. # with errors like that:
  211. # make: scripts/Makefile.extrawarn: Timestamp out of range;
  212. # substituting 1970-01-01 00:59:59.999999999
  213. # TODO: While we're at it we could export SOURCE_DATE_SPOCH to try to
  214. # make the u-boot package reporducible.
  215. prepare()
  216. {
  217. cd "$srcdir/$_pkgbase-$_pkgver-$_pkgrel" || exit 1
  218. # WTF(Krey): What is this doing and why?
  219. find -print0 | xargs -0r touch --no-dereference --date="@$SOURCE_DATE_EPOCH"
  220. }
  221. build()
  222. {
  223. cd "$srcdir/$_pkgbase-$_pkgver-$_pkgrel" || exit 1
  224. _target_nr=0
  225. for _defconfig in ${_defconfigs[@]}; do
  226. _target_nr="$(expr "$_target_nr" + 1)"
  227. _target_name="$(_get_target_name "$_defconfig")"
  228. status_update "Building $_target_name..." \
  229. "[$_target_nr of $_nr_targets targets]"
  230. _build_uboot_target "$_defconfig"
  231. done
  232. }
  233. # Test to check that the first segment is 1024x1024 wide
  234. _check_uboot_target()
  235. {
  236. _defconfig="$1"
  237. _image="$(_get_target_destdir "$_defconfig")/u-boot-sunxi-with-spl.bin"
  238. _image_size="$(du --bytes --apparent-size "$_image" | awk '{print $1}')"
  239. _offset="$u_boot_with_spl_offset"
  240. _image_end="$(expr "$_image_size" + "$_offset")"
  241. # This test comes from install-uboot4extlinux.sh.in
  242. if [ "$_image_end" -gt "$(expr 1024 \* 1024)" ]; then
  243. printf "!!! %s\n" \
  244. "Error: $_image is too big:" \
  245. " offset: $_offset" \
  246. " size: $_image_size" \
  247. "By default, partitioing tools make the first segment start at 1024 at bite size 1024 (1 MiB)" \
  248. " Instaling $_image would overwrite that first partition (if it's present)."
  249. return 1 # Fail the test
  250. fi
  251. }
  252. check()
  253. {
  254. cd "$srcdir/$_pkgbase-$_pkgver-$_pkgrel" || exit 1
  255. _target_nr=0
  256. for _defconfig in ${_defconfigs[@]}; do
  257. _target_nr=$(expr ${_target_nr} + 1)
  258. _target_name="$(_get_target_name $"_defconfig")"
  259. status_update "Testing target $_target_name" \
  260. "[${_target_nr} of ${_nr_targets} targets]"
  261. _check_uboot_target "$_defconfig"
  262. done
  263. }
  264. _make_uboot_package()
  265. {
  266. _pkgname="$1"
  267. if [ -n "$pkgdir" ]; then
  268. cd "$srcdir/$_pkgbase-$_pkgver-$_pkgrel" || exit 1
  269. # Install the u-boot binary
  270. install -d "$pkgdir/usr/lib/u-boot/$_pkgname/"
  271. install -Dm644 "build/$_pkgname/u-boot-sunxi-with-spl.bin" \
  272. "$pkgdir/usr/lib/u-boot/$_pkgname"
  273. # Install the u-boot installation script
  274. sed < "$srcdir/install-uboot4extlinux.sh.in" > "$pkgdir/usr/lib/u-boot/$_pkgname/install-uboot4extlinux.sh" \
  275. -e "s|@u_boot_with_spl[@]|/usr/lib/u-boot/$_pkgname/u-boot-sunxi-with-spl.bin|g" \
  276. -e "s|@u_boot_with_spl_offset[@]|$u_boot_with_spl_offset|g"
  277. ## And make sure it's executable
  278. [ -x "$pkgdir/usr/lib/u-boot/$_pkgname/install-uboot4extlinux.sh" ] || chmod +x "$pkgdir/usr/lib/u-boot/$_pkgname/install-uboot4extlinux.sh"
  279. # Install what is required for the pacman hook
  280. install -d "$pkgdir/usr/share/libalpm/hooks/"
  281. sed < "$srcdir/$pkgbase.hook.in" > "$pkgdir/usr/share/libalpm/hooks/$_pkgname.hook" \
  282. -e "s|@pkgname[@]|$_pkgname|g"
  283. install -d "$pkgdir/usr/share/doc/u-boot/$_pkgname/"
  284. # If we install several uboot4extlinux, we need a way to clearly
  285. # separate each postinstall message. To do that we wrapped the
  286. # text in an ASCII art square, but doing that is complicated when
  287. # using sed as the package name as well as the installation script
  288. # path both have variable length.
  289. sh "$srcdir/generate-$pkgbase-install-text.sh" \
  290. "$_pkgname" \
  291. "$pkgbase" \
  292. "/usr/lib/u-boot/$_pkgname/install-uboot4extlinux.sh" > \
  293. "$pkgdir/usr/share/doc/u-boot/$_pkgname/install-uboot4extlinux.txt"
  294. fi
  295. }
  296. # Default description prefix for package description
  297. def_desc_pfx="U-Boot with Extlinux support for"
  298. package_uboot4extlinux-sunxi()
  299. {
  300. pkgdesc="Scripts for managing U-Boot installations for computers with Allwinner System On a Chip"
  301. depends=('uboot-tools')
  302. # Users are expected to use this as a base for /boot/extlinux/extlinux.conf
  303. install -d "$pkgdir/usr/lib/u-boot/$pkgname/"
  304. install -Dm644 \
  305. "$srcdir/extlinux.conf" \
  306. "$pkgdir/usr/lib/u-boot/$pkgname/"
  307. }
  308. package_uboot4extlinux-a10-olinuxino-lime()
  309. {
  310. pkgdesc="$(printf "$def_desc_pfx %s\n" "A10 OLinuXino Lime")"
  311. # util-linux is needed for blkid for install-uboot4extlinux.sh
  312. depends=("$pkgbase" 'util-linux')
  313. _make_uboot_package "$pkgname"
  314. }
  315. package_uboot4extlinux-a10s-olinuxino-m()
  316. {
  317. pkgdesc="$(printf "$def_desc_pfx %s\n" "A10s OLinuXino Micro")"
  318. replaces=('uboot4extlinux-a10s-olinuxino-micro')
  319. # util-linux is needed for blkid for install-uboot4extlinux.sh
  320. depends=("$pkgbase" 'util-linux')
  321. _make_uboot_package "$pkgname"
  322. }
  323. package_uboot4extlinux-a13-olinuxino()
  324. {
  325. pkgdesc="$(printf "$def_desc_pfx %s\n" "A13 OLinuXino")"
  326. # util-linux is needed for blkid for install-uboot4extlinux.sh
  327. depends=("${pkgbase}" 'util-linux')
  328. _make_uboot_package "$pkgname"
  329. }
  330. package_uboot4extlinux-a13-olinuxinom()
  331. {
  332. pkgdesc="$(printf "$def_desc_pfx %s\n" "uboot4extlinux-a13-olinuxino-micro")"
  333. replaces=('uboot4extlinux-a13-olinuxino-micro')
  334. # util-linux is needed for blkid for install-uboot4extlinux.sh
  335. depends=("$pkgbase" 'util-linux')
  336. _make_uboot_package "$pkgname"
  337. }
  338. package_uboot4extlinux-a20-olinuxino-lime()
  339. {
  340. pkgdesc="$(printf "$def_desc_pfx %s\n" "A20 OLinuXino Lime")"
  341. # util-linux is needed for blkid for install-uboot4extlinux.sh
  342. depends=("$pkgbase" 'util-linux')
  343. _make_uboot_package "${pkgname}"
  344. }
  345. package_uboot4extlinux-a20-olinuxino-lime2()
  346. {
  347. pkgdesc="$(printf "$def_desc_pfx %s\n" "A20 OLinuXino Lime2")"
  348. # util-linux is needed for blkid for install-uboot4extlinux.sh
  349. depends=("${pkgbase}" 'util-linux')
  350. _make_uboot_package "${pkgname}"
  351. }
  352. package_uboot4extlinux-a20-olinuxino-lime2-emmc()
  353. {
  354. pkgdesc="$(printf "$def_desc_pfx %s\n" "A20 OLinuXino Lime2 with eMMC")"
  355. # util-linux is needed for blkid for install-uboot4extlinux.sh
  356. depends=("${pkgbase}" 'util-linux')
  357. _make_uboot_package "$pkgname"
  358. }
  359. package_uboot4extlinux-a20-olinuxino_micro()
  360. {
  361. pkgdesc="$(printf "$def_desc_pfx %s\n" "uboot-a20-olinuxino-micro")"
  362. replaces=('uboot-a20-olinuxino-micro')
  363. # util-linux is needed for blkid for install-uboot4extlinux.sh
  364. depends=("$pkgbase" 'util-linux')
  365. _make_uboot_package "$pkgname"
  366. }
  367. #package_uboot4extlinux-teres-i()
  368. #{
  369. # pkgdesc="$(printf "$def_desc_pfx %s\n" "OLIMEX Teres-A64")"
  370. #
  371. # # util-linux is needed for blkid for install-uboot4extlinux.sh
  372. # depends=("$pkgbase" 'util-linux')
  373. #
  374. # _make_uboot_package "$pkgname"
  375. #}
  376. package_uboot4extlinux-bananapi()
  377. {
  378. pkgdesc="$(printf "$def_desc_pfx %s\n" "Banana Pi")"
  379. # util-linux is needed for blkid for install-uboot4extlinux.sh
  380. depends=("$pkgbase" 'util-linux')
  381. _make_uboot_package "$pkgname"
  382. }
  383. package_uboot4extlinux-bananapro()
  384. {
  385. pkgdesc="$(printf "$def_desc_pfx %s\n" "Banana Pro")"
  386. # util-linux is needed for blkid for install-uboot4extlinux.sh
  387. depends=("${pkgbase}" 'util-linux')
  388. _make_uboot_package "$pkgname"
  389. }
  390. package_uboot4extlinux-chip()
  391. {
  392. pkgdesc="$(printf "$def_desc_pfx %s\n" "C.H.I.P")"
  393. # util-linux is needed for blkid for install-uboot4extlinux.sh
  394. depends=("$pkgbase" 'util-linux')
  395. _make_uboot_package "$pkgname"
  396. }
  397. package_uboot4extlinux-cubieboard()
  398. {
  399. pkgdesc="$(printf "$def_desc_pfx %s\n" "Cubieboard")"
  400. # util-linux is needed for blkid for install-uboot4extlinux.sh
  401. depends=("$pkgbase" 'util-linux')
  402. _make_uboot_package "$pkgname"
  403. }
  404. package_uboot4extlinux-cubieboard2()
  405. {
  406. pkgdesc="$(printf "$def_desc_pfx %s\n" "Cubieboard 2")"
  407. # util-linux is needed for blkid for install-uboot4extlinux.sh
  408. depends=("$pkgbase" 'util-linux')
  409. _make_uboot_package "$pkgname"
  410. }
  411. package_uboot4extlinux-cubietruck()
  412. {
  413. pkgdesc="$(printf "$def_desc_pfx %s\n" "Cubietruck")"
  414. # util-linux is needed for blkid for install-uboot4extlinux.sh
  415. depends=("$pkgbase" 'util-linux')
  416. _make_uboot_package "$pkgname"
  417. }
  418. package_uboot4extlinux-linksprite_pcduino()
  419. {
  420. pkgdesc="$(printf "$def_desc_pfx %s\n" "uboot4extlinux-pcduino")"
  421. replaces=('uboot4extlinux-pcduino')
  422. # util-linux is needed for blkid for install-uboot4extlinux.sh
  423. depends=("$pkgbase" 'util-linux')
  424. _make_uboot_package "$pkgname"
  425. }
  426. package_uboot4extlinux-linksprite_pcduino3()
  427. {
  428. pkgdesc="$(printf "$def_desc_pfx %s\n" "uboot4extlinux-pcduino3")"
  429. replaces=('uboot4extlinux-pcduino3')
  430. # util-linux is needed for blkid for install-uboot4extlinux.sh
  431. depends=("$pkgbase" 'util-linux')
  432. _make_uboot_package "$pkgname"
  433. }
  434. package_uboot4extlinux-linksprite_pcduino3_nano()
  435. {
  436. pkgdesc="$(printf "$def_desc_pfx %s\n" "uboot4extlinux-pcduino3-nano")"
  437. replaces=('uboot4extlinux-pcduino3-nano')
  438. # util-linux is needed for blkid for install-uboot4extlinux.sh
  439. depends=("$pkgbase" 'util-linux')
  440. _make_uboot_package "$pkgname"
  441. }
  442. package_uboot4extlinux-orangepi_2()
  443. {
  444. pkgdesc="$(printf "$def_desc_pfx %s\n" "Orange Pi 2")"
  445. # util-linux is needed for blkid for install-uboot4extlinux.sh
  446. depends=("$pkgbase" 'util-linux')
  447. _make_uboot_package "$pkgname"
  448. }
  449. package_uboot4extlinux-orangepi_one()
  450. {
  451. pkgdesc="$(printf "$def_desc_pfx %s\n" "Orange Pi One")"
  452. # util-linux is needed for blkid for install-uboot4extlinux.sh
  453. depends=("$pkgbase" 'util-linux')
  454. _make_uboot_package "$pkgname"
  455. }
  456. package_uboot4extlinux-orangepi_pc()
  457. {
  458. pkgdesc="$(printf "$def_desc_pfx %s\n" "Orange Pi PC")"
  459. # util-linux is needed for blkid for install-uboot4extlinux.sh
  460. depends=("$pkgbase" 'util-linux')
  461. _make_uboot_package "$pkgname"
  462. }
  463. package_uboot4extlinux-orangepi_plus()
  464. {
  465. pkgdesc="$(printf "$def_desc_pfx %s\n" "Orange Pi Plus")"
  466. # util-linux is needed for blkid for install-uboot4extlinux.sh
  467. depends=("$pkgbase" 'util-linux')
  468. _make_uboot_package "$pkgname"
  469. }