recipe 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. # Build recipe for net-tools.
  2. #
  3. # Copyright (c) 2018-2019, 2021 Matias Fonzo, <selk@dragora.org>.
  4. #
  5. # Licensed under the Apache License, Version 2.0 (the "License");
  6. # you may not use this file except in compliance with the License.
  7. # You may obtain a copy of the License at
  8. #
  9. # http://www.apache.org/licenses/LICENSE-2.0
  10. #
  11. # Unless required by applicable law or agreed to in writing, software
  12. # distributed under the License is distributed on an "AS IS" BASIS,
  13. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  14. # See the License for the specific language governing permissions and
  15. # limitations under the License.
  16. # Exit immediately on any error
  17. set -e
  18. program=net-tools
  19. version=2.10
  20. release=1
  21. # Define a category for the output of the package name
  22. pkgcategory=networking
  23. tarname=${program}-${version}.tar.xz
  24. # Remote source(s)
  25. fetch=https://downloads.sourceforge.net/project/net-tools/$tarname
  26. description="
  27. Collection of basic networking programs.
  28. A collection of programs that form the base set of the NET-3 networking
  29. distribution for the GNU/Linux operating system.
  30. This package includes the important tools for controlling the network
  31. subsystem of the Linux kernel. This includes arp, netstat, rarp and
  32. route. Additionally, this package contains utilities relating to
  33. particular network hardware types (plipconfig, slattach, mii-tool)
  34. and advanced aspects of IP configuration (iptunnel, ipmaddr).
  35. "
  36. homepage=https://net-tools.sourceforge.net/
  37. license=GPLv2+
  38. # Source documentation
  39. docs="COPYING README THANKS TODO"
  40. docsdir="${docdir}/${program}-${version}"
  41. # The build system does not support parallel jobs
  42. jobs=1
  43. build()
  44. {
  45. unpack "${tardir}/$tarname"
  46. cd "$srcdir"
  47. # Set sane permissions
  48. chmod -R u+w,go-w,a+rX-s .
  49. sed -i "s#-O2 -g#${QICFLAGS}#" Makefile
  50. yes "" | make config
  51. make -j${jobs} V=1 \
  52. BINDIR=/usr/bin SBINDIR=/usr/sbin \
  53. DESTDIR="$destdir" install
  54. # Delete included programs coming from the inetutils package
  55. for program in hostname dnsdomainname ifconfig \
  56. domainname nisdomainname ypdomainname
  57. do
  58. rm "${destdir}/usr/bin/${program}"
  59. rm "${destdir}/${mandir}/man1/${program}.1" \
  60. "${destdir}/${mandir}/man8/${program}.8" || true;
  61. done
  62. unset -v program
  63. strip --strip-unneeded "${destdir}"/usr/bin/* \
  64. "${destdir}"/usr/sbin/* 2> /dev/null || true;
  65. rmdir "${destdir}/${mandir}/man1" || true;
  66. # Compress and link man pages (if needed)
  67. if test -d "${destdir}/$mandir"
  68. then
  69. (
  70. cd "${destdir}/$mandir"
  71. find . -type f -exec lzip -9 {} +
  72. find . -type l | while read -r file
  73. do
  74. ln -sf "$(readlink -- "$file").lz" "${file}.lz"
  75. rm -- "$file"
  76. done
  77. )
  78. fi
  79. # Copy documentation
  80. mkdir -p "${destdir}/$docsdir"
  81. cp -p $docs "${destdir}/$docsdir"
  82. }