## ## v8.spec -- OpenPKG RPM Package Specification ## Copyright (c) 2000-2012 OpenPKG Foundation e.V. ## ## Permission to use, copy, modify, and distribute this software for ## any purpose with or without fee is hereby granted, provided that ## the above copyright notice and this permission notice appear in all ## copies. ## ## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED ## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF ## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. ## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR ## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, ## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT ## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF ## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, ## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT ## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF ## SUCH DAMAGE. ## # package information Name: v8 Summary: V8 JavaScript Engine URL: http://code.google.com/p/v8/ Vendor: Google Inc. Packager: OpenPKG Foundation e.V. Distribution: OpenPKG Community Class: EVAL Group: Language License: BSD Version: 3.13.5 Release: 20120830 # package options %option with_gyp yes # list of sources Source0: http://download.openpkg.org/components/versioned/v8/v8-%{version}.tar.bz2 Patch0: v8.patch # build information BuildPreReq: OpenPKG, openpkg >= 20100101, gcc, gcc::with_cxx = yes PreReq: OpenPKG, openpkg >= 20100101 BuildPreReq: libexecinfo PreReq: libexecinfo %if "%{with_gyp}" == "yes" BuildPreReq: gyp %else BuildPreReq: scons %endif %description 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 all major platform that use IA32, x64 or ARM processors. V8 can run standalone, or can be embedded into any C++ application. %track prog v8 = { version = %{version} url = http://download.openpkg.org/components/versioned/v8/ regex = v8-(__VER__)\.tar\.bz2 } %prep %setup -q -n v8 %patch -p0 %build %if "%{with_gyp}" == "yes" %{l_shtool} subst -e 's;build/gyp/gyp;gyp;g' Makefile CC="%{l_cc} %{l_cflags -O} -I`pwd`/src %{l_cppflags}" \ CXX="%{l_cxx} %{l_cxxflags -O} -I`pwd`/src %{l_cppflags}" \ %{l_make} %{l_mflags} \ native \ snapshot=off \ werror=no \ strictaliasing=off %else %{l_shtool} subst \ -e 's;/usr/local;%{l_prefix};g' \ SConstruct CC="%{l_cc}" \ CCFLAGS="%{l_cflags -O}" \ CXX="%{l_cxx}" \ CXXFLAGS="%{l_cxxflags -O}" \ CPPFLAGS="-Isrc" \ scons . %endif %install %{l_shtool} mkdir -f -p -m 755 \ $RPM_BUILD_ROOT%{l_prefix}/bin \ $RPM_BUILD_ROOT%{l_prefix}/include \ $RPM_BUILD_ROOT%{l_prefix}/lib %if "%{with_gyp}" == "yes" %{l_shtool} install -c -s -m 755 \ out/native/d8 $RPM_BUILD_ROOT%{l_prefix}/bin/ %else %{l_shtool} install -c -s -m 755 \ d8 $RPM_BUILD_ROOT%{l_prefix}/bin/ %endif %{l_shtool} install -c -m 644 \ include/*.h $RPM_BUILD_ROOT%{l_prefix}/include/ %if "%{with_gyp}" == "yes" %{l_shtool} install -c -m 644 \ out/native/obj.target/tools/gyp/libv8_base.a \ $RPM_BUILD_ROOT%{l_prefix}/lib/libv8.a %else %{l_shtool} install -c -m 644 \ libv8.a \ $RPM_BUILD_ROOT%{l_prefix}/lib/ %endif %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std} %files -f files %clean