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
pkgname=bugseverywhere-git
pkgver=20101128
pkgrel=1
pkgdesc="A distributed bugtracker"
arch=('any')
url="http://bugseverywhere.org/be"
license=('GPL')
depends=('python' 'python-yaml')
makedepends=('git' 'python-numpydoc')
optdepends=('cherrypy: web interface')
provides=('bugseverywhere')
conflicts=('bugseverywhere' 'bugseverywhere-bzr')
backup=()
options=(!emptydirs)
install=
#source=($pkgname-$pkgver.tar.gz)
noextract=()
md5sums=() #generate with 'makepkg -g'

_gitroot="git://gitorious.org/be/be"
_gitname="be"

build() {

  cd "$srcdir"
  msg "Connecting to GIT server...."

  if [ -d $_gitname ] ; then
    cd $_gitname && git pull origin
    msg "The local files are updated."
  else
    git clone $_gitroot $_gitname
  fi

  msg "GIT checkout done or server timeout"
  msg "Starting make..."

  rm -rf "$srcdir/$_gitname-build"
  git clone "$srcdir/$_gitname" "$srcdir/$_gitname-build"
  cd "$srcdir/$_gitname-build"

  # Fix hardcoded values in Makefile
  sed -i s/'^PREFIX = ${HOME}/PREFIX = \/usr/' Makefile
  sed -i s/'^doc: sphinx/doc: /' Makefile

  echo "31a
PKGDIR = $pkgdir
.
w" | ed Makefile

  sed -i 's/^INSTALL_OPTIONS.*/INSTALL_OPTIONS = --optimize=1 --root="${PKGDIR}\/"/' Makefile

  # Do not build the manpage: it introduces problematic dependencies 
  # and besides be --help is currently more useful
  sed -i 's/DOC = sphinx man/DOC = sphinx/' Makefile

  # Make sure python2 is used
  sed -i 's/python/python2/' Makefile
  sed -i 's/python/python2/' doc/Makefile
  find . -name "*.py" | xargs sed -i 's$#!/usr/bin/env python$#!/usr/bin/env python2$'
  find . -name "*.py" | xargs sed -i 's$#!/usr/bin/python$#!/usr/bin/python2$'

  # Build
  make
  make install

}

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