makedepends=(git)

description="Fast disk usage analyzer"
url="https://github.com/dundee/gdu"

packager="Great-OS Team"
maintainer="Great-OS Team"

name="gdu"
version="5.34.4"
release=1

goversion=1.25.5

source=(https://github.com/dundee/gdu/archive/refs/tags/v${version}.tar.gz)

prepare() {
  cd ${name}-${version}

  wget https://golang.org/dl/go$goversion.linux-amd64.tar.gz
  tar -C $SRC -xf go$goversion.linux-amd64.tar.gz

  export CGO_LDFLAGS="${LDFLAGS}"
  export CGO_CFLAGS="${CFLAGS}"
  export CGO_CPPFLAGS="${CPPFLAGS}"
  export CGO_CXXFLAGS="${CXXFLAGS}"
  export PATH=$SRC/go/bin:$PATH
  export GOPATH=$SRC/go/bin
  export GOCACHE=/tmp
  export GOFLAGS="-buildmode=pie -trimpath"
  export CGO_LDFLAGS_ALLOW="-Wl,-z,now"
}

build() {
  cd ${name}-${version}
  mkdir -p dist/
  
  export CGO_LDFLAGS="${LDFLAGS}"
  export CGO_CFLAGS="${CFLAGS}"
  export CGO_CPPFLAGS="${CPPFLAGS}"
  export CGO_CXXFLAGS="${CXXFLAGS}"
  export PATH=$SRC/go/bin:$PATH
  export GOPATH=$SRC/go/bin
  export GOCACHE=/tmp
  export GOFLAGS="-buildmode=pie -trimpath"
  export CGO_LDFLAGS_ALLOW="-Wl,-z,now"

  go build -o dist/gdu github.com/dundee/gdu/v5/cmd/gdu
  go build -v \
           -buildmode=pie \
           -mod=readonly \
           -modcacherw \
           -ldflags "-compressdwarf=false \
           -linkmode external \
           -extldflags '${LDFLAGS}'" \
           -o dist/gdu \
           github.com/dundee/gdu/v5/cmd/gdu
}

package() { 
  cd ${name}-${version}
  install -Dm755 dist/$name "${PKG}/usr/bin/$name"
  install -Dm644 gdu.1 "${PKG}/usr/share/man/man1/$name.1"
  install -D -m644 LICENSE.md "${PKG}/usr/share/licenses/${name}/LICENSE"
}
