# Maintainer: Luke Shumaker pkgbase=ring pkgname=(ring-daemon ring-lrc ring-client-gnome) pkgdesc="The GNU Ring / ring.cx (formerly SFLphone) VoIP system" _pkgver=20170202.1.23df36f _SOURCE_DATE_EPOCH=1486011607 # To figure out what the above value of _SOURCE_DATE_EPOCH should be, # run # # git log -n1 --format=%ct ${_pkgver##*.} # # from inside of the repository created by # # git clone https://gerrit-ring.savoirfairelinux.com/ring-project pkgver=beta2.$_pkgver pkgrel=1 arch=("i686" "x86_64") url="https://ring.cx/" license=('GPL3') source=("http://dl.ring.cx/ring-release/tarballs/${pkgbase}_${_pkgver}.tar.gz") sha256sums=('1ff3b581cb099ae1bda83a68e99d23d87b50a497a70e760901364e7102d803eb') # Get this list by looking at `daemon/contrib/src/*/rules.mak`; look # for packages that add themselves to both PKGS and FOUND_PKGS. _daemon_contrib=( #asio # CONTRIB: TODO: IDK: no PKGS_FOUND logic, specific git commit #boost # CONTRIB: TODO: IDK: no PKGS_FOUND logic crypto++ ffmpeg #gnutls # DUP: ffmpeg->gnutls #gsm # CONTRIB: TODO: IDK: no PKGS_FOUND logic jsoncpp msgpack-c libnatpmp # NOTE: force system version; see below #nettle # DUP: ffmpeg->gnutls->nettle #libogg # DUP: ffmpeg->{libvorbis,speex}->libogg opendht #opus # DUP: ffmpeg->opus #pcre # DUP: {base,base-devel}->grep->pcre #pjproject # CONTRIB: Added patches for gnutls #restbed # CONTRIB: Want at least commit 3418750 (not yet in a release) #libsamplerate # DUP: ffmpeg->jack->libsamplerate #libsndfile # DUP: ffmpeg->libsamplerate->libsndfile #speex # DUP: ffmpeg->speex #speexdsp # DUP: ffmpeg->speex->speexdsp libupnp #libvorbis # DUP: ffmpeg->libvorbis yaml-cpp #zlib # DUP: ffmpeg->zlib ) # We may pass several `--disable-X` flags to `../bootstrap` below; to # force the system version of dependencies. # # Disable contrib 'natpmp' to force the system version of libnatpmp # because the detection logic uses pkg-config, but the libnatpmp # package doesn't include pkg-config files; so the build system thinks # we don't have it. # # TODO: Once we use system restbed, disable contrib 'asio' because it # is only needed as a build-dependency for restbed. _makedepends_daemon=() _depends_daemon=("${_daemon_contrib[@]}" dbus-c++) _makedepends_lrc=(qt5-tools) _depends_lrc=(qt5-base) _makedepends_client_gnome=() _depends_client_gnome=(clutter-gtk evolution-data-server libnm-glib qrencode) makedepends=( cmake doxygen "${_makedepends_daemon[@]}" "${_depends_daemon[@]}" "${_makedepends_lrc[@]}" "${_depends_lrc[@]}" "${_makedepends_client_gnome[@]}" "${_depends_client_gnome[@]}" ) #checkdepends=(cppunit swig) _makedepends_ringpy=(autoconf-archive gnome-icon-theme-symbolic libe-book) build() { cd "$srcdir/ring-project/daemon/contrib" mkdir native cd native ../bootstrap --disable-downloads --disable-natpmp make BATCH_MODE=1 cd "$srcdir/ring-project/daemon" ./autogen.sh ./configure --prefix=/usr make RING_DIRTY_REPO= RING_REVISION=$_pkgver cd "$srcdir/ring-project/lrc" mkdir build cd build cmake .. \ -DCMAKE_INSTALL_PREFIX=/usr \ -DCMAKE_BUILD_TYPE=Release \ -DRING_BUILD_DIR="$srcdir/ring-project/daemon/src" make cd "$srcdir/ring-project/client-gnome" mkdir build cd build SOURCE_DATE_EPOCH=$_SOURCE_DATE_EPOCH cmake .. \ -DCMAKE_INSTALL_PREFIX=/usr \ -DCMAKE_BUILD_TYPE=Release \ -DLibRingClient_PROJECT_DIR="$srcdir/ring-project/lrc" make } package_ring-daemon() { pkgdesc="The communication daemon of the GNU Ring / ring.cx (formerly SFLphone) VoIP system" depends=("${_depends_daemon[@]}") cd "$srcdir/ring-project/daemon" make DESTDIR="$pkgdir" install } package_ring-lrc() { pkgdesc="A client library for the GNU Ring / ring.cx (formerly SFLphone) VoIP system" depends=("${_depends_lrc[@]}" "ring-daemon=$pkgver") provides=("libringclient=$pkgver") # AUR name replaces=("libringclient") # AUR name cd "$srcdir/ring-project/lrc/build" make DESTDIR="$pkgdir" install } package_ring-client-gnome() { pkgdesc="A GTK+3 user interface for the GNU Ring / ring.cx (formerly SFLphone) VoIP system" depends=("${_depends_client_gnome[@]}" "ring-lrc=$pkgver") provides=("ring-gnome=$pkgver") # AUR name replaces=("ring-gnome") # AUR name cd "$srcdir/ring-project/client-gnome/build" make DESTDIR="$pkgdir" install }