1
0
Fork 0
mirror of https://gitlab.alpinelinux.org/alpine/aports.git synced 2025-07-24 11:45:18 +03:00
aports/community/raspberrypi-utils/APKBUILD
Michel Piquemal 43280337e8 community/raspberrypi-utils: upgrade to 0.20250416
separate gpiolib and piolib static libs into -dev  packages
2025-04-17 20:46:03 +00:00

250 lines
6.4 KiB
Text

# Contributor: macmpi <spam@ipik.org>
# Maintainer: macmpi <spam@ipik.org>
pkgname=raspberrypi-utils
pkgver=0.20250416
pkgrel=0
_commit="f92b9735ba3141103c73cd0bf9781644caa91e42"
pkgdesc="Collection of Raspberry Pi utilities (scripts and simple applications)"
url="https://github.com/raspberrypi/utils"
arch="armhf armv7 aarch64"
license="BSD-3-Clause"
makedepends="cmake samurai dtc-dev"
source="$pkgname-$_commit.tar.gz::https://github.com/raspberrypi/utils/archive/$_commit.tar.gz
do-not-build-piolib.patch.txt
"
builddir="$srcdir/utils-$_commit"
# does not have any tests
options="!check"
subpackages="
$pkgname-dtmerge
$pkgname-dtmerge-doc:dtmerge_doc:noarch
$pkgname-eeptools
$pkgname-kdtc::noarch
$pkgname-otpset::noarch
$pkgname-overlaycheck::noarch
$pkgname-ovmerge::noarch
$pkgname-pinctrl
$pkgname-pinctrl-bash-completion:pinctrl_bashcomp:noarch
$pkgname-pinctrl-dev:pinctrl_dev
$pkgname-raspinfo::noarch
$pkgname-vcgencmd
$pkgname-vcgencmd-bash-completion:vcgencmd_bashcomp:noarch
$pkgname-vcgencmd-doc:vcgencmd_doc:noarch
$pkgname-vclog
$pkgname-vcmailbox
$pkgname-vcmailbox-doc:vcmailbox_doc:noarch
"
# piolib is specific to Pi 5 (aarch64)
[ "$CARCH" = "aarch64" ] && subpackages="$subpackages $pkgname-piolib $pkgname-piolib-dev:piolib_dev"
prepare() {
default_prepare
# piolib is specific to Pi 5 (aarch64)
[ "$CARCH" = "aarch64" ] || patch -p1 < "$srcdir/do-not-build-piolib.patch.txt"
}
build() {
cmake -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_DATADIR=/usr/share \
-DCMAKE_BUILD_TYPE=MinSizeRel
cmake --build build
}
package() {
depends="
$pkgname-dtmerge=$pkgver-r$pkgrel
$pkgname-eeptools=$pkgver-r$pkgrel
$pkgname-kdtc=$pkgver-r$pkgrel
$pkgname-otpset=$pkgver-r$pkgrel
$pkgname-overlaycheck=$pkgver-r$pkgrel
$pkgname-ovmerge=$pkgver-r$pkgrel
$pkgname-pinctrl=$pkgver-r$pkgrel
$pkgname-raspinfo=$pkgver-r$pkgrel
$pkgname-vcgencmd=$pkgver-r$pkgrel
$pkgname-vclog=$pkgver-r$pkgrel
$pkgname-vcmailbox=$pkgver-r$pkgrel
"
# piolib is specific to Pi 5 (aarch64)
[ "$CARCH" = "aarch64" ] && depends="$depends $pkgname-piolib=$pkgver-r$pkgrel"
DESTDIR="$pkgdir" cmake --install build
}
dtmerge() {
pkgdesc="A tool for applying compiled DT overlays (*.dtbo) to base Device Tree files (*.dtb)."
depends=""
amove usr/bin/dt*
}
dtmerge_doc() {
pkgdesc="Documentation for $pkgname-dtmerge"
depends="$pkgname-dtmerge=$pkgver-r$pkgrel"
install_if="$pkgname-dtmerge=$pkgver-r$pkgrel docs"
gzip -n -9 "$pkgdir"/usr/share/man/man1/dt*.1
amove usr/share/man/man1/dt*.1.gz
}
eeptools() {
pkgdesc="Tools for creating and managing EEPROMs for HAT+ and HAT board."
depends=""
amove usr/bin/eep*
}
kdtc() {
pkgdesc="A tool for compiling overlays with #includes, etc., as used in the kernel tree."
depends="
dtc
perl
"
amove usr/bin/kdtc
}
otpset() {
pkgdesc="A short script to help with reading and setting the customer OTP bits."
depends="
python3
$pkgname-vcmailbox=$pkgver-r$pkgrel
"
amove usr/bin/otpset
}
overlaycheck() {
pkgdesc="A tool for validating the overlay files and README in a kernel source tree."
depends="
$pkgname-dtmerge=$pkgver-r$pkgrel
$pkgname-ovmerge=$pkgver-r$pkgrel
dtc
perl
"
amove usr/bin/overlaycheck
amove usr/bin/overlaycheck_exclusions.txt
}
ovmerge() {
pkgdesc="A tool for merging DT overlay source files (*-overlay.dts), flattening and sorting .dts files for easy comparison, displaying the include tree, etc."
depends="perl"
amove usr/bin/ovmerge
}
pinctrl() {
pkgdesc="A tool for displaying and modifying the GPIO and pin muxing state of a system, bypassing the kernel."
depends=""
amove usr/bin/pinctrl
}
pinctrl_bashcomp() {
depends="$pkgname-pinctrl=$pkgver-r$pkgrel"
pkgdesc="Bash completions for $pkgname-pinctrl"
install_if="$pkgname-pinctrl=$pkgver-r$pkgrel bash-completion"
amove usr/share/bash-completion/completions/pinctrl
}
pinctrl_dev() {
pkgdesc="gpiolib static library for Raspberry Pi devices (development files)"
depends=""
amove usr/include/gpiolib.h
amove usr/lib/libgpiolib.a
}
piolib() {
pkgdesc="Sample utilities leveraging Pi 5's PIO hardware."
depends=""
amove usr/bin/apitest \
usr/bin/dpi_csync \
usr/bin/pio* \
usr/bin/quadenc \
usr/bin/rp1sm
}
piolib_dev() {
pkgdesc="piolib static library for accessing Pi 5's PIO hardware (development files)"
depends=""
amove usr/include/piolib
amove usr/lib/libpio.a
}
raspinfo() {
pkgdesc="A short script to dump information about the Pi. Intended for the submission of bug reports."
depends="
$pkgname-vclog=$pkgver-r$pkgrel
$pkgname-pinctrl=$pkgver-r$pkgrel
$pkgname-vcgencmd=$pkgver-r$pkgrel
bash
sudo-virt
usbutils
"
# missing https://github.com/raspberrypi/rpi-eeprom
amove usr/bin/raspinfo
}
vcgencmd() {
pkgdesc="A tool used to output information from the VideoCore GPU on the Raspberry Pi"
depends=""
amove usr/bin/vcgencmd
}
vcgencmd_bashcomp() {
depends="$pkgname-vcgencmd=$pkgver-r$pkgrel"
pkgdesc="Bash completions for $pkgname-vcgencmd"
install_if="$pkgname-vcgencmd=$pkgver-r$pkgrel bash-completion"
amove usr/share/bash-completion/completions/vcgencmd
}
vcgencmd_doc() {
pkgdesc="Documentation for $pkgname-vcgencmd"
depends="$pkgname-vcgencmd=$pkgver-r$pkgrel"
install_if="$pkgname-vcgencmd=$pkgver-r$pkgrel docs"
gzip -n -9 "$pkgdir"/usr/share/man/man1/vcgencmd.1
amove usr/share/man/man1/vcgencmd.1.gz
}
vclog() {
pkgdesc="A tool to get VideoCore 'assert' or 'msg' logs with optional -f to wait for new logs to arrive."
depends=""
amove usr/bin/vclog
}
vcmailbox() {
pkgdesc="Utility for driving mailbox interface to VideoCore GPU on the Raspberry Pi"
depends=""
amove usr/bin/vcmailbox
}
vcmailbox_doc() {
pkgdesc="Documentation for $pkgname-vcmailbox"
depends="$pkgname-vcmailbox=$pkgver-r$pkgrel"
install_if="$pkgname-vcmailbox=$pkgver-r$pkgrel docs"
gzip -n -9 "$pkgdir"/usr/share/man/man1/vcmailbox.1
amove usr/share/man/man1/vcmailbox.1.gz
gzip -n -9 "$pkgdir"/usr/share/man/man7/vcmailbox.7
amove usr/share/man/man7/vcmailbox.7.gz
gzip -n -9 "$pkgdir"/usr/share/man/man7/raspi*.7
amove usr/share/man/man7/raspi*.7.gz
}
sha512sums="
8196e82ebd0bccadbc5d0c929d8421a55ea4d2b97cc764cc220aab169470b7d39dd8283c1e4332d9ab1c9ae6a7b0857bda171a331d5bc323d0b6f4027168fba3 raspberrypi-utils-f92b9735ba3141103c73cd0bf9781644caa91e42.tar.gz
33f9b8a140c7dd966abcbc019c3880efb16a4f7a91b6b40c624c5ce14dbf983aacb555919c5d520b56ea5e98e4026794116c2669549aaa9a117ca804bdcd4cb6 do-not-build-piolib.patch.txt
"