Name gdbm
Description GNU database library
Version 1.26-2
Package Base gdbm
Homepage https://www.gnu.org/software/gdbm/gdbm.html
Maintainers ['David Runge <dvzrv@archlinux.org>']
Contributors ['Allan McRae <allan@archlinux.org>', 'Bartłomiej Piotrowski <bpiotrowski@archlinux.org>', 'Stéphane Gaudreault <stephane@archlinux.org>', 'judd <jvinet@zeroflux.org>']
Distro-repo https://gitlab.archlinux.org/archlinux/packaging/packages/gdbm
Sources ['git+https://git.gnu.org.ua/gdbm.git?signed#tag=v1.26', 'https://ftp.gnu.org/gnu/gdbm/gdbm-1.26.tar.gz', 'https://ftp.gnu.org/gnu/gdbm/gdbm-1.26.tar.gz.sig']
Dependencies ['glibc', 'libreadline.so', 'readline', 'sh']
Optional-Dependencies []
Build-Dependencies ['git', 'readline']
Provides ['libgdbm_compat.so', 'libgdbm.so']
Builddate 08-01-2026 10:33:10
Architecture x86_64
Distro-Version
Licenses ['GPL-3.0-or-later']
Hash 7bb8768fc7f617c580ae4c7902aed5413984a8374915da42beeecbb085c2a29e
# Maintainer: David Runge <dvzrv@archlinux.org>
# Contributor: Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
# Contributor: Stéphane Gaudreault <stephane@archlinux.org>
# Contributor: Allan McRae <allan@archlinux.org>
# Contributor: judd <jvinet@zeroflux.org>

pkgname=gdbm
pkgver=1.26
# latest, versioned translation from https://translationproject.org/domain/gdbm.html
_translation_version=1.26
pkgrel=2
pkgdesc="GNU database library"
arch=(x86_64)
url="https://www.gnu.org/software/gdbm/gdbm.html"
license=(GPL-3.0-or-later)
depends=(
  glibc
  sh
)
makedepends=(
  git
  readline
)
provides=(
  libgdbm_compat.so
  libgdbm.so
)
source=(
  git+https://git.gnu.org.ua/gdbm.git?signed#tag=v$pkgver
  https://ftp.gnu.org/gnu/gdbm/gdbm-$pkgver.tar.gz{,.sig}
)
sha512sums=('7a964fae6f8383196e6b40bccad952723ba8c601c7d50153b4011db5bbb908202a6caf61055a3cceaab8dd71c4232420373a9d864a85fd8708097f4e1ce88c8a'
            '44aafe254f0950a8f5215d8f1337674f07b19f2a375f6eb19a7e39690028c80c3774b705c2b76b470ae74042b21f2ca77d02f6f57aa2ee50296db801220a3352'
            'SKIP')
b2sums=('fe795dd537d5904ab6762c85e6dd750278dd039e1fc189563c1111e2ccbaa3a43f326f8ac01392480a332ad06f420e19b3a7fe991354380e34e34807a2d3c176'
        '9423ea16ee3e8f1ce57ea32371f49919e2a3819a206a61ce927676a08a71a6a495d3949714bff7be789dfce75bf0ab0ac76f07ec673b71a84ae32bd8cd483781'
        'SKIP')
validpgpkeys=(
  4BE4E62655488EB92ABB468F79FFD94BFCE230B1  # Sergey Poznyakoff <gray@gnu.org>
)

prepare() {
  cd $pkgname
  autoreconf -fiv
}

build() {
  local configure_options=(
    --prefix=/usr
    --enable-libgdbm-compat
  )

  cd $pkgname
  ./configure "${configure_options[@]}"
  make

  # Generate gdbm mo files from dist tarball
  cd "$srcdir/$pkgname-$pkgver/po"
  for po in *.po; do
    msgfmt $po -o "${po%.po}.mo"
  done
}

check() {
  make check -C $pkgname
}

package() {
  depends+=(
    readline libreadline.so
  )

  make DESTDIR="$pkgdir" install -C $pkgname
  install -vDm 644 $pkgname/{NOTE-WARNING,AUTHORS,NEWS,README} -t "$pkgdir/usr/share/doc/$pkgname"

  # Install gdbm mo files from dist tarball
  cd "$srcdir/$pkgname-$pkgver/po"
  for mo in *.mo; do
    install -Dm 644 $mo "$pkgdir/usr/share/locale/${mo%.mo}/LC_MESSAGES/$pkgname.mo"
  done
}