summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 8d2de82fed140c47cec8cda5900da99dcd50d259 (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
_phpbase="php70"
pkgname=php70-memcache
pkgver=3.0.8
pkgrel=8
pkgdesc="Memcache module for PHP"
arch=('x86_64')
url="http://pecl.php.net/package/memcache"
license=('PHP')
depends=("${_phpbase}")
makedepends=('git')
checkdepends=('memcached')
backup=("etc/${_phpbase}/conf.d/memcache.ini")
install=php-memcache.install
_commit=fdbd46bbc6f53ed6e024521895e142cbfc9b3340
source=("pecl-memcache::git+https://github.com/websupport-sk/pecl-memcache.git#commit=$_commit")

prepare() {
  cd "$srcdir/pecl-memcache"
  # Disable UDP tests
  sed -i "s|^\(\$udpPort2\? =\) .*|\1 0;|" tests/connect.inc

  # Remove flaky tests
  #   [tests/040.phpt] memcache->increment()/decrement() with multiple keys
  #   [tests/042.phpt] memcache->set() with multiple values
  #   strange keys [tests/005.phpt]
  #   ini_set('session.save_handler') [tests/036.phpt]
  #   ini_set('memcache.session_redundancy') [tests/044.phpt]
  #   ini_set('session.save_handler') with unix domain socket [tests/053.phpt]
  #   session locking [tests/057.phpt]
  rm tests/{005,036,040,042,044,053,057}.phpt
}

build() {
  cd "$srcdir/pecl-memcache"
  phpize70
  ./configure --prefix=/usr
  make
}
package() {
  cd "$srcdir/pecl-memcache"
  make INSTALL_ROOT="$pkgdir" install
  echo ';extension=memcache.so' > memcache.ini
  install -Dm644 memcache.ini "$pkgdir/etc/${_phpbase}/conf.d/memcache.ini"
}

check() {
  cd "$srcdir/pecl-memcache"

  sed -i "s|^\(\$domainsocket =\) .*|\1 'unix://$PWD/memcached.sock';|" \
    tests/connect.inc

  memcached_pids=()
  memcached -p 11211 -U 11211 >/dev/null        & memcached_pids+=($!)
  memcached -p 11212 -U 11212 >/dev/null        & memcached_pids+=($!)
  memcached -s "$PWD/memcached.sock" >/dev/null & memcached_pids+=($!)

  local ret=0
  make test NO_INTERACTION=1 REPORT_EXIT_STATUS=1 || ret=1

  kill ${memcached_pids[@]}

  return $ret
}

md5sums=('SKIP')