APKBUILD (3192B)
- # Maintainer: Haelwenn (lanodan) Monnier <contact+alpine@hacktivis.me>
- pkgname=utils-std-static
- tarname=utils-std
- pkgver=0.0.5
- 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/$tarname-$pkgver.tar.gz
- "
- builddir="$srcdir/$tarname-$pkgver"
- build() {
- PREFIX=/usr CRAM=true LDSTATIC='-static-pie' ./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="
- bb157dc542cac7a97bfd97dab93de13c40687846d5069d6cbd24211a2b265e08741cd6c1d16014247e6b75741f70ee00e2c4d3bc11b6a0b0a40f9c304de25f66 utils-std-0.0.5.tar.gz
- "