Name libedataserverui4
Description Unified contacts, tasks and calendar backend - GTK 4 UI library
Version 3.58.3-1
Package Base evolution-data-server
Homepage https://gitlab.gnome.org/GNOME/evolution/-/wikis/home
Maintainers ['Fabian Bornschein <fabiscafe@archlinux.org>', 'Jan Alexander Steffens (heftig) <heftig@archlinux.org>']
Contributors ['Jan de Groot <jgc@archlinux.org>']
Distro-repo https://gitlab.archlinux.org/archlinux/packaging/packages/evolution-data-server
Sources ['git+https://gitlab.gnome.org/GNOME/evolution-data-server.git#tag=3.58.3']
Dependencies ['evolution-data-server', 'glib2', 'glibc', 'gtk4', 'libical', 'libsoup3', 'nspr', 'nss', 'pango', 'webkitgtk-6.0']
Optional-Dependencies []
Build-Dependencies ['boost', 'cmake', 'gi-docgen', 'git', 'glib2-devel', 'gobject-introspection', 'gperf', 'gtk-doc', 'gtk4', 'ninja', 'postfix', 'python', 'vala', 'webkitgtk-6.0']
Provides ['libedataserverui4-1.0.so']
Builddate 06-02-2026 03:41:19
Architecture x86_64
Distro-Version
Licenses ['LGPL-2.0-only AND LGPL-2.1-or-later']
Hash ffd420b46ce8ac2d95578be9e12258520cddc9b046878fc662677a744a30a315
# Maintainer: Fabian Bornschein <fabiscafe@archlinux.org>
# Maintainer: Jan Alexander Steffens (heftig) <heftig@archlinux.org>
# Contributor: Jan de Groot <jgc@archlinux.org>

pkgbase=evolution-data-server
pkgname=(
  evolution-data-server
  libedataserverui4
  evolution-data-server-docs
)
pkgver=3.58.3
pkgrel=1
pkgdesc="Unified contacts, tasks and calendar backend"
url="https://gitlab.gnome.org/GNOME/evolution/-/wikis/home"
arch=(x86_64)
license=("LGPL-2.0-only AND LGPL-2.1-or-later")
depends=(
  cairo
  dconf
  gcc-libs
  glib2
  glibc
  gtk3
  hicolor-icon-theme
  icu
  json-glib
  krb5
  libcanberra
  libgoa
  libgweather-4
  libical
  libldap
  libphonenumber
  libsecret
  libsoup3
  libxml2
  nspr
  nss
  pango
  perl
  sqlite
  util-linux-libs
  webkit2gtk-4.1
  zlib
)
makedepends=(
  boost
  cmake
  gi-docgen
  git
  glib2-devel
  gobject-introspection
  gperf
  gtk-doc
  gtk4
  ninja
  postfix
  python
  vala
  webkitgtk-6.0
)
checkdepends=(db)
source=("git+https://gitlab.gnome.org/GNOME/evolution-data-server.git#tag=$pkgver")
b2sums=('dced7f3d26d6571fbe86646af49d202f9675c2890aa9ac1db4f1c18ec0c129ccce241e14967bbe8b41ddfc5a74e28b6e670db1692cfac830efcdb2da85852c34')

prepare() {
  cd $pkgbase
}

build() {
  local cmake_options=(
    -D CMAKE_BUILD_TYPE=None
    -D CMAKE_INSTALL_PREFIX=/usr
    -D LIBEXEC_INSTALL_DIR=/usr/lib
    -D SYSCONF_INSTALL_DIR=/etc
    -D ENABLE_GTK_DOC=ON
    -D ENABLE_GI_DOCGEN=ON
    -D ENABLE_INTROSPECTION=ON
    -D ENABLE_VALA_BINDINGS=ON
    -D WITH_LIBDB=OFF
    -D WITH_PHONENUMBER=ON
  )

  cmake -S $pkgbase -B build -G Ninja "${cmake_options[@]}"
  cmake --build build
}

check() {
  cd build
  # Failing tests: #63: test-cal-component-bag
  ctest --force-new-ctest-process --output-on-failure ||:
}

_pick() {
  local p="$1" f d; shift
  for f; do
    d="$srcdir/$p/${f#$pkgdir/}"
    mkdir -p "$(dirname "$d")"
    mv "$f" "$d"
    rmdir -p --ignore-fail-on-non-empty "$(dirname "$f")"
  done
}

package_evolution-data-server() {
  provides=(
    libcamel-1.2.so
    libebackend-1.2.so
    libebook-1.2.so
    libebook-contacts-1.2.so
    libecal-2.0.so
    libedata-book-1.2.so
    libedata-cal-2.0.so
    libedataserver-1.2.so
    libedataserverui-1.2.so
  )

  DESTDIR="$pkgdir" cmake --install build

  cd "$pkgdir"

  _pick ui4 usr/include/evolution-data-server/libedataserverui4
  _pick ui4 usr/lib/libedataserverui4-1.0.so*
  _pick ui4 usr/lib/pkgconfig/libedataserverui4-1.0.pc
  _pick ui4 usr/lib/girepository-1.0/EDataServerUI4-1.0.typelib
  _pick ui4 usr/share/gir-1.0/EDataServerUI4-1.0.gir
  _pick ui4 usr/share/vala/vapi/libedataserverui4-1.0.*

  _pick docs usr/share/gtk-doc
  _pick docs usr/share/doc
}

package_libedataserverui4() {
  pkgdesc+=" - GTK 4 UI library"
  depends=(
    "evolution-data-server=$pkgver-$pkgrel"
    glib2
    glibc
    gtk4
    libical
    libsoup3
    nspr
    nss
    pango
    webkitgtk-6.0
  )
  provides=(libedataserverui4-1.0.so)

  mv ui4/* "$pkgdir"
}

package_evolution-data-server-docs() {
  pkgdesc+=" - documentation"
  depends=()

  mv docs/* "$pkgdir"
}

# vim:set sw=2 sts=-1 et: