pmaports/device/main/u-boot-pinephone/APKBUILD
Arnav Singh a12bbf1057
main/u-boot-pinephone: fix build to work with crust from aports (MR 4785)
aports' community/crust package generates a crust-pinephone subpackage
that is equivalent to pmaports' current main/crust package, that is,
the crust-pinephone subpackage contains the SCP firmware binary needed for
the PinePhone. The aports crust package itself only contains a LICENSE file.
Furthermore, aports' package updated to v0.6 recently, so apk would pick it
over pmaports' v0.5 package, which would cause the build to fail because of
the missing SCP firmware binary.

This change fixes the build of u-boot-pinephone by switching the dependency to
the aports crust-pinephone package.
2024-02-06 08:44:31 -08:00

68 lines
2.7 KiB
Text

# Maintainer: Arnav Singh <me@arnavion.dev>
# Co-Maintainer: Jan Jasper de Kroon <jajadekroon@gmail.com>
# U-boot with patches to make the PinePhone boot faster and have control over the ddr clock speed
pkgname=u-boot-pinephone
pkgver=2023.01
pkgrel=3
pkgdesc="U-Boot bootloader for the PINE64 PinePhone"
url="https://source.denx.de/u-boot"
arch="aarch64"
license="GPL-2.0-or-later OFL-1.1 BSD-2-Clause BSD-3-Clause eCos-2.0 IBM-pibs
ISC LGPL-2.0-only LGPL-2.1-only X11"
depends="linux-postmarketos-allwinner>=5.12"
makedepends="$depends_dev
arm-trusted-firmware
bc
bison
crust-pinephone
dtc
flex
openssl-dev
py3-setuptools
python3-dev
swig
"
options="!check"
source="https://source.denx.de/u-boot/u-boot/-/archive/v$pkgver/u-boot-v$pkgver.tar.gz
update-u-boot
0001-common-expose-DRAM-clock-speed.patch
0002-disable-bootdelay.patch
"
builddir="$srcdir/u-boot-v$pkgver"
_frequencies='528 552 624'
build() {
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
export BL31="/usr/share/arm-trusted-firmware/sun50i_a64/bl31.bin"
export SCP="/usr/share/crust/pinephone/scp.bin"
export BUILD_DIR="$builddir"/build
for freq in $_frequencies; do
mkdir -p "$BUILD_DIR-$freq"
sed -rie "s/^(CONFIG_DRAM_CLK=).*$/CONFIG_DRAM_CLK=$freq/" configs/pinephone_defconfig
cat configs/pinephone_defconfig | grep CONFIG_DRAM_CLK
make O="$BUILD_DIR-$freq" HOSTCC=gcc ARCH=arm pinephone_defconfig
make O="$BUILD_DIR-$freq" HOSTCC=gcc ARCH=arm all
sha512sum -b "$BUILD_DIR-$freq/u-boot-sunxi-with-spl.bin" > "$BUILD_DIR-$freq/u-boot-sunxi-with-spl.bin.sha512"
done
}
package() {
for freq in $_frequencies; do
install -D -m644 "build-$freq/u-boot-sunxi-with-spl.bin" \
"$pkgdir/usr/share/u-boot/pine64-pinephone/u-boot-sunxi-with-spl-$freq.bin"
install -D -m644 "build-$freq/u-boot-sunxi-with-spl.bin.sha512" \
"$pkgdir/usr/share/u-boot/pine64-pinephone/u-boot-sunxi-with-spl-$freq.bin.sha512"
done
install -D -m 755 "$srcdir"/update-u-boot "$pkgdir"/usr/sbin/update-u-boot
}
sha512sums="
c25aae1b0d2f677d295587c6d318f23d52bc3a79e968bed9093645943a9840c56b1f6f44e5649d236e76e3dc85f0473c1da4a5205c02dcf437bca820acaf6fb8 u-boot-v2023.01.tar.gz
8dc0a8847ed26d91d3acc9b7b9dd300f95a68049207b09c3cfca1ec485f6f976aa65e0d101a4b46ecc4e85e943cbdec35e81ab0da07b1d5d0b68b4b10858b44b update-u-boot
0a05291f5d544854b6e27c7c3290878c55382c50e0374c880d457e7c21425eaec23fd67047fd7e629dba3fa060aa041dec5880e7edc9e52dea897fb93af5d2aa 0001-common-expose-DRAM-clock-speed.patch
9b9a5bd2cb5c04715a5bb2d34bfc06e63817dba7ec40fa2b09000a0827590623e85ed5877d6b6bb39f2bb917e5e9d8e1379e3df9128e3304be06abc487c68df2 0002-disable-bootdelay.patch
"