desktop/go/PKGBUILD
2012-06-03 17:25:33 +00:00

93 lines
2.9 KiB
Bash

#
# Apps Packages for Chakra, part of chakra-project.org
#
# maintainer abveritas@chakra-project.org
pkgname=go
pkgver=1.0.1
pkgrel=1
pkgdesc='Google Go compiler and tools (release version)'
arch=('x86_64' 'i686')
url="http://golang.org/"
license=('custom')
depends=('perl' 'gawk')
makedepends=('inetutils')
options=('!strip' '!emptydirs')
install=go.install
source=("http://go.googlecode.com/files/${pkgname}$pkgver.src.tar.gz"
"$pkgname.sh")
sha1sums=('fc8a6d6725f7f2bf7c94685c5fd0880c9b7f67f6'
'f0c24019ff93e40588ffd4f74125b1e989c10669')
build() {
cd "$srcdir/$pkgname"
export GOROOT_FINAL="/usr/lib/go"
export GOOS=linux
cd src && bash make.bash
}
check() {
cd "$srcdir/$pkgname"
export GOROOT="$srcdir/$pkgname"
export PATH="$srcdir/$pkgname/bin:$PATH"
# TestSimpleMulticastListener will fail in standard chroot.
cd src && bash run.bash --no-rebuild || true
}
package() {
export GOROOT="$srcdir/$pkgname"
export PATH="$srcdir/$pkgname/bin:$PATH"
cd "$srcdir/$pkgname"
install -Dm644 LICENSE \
"$pkgdir/usr/share/licenses/go/LICENSE"
install -Dm644 misc/bash/go \
"$pkgdir/usr/share/bash-completion/completions/go"
install -Dm644 misc/emacs/go-mode-load.el \
"$pkgdir/usr/share/emacs/site-lisp/go-mode-load.el"
install -Dm644 misc/emacs/go-mode.el \
"$pkgdir/usr/share/emacs/site-lisp/go-mode.el"
install -Dm644 misc/zsh/go \
"$pkgdir/usr/share/zsh/site-functions/_go"
for f in ftdetect/gofiletype.vim autoload/go/complete.vim indent/go.vim \
ftplugin/go/fmt.vim ftplugin/go/godoc.vim ftplugin/go/import.vim \
syntax/go.vim syntax/godoc.vim plugin/godoc.vim;
do
install -Dm644 "misc/vim/$f" "$pkgdir/usr/share/vim/vimfiles/$f"
done
mkdir -p "$pkgdir/"{etc/profile.d,usr/{share/go,lib/go,lib/go/src}}
cp -r doc misc -t "$pkgdir/usr/share/go"
ln -s /usr/share/go/doc "$pkgdir/usr/lib/go/doc"
cp -r --preserve=timestamps bin "$pkgdir/usr"
cp -r --preserve=timestamps pkg "$pkgdir/usr/lib/go"
cp -r --preserve=timestamps $GOROOT/src/pkg "$pkgdir/usr/lib/go/src/"
cp -r --preserve=timestamps $GOROOT/src/cmd "$pkgdir/usr/lib/go/src/cmd"
cp -r --preserve=timestamps $GOROOT/src/lib9 "$pkgdir/usr/lib/go/src/"
cp -r --preserve=timestamps $GOROOT/lib "$pkgdir/usr/lib/go/"
install -Dm644 src/Make.* "$pkgdir/usr/lib/go/src"
# Remove object files from target src dir
find "$pkgdir/usr/lib/go/src/" -type f -name '*.[ao]' -delete
find "$pkgdir/usr/lib/go/src/pkg" -type f -executable -delete
# Headers for C modules
install -Dm644 src/pkg/runtime/runtime.h \
"$pkgdir/usr/lib/go/src/pkg/runtime/runtime.h"
install -Dm644 src/pkg/runtime/cgocall.h \
"$pkgdir/usr/lib/go/src/pkg/runtime/cgocall.h"
# For packages that source /etc/profile.d/go.sh
install -Dm755 "$srcdir/$pkgname.sh" "$pkgdir/etc/profile.d/$pkgname.sh"
rm -f "$pkgdir/usr/share/go/doc/articles/wiki/get.bin"
}