summaryrefslogtreecommitdiff
path: root/libre/jami-daemon/PKGBUILD
blob: bf2ae2cb23b5ea286fbd14f42b1a8f9ff7d3567e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
# Maintainer (arch): Bruno Pagani <archange@archlinux.org>
# Contributor: Baptiste Jonglez <baptiste--aur at jonglez dot org>

# parabola changes and rationale:
#  - no changes
#  - temporary 'jami-qt' build without qt6-webengine
#    the next jami release should have this VCS change;
#    so the arch pckage will be FDSG-fit then
#  - NOTE: this is built from VCS; but so was the
#    latest arch package - AFAIK, this should be
#    named 'jami-qt-git' - it is a one-time
#    blacklist replacement though; so it is less
#    troublesome to keep the arch pkgname
#  - NOTE: jami-{daemon,libclient,qt} versions are all tightly coupled,
#          even at the VCS level
#          implied build order: jami-daemon <- jami-libclient <- jami-qt


pkgname=jami-daemon
pkgver=20220505
pkgrel=1
pkgrel+=.parabola1
pkgdesc="Free and universal communication platform which preserves the users’ privacy and freedoms (daemon component)"
arch=(x86_64)
url="https://jami.net"
license=(GPL3)
groups=(jami)
depends=(glibc opendht gnutls nettle libgit2 libsecp256k1 ffmpeg speexdsp
         fmt yaml-cpp jsoncpp zlib dbus-c++ alsa-lib libpulse jack
         libupnp libnatpmp openssl webrtc-audio-processing systemd-libs
         libarchive)
# portaudio needs a not-yet-upstream patch https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/650
makedepends=(git cmake perl asio msgpack-c msgpack-cxx restinio systemd meson)
checkdepends=(cppunit)
_commit=8750049b0ce58133b05c90330df6fd3464dadd1d
_pjprojectver=e1f389d0b905011e0cb62cbdf7a8b37fc1bcde1a
source=(git+https://git.jami.net/savoirfairelinux/${pkgname}.git#commit=${_commit}
        https://github.com/savoirfairelinux/pjproject/archive/${_pjprojectver}/pjproject-${_pjprojectver}.tar.gz)
noextract=(pjproject-${_pjprojectver}.tar.gz)
sha512sums=(SKIP a1ed0519ddf8dc91f47042497530cbcb1c8736506d0c2b677751a3368c0a202952ff563946664705dbf5806bed8ade784885db62f8278a204f516a4e60917b1e)

# pkgver() {
#   cd ${pkgname}
#   TZ=UTC git show -s --pretty=%cd --date=format-local:%Y%m%d HEAD
# }

prepare() {
  cd ${pkgname}
  cp ../pjproject-${_pjprojectver}.tar.gz contrib/tarballs
  mkdir contrib/native
}

build() {
  cd ${pkgname}/contrib/native
  export CXXFLAGS+=' -fpermissive'
  ../bootstrap \
      --disable-downloads \
      --disable-all \
      --enable-pjproject
  make DEPS_pjproject=

  cd "${srcdir}"
  arch-meson ${pkgname} build -D interfaces=library,dbus -D opensl=disabled -D portaudio=disabled \
                              $( ((CHECKFUNC)) && echo -D tests=true) \
                              -D pkg_config_path="${PWD}/${pkgname}/contrib/$(cc -dumpmachine)/lib/pkgconfig"
  meson compile -C build
}

#check() {
# https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/649
#  meson test -C build --print-errorlogs
#}

package() {
  meson install -C build --destdir "${pkgdir}"
}