logo

alpine-overlay

git clone https://anongit.hacktivis.me/git/alpine-overlay.git/

APKBUILD (3194B)


  1. # Maintainer: Haelwenn (lanodan) Monnier <contact+alpine@hacktivis.me>
  2. pkgname=utils-std-static
  3. tarname=utils-std
  4. pkgver=0.0.12
  5. pkgrel=0
  6. pkgdesc="Collection of commonly available Unix tools"
  7. url="https://hacktivis.me/projects/utils-std"
  8. arch="all"
  9. license="MPL-2.0 0BSD BSD-2-Clause BSD-3-Clause CC0-1.0 GFDL-1.1-only WTFPL"
  10. makedepends="cmd:m4 cmd:yacc"
  11. checkdepends=""
  12. subpackages="$pkgname-dbg $pkgname-doc $pkgname-strings $pkgname-strings-doc:strings_doc $pkgname-getconf $pkgname-getconf-doc:getconf_doc"
  13. source="
  14. https://distfiles.hacktivis.me/releases/utils-std/$tarname-$pkgver.tar.gz
  15. "
  16. builddir="$srcdir/$tarname-$pkgver"
  17. build() {
  18. PREFIX=/usr CRAM=true LDSTATIC='-static-pie' ./configure
  19. make
  20. }
  21. check() {
  22. # Workaround busybox rm(1) lacking -d
  23. mkdir -p busybox-overrides/
  24. ln -s ../cmd/rm busybox-overrides/rm
  25. # t gn, t gnr: missing names for group IDs in my Alpine install
  26. # t G: Busybox id(1) seems to sort numeric output
  27. sed -i \
  28. -e 's;^t gn ;skip gn ;' \
  29. -e 's;^t gnr ;skip gnr ;' \
  30. -e 's;^t G ;skip G ;' \
  31. test-cmd/id.sh
  32. PATH=$PWD/busybox-overrides/:$PATH make check
  33. }
  34. package() {
  35. make DESTDIR="$pkgdir" install
  36. # binaries that busybox puts in /bin (taken from coreutils/APKBUILD)
  37. local busybox_bin="base64 cat chgrp chmod chown cp date dd df echo false ln ls
  38. mkdir mknod mktemp mv nice printenv pwd rm rmdir sleep stat stty sync touch true uname"
  39. mkdir -p "$pkgdir"/bin/
  40. for i in $busybox_bin; do
  41. test -f cmd/$i || continue
  42. ln -s ../usr/bin/$i "$pkgdir"/bin/$i
  43. done
  44. # resolve conflict with binutils for cmd:strings
  45. rm "$pkgdir"/usr/bin/strings "$pkgdir"/usr/share/man/man1/strings.1
  46. # 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.
  47. # ERROR: utils-std-doc-0_git20240915-r0: trying to overwrite usr/share/man/man1/time.1.gz owned by man-pages-6.8-r0.
  48. rm "$pkgdir"/usr/share/man/man1/renice.1 "$pkgdir"/usr/share/man/man1/time.1
  49. # resolve conflict with musl-utils for cmd:getconf
  50. rm "$pkgdir"/usr/bin/getconf "$pkgdir"/usr/share/man/man1/getconf.1
  51. }
  52. strings() {
  53. mkdir -p "$subpkgdir"/usr/bin/
  54. cp -p "$builddir"/cmd/strings "$subpkgdir"/usr/bin/
  55. }
  56. strings_doc() {
  57. local gzip=$(command -v pigz || echo gzip)
  58. depends="$depends_doc"
  59. install_if="docs $pkgname-strings=$pkgver-r$pkgrel"
  60. mkdir -p "$subpkgdir"/usr/share/man/man1/
  61. cp -p "$builddir"/cmd/strings.1 "$subpkgdir"/usr/share/man/man1/
  62. # ERROR: utils-std-strings-doc*: Found uncompressed man pages
  63. gzip -n -9 "$subpkgdir"/usr/share/man/man1/strings.1
  64. }
  65. getconf() {
  66. mkdir -p "$subpkgdir"/usr/bin/
  67. cp -p "$builddir"/cmd/getconf "$subpkgdir"/usr/bin/
  68. }
  69. getconf_doc() {
  70. local gzip=$(command -v pigz || echo gzip)
  71. depends="$depends_doc"
  72. install_if="docs $pkgname-getconf=$pkgver-r$pkgrel"
  73. mkdir -p "$subpkgdir"/usr/share/man/man1/
  74. cp -p "$builddir"/cmd/getconf.1 "$subpkgdir"/usr/share/man/man1/
  75. # ERROR: utils-std-strings-doc*: Found uncompressed man pages
  76. gzip -n -9 "$subpkgdir"/usr/share/man/man1/getconf.1
  77. }
  78. sha512sums="
  79. 4dc85f4473bb40c86c0d78addea06c423c899722a06d232777a3c4c743bb7254cae22479d56d3095c26ce025374d5db72ef855a21334c2e32143b275727d6d8b utils-std-0.0.12.tar.gz
  80. "