APKBUILD (3610B)
- # Maintainer: Haelwenn (lanodan) Monnier <contact+alpine@hacktivis.me>
- pkgname=utils-std
- pkgver=0.0.3
- pkgrel=0
- pkgdesc="Collection of commonly available Unix tools"
- url="https://hacktivis.me/projects/utils-std"
- arch="all"
- license="MPL-2.0 0BSD BSD-2-Clause BSD-3-Clause CC0-1.0 GFDL-1.1-only WTFPL"
- makedepends="cmd:m4 cmd:yacc"
- checkdepends=""
- subpackages="$pkgname-dbg $pkgname-doc $pkgname-strings $pkgname-strings-doc:strings_doc $pkgname-getconf $pkgname-getconf-doc:getconf_doc"
- source="
- https://distfiles.hacktivis.me/releases/utils-std/$pkgname-$pkgver.tar.gz
- utils-std-0.0.3-getconf_terminating_null_byte.patch
- utils-std-0.0.3-getconf_use_correct_structs.patch
- "
- builddir="$srcdir/$pkgname-$pkgver"
- build() {
- PREFIX=/usr CRAM=true ./configure
- make
- }
- check() {
- # Workaround busybox rm(1) lacking -d
- mkdir -p busybox-overrides/
- ln -s ../cmd/rm busybox-overrides/rm
- # t gn, t gnr: missing names for group IDs in my Alpine install
- # t G: Busybox id(1) seems to sort numeric output
- sed -i \
- -e 's;^t gn ;skip gn ;' \
- -e 's;^t gnr ;skip gnr ;' \
- -e 's;^t G ;skip G ;' \
- test-cmd/id.sh
- PATH=$PWD/busybox-overrides/:$PATH make check
- }
- package() {
- make DESTDIR="$pkgdir" install
- # binaries that busybox puts in /bin (taken from coreutils/APKBUILD)
- local busybox_bin="base64 cat chgrp chmod chown cp date dd df echo false ln ls
- mkdir mknod mktemp mv nice printenv pwd rm rmdir sleep stat stty sync touch true uname"
- mkdir -p "$pkgdir"/bin/
- for i in $busybox_bin; do
- test -f cmd/$i || continue
- ln -s ../usr/bin/$i "$pkgdir"/bin/$i
- done
- # resolve conflict with binutils for cmd:strings
- rm "$pkgdir"/usr/bin/strings "$pkgdir"/usr/share/man/man1/strings.1
- # ERROR: utils-std-doc-0_git20240915-r0: trying to overwrite usr/share/man/man1/renice.1.gz owned by util-linux-doc-2.40.1-r1.
- # ERROR: utils-std-doc-0_git20240915-r0: trying to overwrite usr/share/man/man1/time.1.gz owned by man-pages-6.8-r0.
- rm "$pkgdir"/usr/share/man/man1/renice.1 "$pkgdir"/usr/share/man/man1/time.1
- # resolve conflict with musl-utils for cmd:getconf
- rm "$pkgdir"/usr/bin/getconf "$pkgdir"/usr/share/man/man1/getconf.1
- }
- strings() {
- mkdir -p "$subpkgdir"/usr/bin/
- cp -p "$builddir"/cmd/strings "$subpkgdir"/usr/bin/
- }
- strings_doc() {
- local gzip=$(command -v pigz || echo gzip)
- depends="$depends_doc"
- install_if="docs $pkgname-strings=$pkgver-r$pkgrel"
- mkdir -p "$subpkgdir"/usr/share/man/man1/
- cp -p "$builddir"/cmd/strings.1 "$subpkgdir"/usr/share/man/man1/
- # ERROR: utils-std-strings-doc*: Found uncompressed man pages
- gzip -n -9 "$subpkgdir"/usr/share/man/man1/strings.1
- }
- getconf() {
- mkdir -p "$subpkgdir"/usr/bin/
- cp -p "$builddir"/cmd/getconf "$subpkgdir"/usr/bin/
- }
- getconf_doc() {
- local gzip=$(command -v pigz || echo gzip)
- depends="$depends_doc"
- install_if="docs $pkgname-getconf=$pkgver-r$pkgrel"
- mkdir -p "$subpkgdir"/usr/share/man/man1/
- cp -p "$builddir"/cmd/getconf.1 "$subpkgdir"/usr/share/man/man1/
- # ERROR: utils-std-strings-doc*: Found uncompressed man pages
- gzip -n -9 "$subpkgdir"/usr/share/man/man1/getconf.1
- }
- sha512sums="
- a77a3532cec2d04b667906cc25a20cf9fef0eae92e0ab6cc292c0de37158c5e24cc7a0f0ff0b4a0fce348e5b2e4780d2d5d538fa4802930459f1fe7fc0945878 utils-std-0.0.3.tar.gz
- 436ba03025e16fd870fc7c9da4933e76fc2d786a4c8350743d3e2e6f08cf24356994380d00ff287822b7365b26702c98ed22ce379986116257c139fda5f1c18d utils-std-0.0.3-getconf_terminating_null_byte.patch
- ef4901fd05acb9be08152c53dd6cd6f33460b597968638519d198729c13e2c02859b879ec9ef322456a39cd3e460588ed97c435e39286d418327c3278d09a8fd utils-std-0.0.3-getconf_use_correct_structs.patch
- "