PKGBUILDs/community/v8/PKGBUILD
2013-07-20 16:57:06 +00:00

85 lines
2.8 KiB
Bash

# Maintainer: Bartłomiej Piotrowski <nospam@bpiotrowski.pl>
# Contributor: Kaiting Chen <kaitocracy@gmail.com>
# Contributor: tocer <tocer.deng@gmail.com>
# Contributor: WarheadsSE <max@warheads.net>
pkgname=v8
pkgver=3.19.18.4
pkgrel=1
pkgdesc='Fast and modern javascript engine'
arch=('i686' 'x86_64')
url='http://code.google.com/p/v8'
license=('BSD')
depends=('gcc-libs')
makedepends=('subversion' 'python2')
source=(http://commondatastorage.googleapis.com/chromium-browser-official/$pkgname-$pkgver.tar.bz2)
sha256sums=('10d7a51ed2769b1c2a6311a30ed1967d0a1da3f522c90b9c00f25fbe0b1aba02')
prepare() {
cd $pkgname-$pkgver
# _source="http://v8.googlecode.com/svn/tags/${pkgver}"
# svn checkout "$_source" "${srcdir}/v8-${pkgver}"
cd "${srcdir}/${pkgname}-${pkgver}"
if [ "$CARCH" == "arm" ]; then
# we need to override the arch (last one will be used) because
# v8 thinks armv5te can use unaligned.. the kirkwood can't!
# There is still a bug in the V8::internals::string
CXXFLAGS="$CXXFLAGS -march=armv5t -mno-unaligned-access" ;
GYPFLAGS="-Darmeabi=soft -Dv8_can_use_vfp_instructions=false -Dv8_can_use_unaligned_accesses=false -Darmv7=0"
VFP3=off
VFP2=off
fi
if [ "$CARCH" == "armv6h" ]; then
GYPFLAGS="-Darmeabi=hard -Dv8_use_arm_eabi_hardfloat=true -Dv8_can_use_vfp_instructions=false -Dv8_can_use_vfp2_instructions=true -Darm7=0 -Darm_vfp=vfp"
VFP3=off
VFP2=on
fi
if [ "$CARCH" == "armv7h" ]; then
GYPFLAGS="-Darmeabi=hard -Dv8_use_arm_eabi_hardfloat=true -Dv8_can_use_vfp_instructions=true -Dv8_can_use_vfp2_instructions=true -Darm7=1"
VFP3=on
VFP2=on
fi
export GYPFLAGS
export CXXFLAGS ;
# short-cutting python=python2 for GYP, as it will only be used here.
export PYTHON=python2
if [ ! -f "${srcdir}/python" ]; then
ln -s `which python2` ${srcdir}/python ;
fi
PATH="${srcdir}:$PATH";
export PATH ;
}
build() {
cd $pkgname-$pkgver
# gets gyp
make dependencies
# make arm.release & arm.debug = just arm
make arm.release library=shared snapshot=off vfp3=$VFP3 vfp=$VFP2 werror=no
# eo build
cd $srcdir && cp -r $pkgname-$pkgver d8-static-$pkgver
cd d8-static-$pkgver
make arm.release library=static snapshot=off vfp3=$VFP3 vfp=$VFP2 werror=no
}
# seperated to possibly split v8-debug in the future.
package (){
cd "${srcdir}/${pkgname}-${pkgver}"
find include -type f \
-exec install -Dm644 {} ${pkgdir}/usr/{} \;
rm -rf ${pkgdir}/usr/include/.svn
# these barf, need updated.
# src/v8-3.11.10/out/arm.release/d8
# src/v8-3.11.10/out/arm.release/lib.target/libv8.so
install -Dm755 $srcdir/d8-static-$pkgver/out/arm.release/d8 $pkgdir/usr/bin/d8
install -Dm755 out/arm.release/lib.target/libv8.so "${pkgdir}/usr/lib/libv8.so"
install -d ${pkgdir}/usr/share/licenses/v8
install -m644 LICENSE* ${pkgdir}/usr/share/licenses/v8
}