mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-08 22:45:43 +00:00
74 lines
3 KiB
Bash
74 lines
3 KiB
Bash
# Maintainer: graysky <therealgraysky AT protonmail DOT com>
|
|
# Maintainer: Oleg Rakhmanov <oleg [at] archlinuxarm [dot] org>
|
|
# Maintainer: Kevin Mihelich <kevin@archlinuxarm.org>
|
|
|
|
pkgname=raspberrypi-firmware
|
|
pkgver=20230914
|
|
pkgrel=1
|
|
_commitfirmware=b49983637106e5fb33e2ae60d8c15a53187541e4
|
|
_commituserland=44a3953fd13d5f0b9b0cd120b904aa7db370244e
|
|
pkgdesc="Firmware tools, libraries, and headers for Raspberry Pi"
|
|
arch=('armv7h' 'aarch64')
|
|
url="https://github.com/raspberrypi/firmware"
|
|
license=('custom')
|
|
makedepends_aarch64=('cmake')
|
|
replaces=('raspberrypi-firmware-tools')
|
|
provides=('raspberrypi-firmware-tools')
|
|
options=(!strip)
|
|
source=('00-raspberrypi-firmware.conf'
|
|
'10-raspberrypi-firmware.rules'
|
|
'raspberrypi-firmware.sh')
|
|
source_armv7h=("firmware-$pkgver-$pkgrel-${_commitfirmware:0:10}.tar.gz::https://github.com/raspberrypi/firmware/archive/$_commitfirmware.tar.gz")
|
|
source_aarch64=("userland-$pkgver-$pkgrel-${_commituserland:0:10}.tar.gz::https://github.com/raspberrypi/userland/archive/$_commituserland.tar.gz"
|
|
"https://raw.githubusercontent.com/raspberrypi/firmware/master/opt/vc/LICENCE")
|
|
md5sums=('72e0d5818fc513ece1b964f25f7e7882'
|
|
'4fd5a77d254c62a259edf8ff5194db6f'
|
|
'60919cb17f31b4698b6650bbb46f18ed')
|
|
md5sums_armv7h=('eb52eeb00efdbba7ab4f04c36180b700')
|
|
md5sums_aarch64=('239130e772546bb2b43ecc2d69d7d2c0'
|
|
'86e53f5f5909ee66900418028de11780')
|
|
|
|
build() {
|
|
if [[ "${CARCH}" = 'aarch64' ]]; then
|
|
cd "${srcdir}/userland-${_commituserland}"
|
|
cmake -DCMAKE_BUILD_TYPE=Release -DARM64=ON
|
|
make
|
|
fi
|
|
}
|
|
|
|
package() {
|
|
# setup permissions on video group for /opt/vc/bin/vcgencmd
|
|
install -Dm0644 "$srcdir/10-raspberrypi-firmware.rules" "$pkgdir/usr/lib/udev/rules.d/10-raspberrypi-firmware.rules"
|
|
|
|
# setup PATH to hit /opt/vc/bin/
|
|
install -Dt "$pkgdir/etc/profile.d" -m644 raspberrypi-firmware.sh
|
|
|
|
mkdir -p "${pkgdir}"/opt/vc
|
|
|
|
if [[ "${CARCH}" = 'aarch64' ]]; then
|
|
cd ${srcdir}/userland-${_commituserland}
|
|
make install DESTDIR="${pkgdir}"
|
|
install -m644 ../LICENCE "${pkgdir}"/opt/vc/LICENCE
|
|
rm -rf "${pkgdir}"/opt/vc/src
|
|
|
|
# Remove executable flag on shared objects
|
|
find "${pkgdir}" -type f -name '*.so' -print0 | xargs -0 chmod -x
|
|
|
|
# Create lib links
|
|
mkdir -p "${pkgdir}"/etc/ld.so.conf.d/
|
|
install -m644 ../00-raspberrypi-firmware.conf "${pkgdir}"/etc/ld.so.conf.d/00-raspberrypi-firmware.conf
|
|
else
|
|
cp -R "${srcdir}"/firmware-${_commitfirmware}/hardfp/opt/vc/{bin,include,lib,LICENCE} "${pkgdir}"/opt/vc
|
|
cp -R "${srcdir}"/firmware-${_commitfirmware}/opt/vc/man "${pkgdir}"/opt/vc
|
|
|
|
# Create lib links
|
|
mkdir -p "${pkgdir}"/etc/ld.so.conf.d/
|
|
cp "${srcdir}/00-raspberrypi-firmware.conf" "${pkgdir}"/etc/ld.so.conf.d/
|
|
fi
|
|
|
|
# Install man pages to /usr/share/man/ not to /opt/vc/man/
|
|
mkdir -p "${pkgdir}"/usr/share/man/man{1,7}
|
|
mv "${pkgdir}"/opt/vc/man/man1/*.1 "${pkgdir}"/usr/share/man/man1
|
|
mv "${pkgdir}"/opt/vc/man/man7/*.7 "${pkgdir}"/usr/share/man/man7
|
|
rm -rf "${pkgdir}"/opt/vc/man
|
|
}
|