Archers,
Please look at the attached PKGBUILD for libart-lgpl. It pulls the source
either directly from the git tree on the local machine (after updating it), or
it clones directly from scm.trinitydesktop.org. I looked over the existing
pkgbuilds that use git in one form or another in ABS and this is my prototype
for how we could do the remaining build scripts.
Let me know what changes you propose.
--
David C. Rankin, J.D.,P.E.
# Maintainer: David C. Rankin <drankinatty at gmail dot com>
pkgname=tde-libart-lgpl
pkgver=3513_git
pkgrel=1
pkgdesc="Trinity Desktop LGPL'd Component (git)"
arch=('i686' 'x86_64')
url="http://scm.trinitydesktop.org/scm/git/libart-lgpl"
license=('LGPL')
groups=('trinity-base')
depends=()
makedepends=()
optdepends=()
provides=('libart-lgpl')
conflicts=()
replaces=()
options=('libtool' '!strip')
install=
# source=(dependencies-libcaldav.tar.gz)
# md5sums=('9af08c597e01642b27763716789e1d50')
_gitlocal=/home/david/tde/tde/main
_gitname="${pkgname#*-}"
_gitdir="${_gitlocal}/dependencies/${_gitname}"
_giturl="$url"
_prefix=/trinity
build() {
# cd $srcdir/${pkgname#*-}
cd ${srcdir}
msg "Connecting to GIT server...."
if [ -d $_gitname ] ; then
msg "Using existing source in: ${srcdir}/${_gitname}"
else
if [ -d $_gitdir ] ; then
msg "Updating local tree: $_gitdir"
cd $_gitdir && {
git pull
git submodule init
git submodule update --recursive
git submodule foreach --recursive "git checkout master"
git submodule foreach --recursive "git pull"
}
cd ${srcdir} && cp -a "$_gitdir" .
msg "The local files are updated."
else
msg "Cloning new source from: $url"
git clone --depth=1 $_giturl
fi
msg "GIT checkout done or server timeout"
fi
cd "${srcdir}/${_gitname}"
./configure --prefix=$_prefix
make || return 1
make DESTDIR=$pkgdir install || return 1
}