summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 28774a5c7f9025a87a6bdfd4f72ee85b5661dec0 (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
# Maintainer: Jeremy Audet <jerebear@protonmail.com>
# Contributor: Jonjo McKay <jonjo@jonjomckay.com>

pkgname=libgroove
pkgver=4.3.0
pkgrel=3
pkgdesc='Library that provides decoding and encoding of audio on a playlist.'
arch=(i686 x86_64)
url='https://github.com/andrewrk/libgroove'
license=(MIT)
depends=(sdl2 chromaprint libebur128)
makedepends=(cmake yasm)
options=('strip')
source=("https://github.com/andrewrk/libgroove/archive/${pkgver}.tar.gz"
        "0001-update-for-ffmpeg-3.0.patch")
sha256sums=('76f68896f078a9613d420339ef887ca8293884ad2cd0fbc031d89a6af2993636'
            '444daed8d4a1180eb8ce303470c87c15bd6c28ff90cf145c5db815639c47be08')


prepare() {
  cd "${srcdir}/${pkgname}-${pkgver}"
  patch -fNp1 -i ../0001-update-for-ffmpeg-3.0.patch

  sed \
    -e 's|^libdir=$|libdir=/usr/lib|' \
    -e 's|^includedir=$|includedir=/usr/include/groove|' \
    -e "s|^Version:$|Version: ${pkgver}|" \
    example/libgroove.pc \
    > "${srcdir}/libgroove.pc"
}

build() {
  mkdir -p "${srcdir}/${pkgname}-${pkgver}/build"
  cd "${srcdir}/${pkgname}-${pkgver}/build"
  cmake \
    -D CMAKE_BUILD_TYPE=Release \
    -D CMAKE_INSTALL_PREFIX=/usr \
    ..
  make
}

check() {
  cat > libgroove-version.c <<EOF
  #include <stdio.h>
  #include <groove/groove.h>
  int main() {
      printf("%s\n", groove_version());
      return 0;
  }
EOF

  gcc \
    -Wall \
    -I "${srcdir}/${pkgname}-${pkgver}" \
    -L "${srcdir}/${pkgname}-${pkgver}/build" \
    $(pkg-config --libs libgroove.pc) \
    -o libgroove-version \
    libgroove-version.c

  diff -u \
    <(pkg-config --modversion libgroove.pc) \
    <(LD_LIBRARY_PATH="${srcdir}/${pkgname}-${pkgver}/build" \
      ./libgroove-version)
}

package() {
  make -C "${srcdir}/${pkgname}-${pkgver}/build" DESTDIR="${pkgdir}/" install
  install -Dm 644 "${srcdir}/${pkgname}-${pkgver}/LICENSE" \
    "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
  # Created in the `prepare` function.
  install -Dm 644 "${srcdir}/libgroove.pc" \
    "${pkgdir}/usr/lib/pkgconfig/libgroove.pc"
}

# vim:set ts=2 sw=2 et: