[packages/hhvm] up to 3.3.0 LTS

glen glen at pld-linux.org
Sun Sep 21 23:30:48 CEST 2014


commit 6135817a46626cb024d8448e73331ee7d78429e2
Author: Elan Ruusamäe <glen at delfi.ee>
Date:   Sun Sep 21 23:27:36 2014 +0300

    up to 3.3.0 LTS
    
    http://hhvm.com/blog/6083/hhvm-long-term-support

 ccache.patch  | 14 --------------
 hhvm.spec     | 49 +++++++++++++++++++++++++++++--------------------
 hphpize.patch | 14 +++++++-------
 3 files changed, 36 insertions(+), 41 deletions(-)
---
diff --git a/hhvm.spec b/hhvm.spec
index a8dd8ab..4974d13 100644
--- a/hhvm.spec
+++ b/hhvm.spec
@@ -3,27 +3,30 @@
 # - patch /usr/lib/hphp/CMake/HPHPIZEFunctions.cmake for %{_libdir}/hhvm as extension dir
 # TODO
 # - system libmbfl, system xhp, sqlite3
-# git show HHVM-3.2.0
-%define		githash	01228273b8cf709aacbd3df1c51b1e690ecebac8
-%define		folly		09a81a9
-%define		thirdparty	2234d64
+# git show HHVM-3.3.0
+%define		githash	0a3cfb87b8a353fc7e1d15374f4adc413e37aba9
+# these hashes are git submodules
+%define		folly		4ecd8cd
+%define		thrift		378e954
+%define		thirdparty	12acbba
 Summary:	Virtual Machine, Runtime, and JIT for PHP
 Name:		hhvm
-Version:	3.2.0
-Release:	1
-License:	PHP 3.01
+Version:	3.3.0
+Release:	0.1
+License:	PHP 3.01 and BSD
 Group:		Development/Languages
 Source0:	https://github.com/facebook/hhvm/archive/HHVM-%{version}.tar.gz
-# Source0-md5:	791ca8c56d155a71f948387de8859f98
+# Source0-md5:	ca42861748d0ddace763ed20bafe7116
 Source2:	https://github.com/facebook/folly/archive/%{folly}/folly-0.1-%{folly}.tar.gz
-# Source2-md5:	17bc7ee76939cd6a26755588d80313c9
+# Source2-md5:	b9d32bbccffc260cfc6752152ddf06a9
 Source3:	https://github.com/hhvm/hhvm-third-party/archive/%{thirdparty}/third_party-%{thirdparty}.tar.gz
-# Source3-md5:	9d40c3fbf1394bb1f03648d7046f8b9c
-Source4:	%{name}-fcgi.init
-Source5:	%{name}-fcgi.sysconfig
-Source6:	php.ini
+# Source3-md5:	b2c28724e4ec5e4d2ea7e87f29690da2
+Source4:	https://github.com/facebook/fbthrift/archive/%{thrift}/thrift-%{thrift}.tar.gz
+# Source4-md5:	872f84f6ec0cc3d4f6c8471d99fcc7df
+Source5:	%{name}-fcgi.init
+Source6:	%{name}-fcgi.sysconfig
+Source7:	php.ini
 Source100:	get-source.sh
-Patch0:		ccache.patch
 Patch1:		no-debug.patch
 Patch2:		hphpize.patch
 URL:		https://github.com/facebook/hhvm/wiki
@@ -32,6 +35,8 @@ BuildRequires:	a52dec-libs-devel
 BuildRequires:	apr-devel
 BuildRequires:	autoconf
 BuildRequires:	binutils-devel
+# CMake/HPHPFindLibs.cmake:364 - FIND_LIBRARY (BFD_LIB libbfd.a)
+BuildRequires:	binutils-static
 BuildRequires:	boost-devel >= 1.50
 BuildRequires:	cmake >= 2.8.5
 BuildRequires:	curl-devel >= 7.29.0
@@ -151,10 +156,12 @@ ExclusiveArch:	%{x8664}
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 # must be in sync with source. extra check ensuring that it is so is done in %%build
-%define		hhvm_api_version	20140702
+%define		hhvm_api_version	20140829
 # hphp/system/idl/constants.idl.json defines it as 5.6.99-hhvm, but use some saner value
 %define		php_version			5.6.0
 
+%define		hhvm_extensiondir	%{_libdir}/hhvm
+
 %description
 HHVM (aka the HipHop Virtual Machine) is a new open-source virtual
 machine designed for executing programs written in PHP. HHVM uses a
@@ -211,15 +218,16 @@ runtime either by way of pure PHP code, or a combination of PHP and
 C++.
 
 %prep
-%setup -q -n %{name}-HHVM-%{version} -a2 -a3
+%setup -q -n %{name}-HHVM-%{version} -a2 -a3 -a4
 
 # handle git submodules
 rmdir third-party
 mv hhvm-third-party-* third-party
 rmdir third-party/folly/src
 mv folly-* third-party/folly/src
+rmdir third-party/thrift/src
+mv fbthrift-* third-party/thrift/src
 
-%patch0 -p1
 %patch1 -p1
 %patch2 -p1
 
@@ -257,6 +265,7 @@ fi
 %cmake \
 	$ccache \
 	-DCMAKE_PREFIX_PATH=%{_prefix} \
+	-DHHVM_DYNAMIC_EXTENSION_DIR=%{hhvm_extensiondir} \
 	-DUSE_JEMALLOC=OFF \
 	-DUSE_TCMALLOC=OFF \
 	-DHPHP_NOTEST=ON \
@@ -290,7 +299,7 @@ if [ ! -f installed.stamp ]; then
 # begin install block
 
 install -d $RPM_BUILD_ROOT{%{_sysconfdir}/%{name},%{_libdir}/%{name}}
-cp -p %{SOURCE6} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
+cp -p %{SOURCE7} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
 
 ln -s hhvm $RPM_BUILD_ROOT%{_bindir}/php
 ln -s hhvm $RPM_BUILD_ROOT%{_bindir}/hphp
@@ -300,8 +309,8 @@ cp -p hphp/doc/mime.hdf $RPM_BUILD_ROOT%{_datadir}/%{name}/hdf/static.mime-types
 
 # install fastcgi initscript
 install -d $RPM_BUILD_ROOT/etc/{sysconfig,rc.d/init.d}
-cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}-fcgi
-cp -p %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/%{name}-fcgi
+cp -p %{SOURCE5} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}-fcgi
+cp -p %{SOURCE6} $RPM_BUILD_ROOT/etc/sysconfig/%{name}-fcgi
 
 install -p hphp/hack/bin/hh_{server,client} $RPM_BUILD_ROOT%{_bindir}
 
diff --git a/ccache.patch b/ccache.patch
deleted file mode 100644
index 5300097..0000000
--- a/ccache.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-handle cmake & ccache
-http://stackoverflow.com/questions/1815688/how-to-use-ccache-with-cmake
-
---- hhvm-HHVM-3.2.0/CMake/HPHPCompiler.cmake~	2014-07-18 03:12:10.000000000 +0300
-+++ hhvm-HHVM-3.2.0/CMake/HPHPCompiler.cmake	2014-08-10 23:40:37.972367254 +0300
-@@ -22,7 +22,7 @@
-   set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g")
- # using GCC
- elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
--  execute_process(COMMAND ${CMAKE_CXX_COMPILER} -dumpversion OUTPUT_VARIABLE GCC_VERSION)
-+  execute_process(COMMAND ${CMAKE_CXX_COMPILER} ${CMAKE_CXX_COMPILER_ARG1} -dumpversion OUTPUT_VARIABLE GCC_VERSION)
-   set(GNUCC49_OPT "")
-   if (NOT (GCC_VERSION VERSION_GREATER 4.8 OR GCC_VERSION VERSION_EQUAL 4.8))
-     message(FATAL_ERROR "${PROJECT_NAME} requires g++ 4.8 or greater.")
diff --git a/hphpize.patch b/hphpize.patch
index 25c4923..41c4bf0 100644
--- a/hphpize.patch
+++ b/hphpize.patch
@@ -1,14 +1,14 @@
---- hhvm-HHVM-3.2.0/CMake/HPHPIZEFunctions.cmake	2014-07-18 03:12:10.000000000 +0300
-+++ hhvm-HHVM-3.2.0/CMake/HPHPIZEFunctions.cmake	2014-08-27 17:07:59.461056148 +0300
-@@ -17,7 +17,11 @@
-   add_library(${EXTNAME} SHARED ${ARGN})
+--- hhvm-HHVM-3.3.0/CMake/HPHPIZEFunctions.cmake~	2014-09-19 19:10:19.000000000 +0300
++++ hhvm-HHVM-3.3.0/CMake/HPHPIZEFunctions.cmake	2014-09-21 23:28:42.031159399 +0300
+@@ -18,6 +18,12 @@
    set_target_properties(${EXTNAME} PROPERTIES PREFIX "")
    set_target_properties(${EXTNAME} PROPERTIES SUFFIX ".so")
--  install(TARGETS ${EXTNAME} DESTINATION "lib/hphp/extensions/${HHVM_API_VERSION}")
+   install(TARGETS ${EXTNAME} DESTINATION "${CMAKE_INSTALL_LIBDIR}/hhvm/extensions/${HHVM_API_VERSION}")
++  install(TARGETS ${EXTNAME} DESTINATION "lib/hphp/extensions/${HHVM_API_VERSION}")
 +  if(HHVM_EXTENSION_DIR)
-+	  install(TARGETS ${EXTNAME} DESTINATION ${HHVM_EXTENSION_DIR})
++    install(TARGETS ${EXTNAME} DESTINATION ${HHVM_EXTENSION_DIR})
 +  else()
-+	  install(TARGETS ${EXTNAME} DESTINATION "lib/hphp/extensions/${HHVM_API_VERSION}")
++    install(TARGETS ${EXTNAME} DESTINATION "${CMAKE_INSTALL_LIBDIR}/hhvm/extensions/${HHVM_API_VERSION}")
 +  endif()
  endfunction()
  
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/hhvm.git/commitdiff/6135817a46626cb024d8448e73331ee7d78429e2



More information about the pld-cvs-commit mailing list