# Maintainer: Martell Malone <martellmalone@gmail.com>

pkgname=inetutils
pkgver=2.5
pkgrel=2
pkgdesc="A collection of common network programs."
arch=('i686' 'x86_64')
url="https://www.gnu.org/software/inetutils/"
license=('spdx:GPL-3.0-or-later')
depends=('gcc-libs' 'libintl' 'libreadline' 'ncurses')
makedepends=('gettext-devel' 'libreadline-devel' 'ncurses-devel' 'autotools' 'gcc' 'tftp-hpa' 'help2man')
options=('!emptydirs')
source=(https://ftp.gnu.org/gnu/inetutils/${pkgname}-${pkgver}.tar.xz
        inetutils-2.5-1.src.patch
        icmp6.h
        osockaddr.h
        talkd.h
        001-missing-include.patch)
sha256sums=('87697d60a31e10b5cb86a9f0651e1ec7bee98320d048c0739431aac3d5764fb6'
            'acfdafc29876e5f5f88aef09f2cde18c4d31fc48363e6564f5e2fe4d68cbbc1e'
            'efad23dea555319c503c0b6ed7ec6b46c8faa48c138c763749686fc66e98c4b8'
            'e19596afff3b2ed163cf1a5c8a8d034208f9f996ace1ac76fd877a2d16aa448d'
            'b9e2401b0756c9bebcb0b0835d3c8f218198a121013f4990637ed1b9af0c72fd'
            '29c3b108acf09e6d1e4671c3c37e370a22cf9ea14347005f711b0a9559764f5c')

prepare() {
  cd ${srcdir}/${pkgname}-${pkgver}

  # from cygwin
  mkdir -p headers/protocols
  cp ${srcdir}/osockaddr.h headers/protocols/osockaddr.h
  cp ${srcdir}/talkd.h     headers/protocols/talkd.h
  mkdir -p headers/netinet
  cp ${srcdir}/icmp6.h     headers/netinet/icmp6.h
  patch -p2 -i ${srcdir}/inetutils-2.5-1.src.patch

  patch -p1 -i ${srcdir}/001-missing-include.patch

  autoreconf -fiv
}

build() {
  cd ${srcdir}/${pkgname}-${pkgver}

  mkdir -p "${srcdir}/build-${MSYSTEM}" && cd "${srcdir}/build-${MSYSTEM}"

  # copied from cygwin
  export ac_cv_func_mmap_fixed_mapped=no

  # the cygwin patch adds talkd.h, but not in a way configure can detect it
  # so force it here
  export ac_cv_header_protocols_talkd_h=yes

  # this isn't set in ./configure but needed to get a valid Makefile -- don't ask me...
  export EXEEXT=.exe

  local CYGWIN_CHOST="${CHOST/-msys/-cygwin}"
  ../${pkgbase}-${pkgver}/configure --prefix=/usr \
    --build=${CYGWIN_CHOST} \
    --libexec=/usr/bin \
    --localstatedir=/var \
    --sysconfdir=/etc \
    --infodir=/usr/share/info \
    --mandir=/usr/share/man \
    --datarootdir=/usr/share \
    --docdir=/usr/share/doc/${pkgname} \
    --with-wrap \
    --without-pam \
    --enable-ftp --disable-ftpd \
    --enable-telnet --disable-telnetd \
    --enable-talk --disable-talkd \
    --enable-rlogin --disable-rlogind \
    --enable-rsh --disable-rshd \
    --enable-rcp --disable-hostname \
    --disable-rexec --disable-rexecd \
    --disable-tftp --disable-tftpd \
    --disable-ping --disable-ping6 \
    --disable-logger --disable-syslogd \
    --disable-inetd --disable-whois \
    --disable-uucpd --disable-ifconfig \
    --enable-dnsdomainname \
    --disable-traceroute

  make
}

package() {
  cd "${srcdir}/build-${MSYSTEM}"

  make DESTDIR="${pkgdir}" install
}
