/[gentoo-x86]/dev-lang/v8/v8-3.16.14.9.ebuild
Gentoo

Contents of /dev-lang/v8/v8-3.16.14.9.ebuild

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.2 - (show annotations) (download)
Fri Apr 5 14:36:24 2013 UTC (17 months, 2 weeks ago) by floppym
Branch: MAIN
CVS Tags: HEAD
Changes since 1.1: +1 -1 lines
FILE REMOVED
Don't die on pax-mark failure, bug 464682.

(Portage version: 2.2.0_alpha171/cvs/Linux x86_64, signed Manifest commit with key 0BBEEA1FEA4843A4)

1 # Copyright 1999-2013 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3 # $Header: /var/cvsroot/gentoo-x86/dev-lang/v8/v8-3.16.14.9.ebuild,v 1.1 2013/03/21 02:17:10 floppym Exp $
4
5 EAPI="5"
6 PYTHON_COMPAT=( python2_{6,7} )
7
8 inherit eutils multilib pax-utils python-any-r1 toolchain-funcs versionator
9
10 DESCRIPTION="Google's open source JavaScript engine"
11 HOMEPAGE="http://code.google.com/p/v8"
12 SRC_URI="http://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.bz2"
13 LICENSE="BSD"
14
15 soname_version="$(get_version_component_range 1-3)"
16 SLOT="0/${soname_version}"
17 KEYWORDS="~amd64 ~arm ~x86 ~x86-fbsd ~x64-macos ~x86-macos"
18 IUSE=""
19
20 DEPEND="${PYTHON_DEPS}"
21
22 src_configure() {
23 tc-export AR CC CXX RANLIB
24 export LINK=${CXX}
25
26 local hardfp=off
27
28 # Use target arch detection logic from bug #354601.
29 case ${CHOST} in
30 i?86-*) myarch=ia32 ;;
31 x86_64-*)
32 if [[ $ABI = x86 ]] ; then
33 myarch=ia32
34 else
35 myarch=x64
36 fi ;;
37 arm*-hardfloat-*)
38 hardfp=on
39 myarch=arm ;;
40 arm*-*) myarch=arm ;;
41 *) die "Unrecognized CHOST: ${CHOST}"
42 esac
43 mytarget=${myarch}.release
44
45 # TODO: Add console=readline option once implemented upstream
46 # http://code.google.com/p/v8/issues/detail?id=1781
47
48 # Generate the real Makefile.
49 emake V=1 \
50 library=shared \
51 werror=no \
52 soname_version=${soname_version} \
53 snapshot=on \
54 hardfp=${hardfp} \
55 out/Makefile.${myarch} || die
56 }
57
58 src_compile() {
59 local makeargs=(
60 -C out
61 -f Makefile.${myarch}
62 V=1
63 BUILDTYPE=Release
64 builddir="${S}/out/${mytarget}"
65 )
66
67 # Build mksnapshot so we can pax-mark it.
68 emake "${makeargs[@]}" mksnapshot || die
69 pax-mark m out/${mytarget}/mksnapshot
70
71 # Build everything else.
72 emake "${makeargs[@]}" || die
73 pax-mark m out/${mytarget}/{cctest,d8,shell} || die
74 }
75
76 src_test() {
77 local arg testjobs
78 for arg in ${MAKEOPTS}; do
79 case ${arg} in
80 -j*) testjobs=${arg#-j} ;;
81 --jobs=*) testjobs=${arg#--jobs=} ;;
82 esac
83 done
84
85 tools/test-wrapper-gypbuild.py \
86 -j${testjobs:-1} \
87 --arch-and-mode=${mytarget} \
88 --no-presubmit \
89 --progress=dots || die
90 }
91
92 src_install() {
93 insinto /usr
94 doins -r include || die
95
96 if [[ ${CHOST} == *-darwin* ]] ; then
97 # buildsystem is too horrific to get this built correctly
98 mkdir -p out/${mytarget}/lib.target
99 mv out/${mytarget}/libv8.so.${soname_version} \
100 out/${mytarget}/lib.target/libv8$(get_libname ${soname_version}) || die
101 install_name_tool \
102 -id "${EPREFIX}"/usr/$(get_libdir)/libv8$(get_libname) \
103 out/${mytarget}/lib.target/libv8$(get_libname ${soname_version}) \
104 || die
105 install_name_tool \
106 -change \
107 /usr/local/lib/libv8.so.${soname_version} \
108 "${EPREFIX}"/usr/$(get_libdir)/libv8$(get_libname) \
109 out/${mytarget}/d8 || die
110 fi
111
112 dobin out/${mytarget}/d8 || die
113
114 dolib out/${mytarget}/lib.target/libv8$(get_libname ${soname_version}) || die
115 dosym libv8$(get_libname ${soname_version}) /usr/$(get_libdir)/libv8$(get_libname) || die
116
117 dodoc AUTHORS ChangeLog || die
118 }

  ViewVC Help
Powered by ViewVC 1.1.20