# Template file for 'v8' pkgname=v8 version=3.12.19.15 revision=2 short_desc="V8 JavaScript Engine" maintainer="davehome " homepage="http://code.google.com/p/v8/" license="BSD" distfiles="http://commondatastorage.googleapis.com/chromium-browser-official/v8-${version}.tar.bz2" checksum=5f8f0a700a88250170118b5994aacf57f6527a6c0017096b5cb322ecbad6e187 long_desc=" V8 is Google's open source JavaScript engine. V8 is written in C++ and is used in Google Chrome, the open source browser from Google. V8 implements ECMAScript as specified in ECMA-262, 5th edition, and runs on Windows (XP or newer), Mac OS X (10.5 or newer), and Linux systems that use IA-32, x64, or ARM processors. V8 can run standalone, or can be embedded into any C++ application. This package contains v8 the utilities mksnapshot and the d8 shell." hostmakedepends="which subversion python" makedepends="readline-devel" do_build() { # TODO: add support to crosscompile for other targets. if [ "$CROSS_BUILD" ]; then case "${XBPS_TARGET_MACHINE}" in arm*) # NOTE: hardfp can be problematic if not hf is supported on target cpu sed -e "s/m32flag':.*/m32flag':'',/" -i build/common.gypi LINK="${CXX}" make V=1 ${makejobs} arm.release \ hardfp=on library=shared console=readline \ disassembler=on snapshot=off \ CXX.host=${CXX} CXX.link=${CXX} LINK.target="${CXX}" ;; *) msg_error "$pkgver: cannot cross compile for ${XBPS_TARGET_MACHINE}.\n" ;; esac else # native build make ${makejobs} native library=shared console=readline \ disassembler=on liveobjectlist=on fi } do_install() { if [ "$CROSS_BUILD" ]; then case "$XBPS_TARGET_MACHINE" in arm*) vinstall out/arm.release/d8 755 usr/bin vinstall out/arm.release/lib.target/lib${pkgname}.so 755 usr/lib ;; esac else # native build vinstall out/native/d8 755 usr/bin vinstall out/native/lib.target/lib${pkgname}.so 755 usr/lib fi if [ -z "$CROSS_BUILD" ]; then # mksnapshot only built in native builds. vinstall out/native/mksnapshot 755 usr/bin fi vinstall include/${pkgname}-debug.h 644 usr/include vinstall include/${pkgname}-preparser.h 644 usr/include vinstall include/${pkgname}-profiler.h 644 usr/include vinstall include/${pkgname}-testing.h 644 usr/include vinstall include/${pkgname}.h 644 usr/include vinstall include/${pkgname}stdint.h 644 usr/include } v8-devel_package() { depends="libv8-${version}_${revision}" short_desc="${short_desc} (Development headers)" pkg_install() { vmove usr/include } } libv8_package() { short_desc="${short_desc} (Runtime library)" pkg_install() { vmove usr/lib } } v8_package() { pkg_install() { vmove usr } }