# Maintainer: Phillip Smith <fukawi2@NO-SPAM.gmail.com>

pkgname=mirrorbrain
pkgver=2.15.0
pkgrel=2
pkgdesc="an open source framework to run a content delivery network using mirror servers."
arch=('i686' 'x86_64')
url="http://mirrorbrain.org"
license=('GPL')
depends=('apache>=2.2.6' 'apache-mod_form' 'apache-mod_geoip2' 'geoip'
         'perl' 'perl-config-inifiles' 'perl-libwww' 'perl-dbd-pg' 'perl-digest-md4' 'perl-timedate'
         'python' 'python-psycopg2' 'python-sqlobject' 'cmdln')
makedepends=('apache>=2.2.6' 'apache-mod_form' 'python')
optdepends=('postgresqli-server: recommended database, but can use any database the Apache DBD API supports'
            'mod_asn: refined mirror selection and full exploitation of network locality')
provides=('mod_mirrorbrain')
backup=("etc/$pkgname.conf")
install="$pkgname.install"
source=("http://mirrorbrain.org/files/releases/$pkgname-$pkgver.tar.gz"
        "$pkgname.conf"
        'logrotate.mb')
md5sums=('125ee33b7879d7c9f5ad1b9d88af15fe'
         '82cfccc53e67f589091ab4c2c9720e2a'
         '9198922d52ebe83610ddc14db52aea05')

build() {
  # Compile the apache modules
  cd "$srcdir/$pkgname-$pkgver/mod_mirrorbrain/"
  apxs -c -lm mod_mirrorbrain.c
  cd "$srcdir/$pkgname-$pkgver/mod_autoindex_mb/"
  apxs -c mod_autoindex_mb.c

  cd "$srcdir/$pkgname-$pkgver/tools"
  # Patch for Arch storing GeoIP DB in different location
  sed -e 's|/var/lib/GeoIP/GeoIP.dat|/usr/share/GeoIP/GeoIP.dat|g' \
    -i geoiplookup_continent.c \
    -i geoiplookup_city.c
  gcc -Wall -o geoiplookup_continent geoiplookup_continent.c -lGeoIP
  gcc -Wall -o geoiplookup_city geoiplookup_city.c -lGeoIP
}

package() {
  # Install the apache modules
  cd "$srcdir/$pkgname-$pkgver/mod_mirrorbrain/"
  install -Dm755 .libs/mod_mirrorbrain.so $pkgdir/usr/lib/httpd/modules/mod_mirrorbrain.so
  cd "$srcdir/$pkgname-$pkgver/mod_autoindex_mb/"
  install -Dm755 .libs/mod_autoindex_mb.so $pkgdir/usr/lib/httpd/modules/mod_autoindex_mb.so

  # Install the tools  
  cd "$srcdir/$pkgname-$pkgver/"
  install -Dm755 tools/geoiplookup_continent  $pkgdir/usr/bin/geoiplookup_continent
  install -Dm755 tools/geoiplookup_city       $pkgdir/usr/bin/geoiplookup_city
  install -Dm755 tools/geoip-lite-update      $pkgdir/usr/bin/geoip-lite-update
  install -Dm755 tools/null-rsync             $pkgdir/usr/bin/null-rsync
  install -Dm755 tools/scanner.pl             $pkgdir/usr/bin/scanner
  install -Dm755 mirrorprobe/mirrorprobe.py   $pkgdir/usr/bin/mirrorprobe

  # Install the mb script
  cd "$srcdir/$pkgname-$pkgver/mb/"
  python setup.py install --root="$pkgdir"

  # Install SQL templates
  cd "$srcdir/$pkgname-$pkgver/sql/"
  mkdir -p $pkgdir/usr/share/$pkgname/sql/
  cp -rv * $pkgdir/usr/share/$pkgname/sql/

  # Install default configuration file
  cd "$srcdir/"
  install -Dm640 $srcdir/$pkgname.conf $pkgdir/etc/$pkgname.conf
  
  # install the logrotate script (to suit the above default conf)
  install -Dm644 $srcdir/logrotate.mb $pkgdir/etc/logrotate.d/$pkgname
}

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