%bcond_without system_sqlite # system sqlite3
%bcond_without system_lz4 # system lz4
%bcond_without system_fastlz # system fastlz
-%bcond_without system_libafdt # system libafdt
+%bcond_with system_libafdt # system libafdt
%bcond_without system_libzip # system libzip
# cotire breaks sqlite3 on builders: https://github.com/facebook/hhvm/issues/4524
%bcond_with cotire # cotire (compile time reducer): Speed up the build by precompiling headers
# hphp/system/idl/constants.idl.json defines it as 5.6.99-hhvm, but use some saner value
%define php_version 5.6.0
-# git show HHVM-3.3.3
-%define githash 54b5f51c3670fe55852b6dab17a47c67b2271116
+# git show HHVM-3.3.7
+%define githash e0344cb6ab126e50e611332f03f447f586cc763a
# these hashes are git submodules (be sure to check them on proper branch)
# GIT_DIR=third-party/.git git log -1
%define thirdparty bf581f8
-# 6e46d468cf2876dd59c7a4dddcb4e37abf070b7a
# GIT_DIR=third-party/folly/src/.git git log -1
%define folly 6e46d46
Summary: Virtual Machine, Runtime, and JIT for PHP
Name: hhvm
# we prefer LTS versions
# see http://hhvm.com/blog/6083/hhvm-long-term-support
-Version: 3.3.3
-Release: 1
+Version: 3.3.7
+Release: 13
License: PHP 3.01 and BSD
Group: Development/Languages
Source0: https://github.com/facebook/hhvm/archive/HHVM-%{version}.tar.gz
-# Source0-md5: 89c620e2df253530a4f6f1a185ec913a
+# Source0-md5: 8df12eef8702515498d6a6caab6e4b7d
Source2: https://github.com/facebook/folly/archive/%{folly}/folly-3.2-%{folly}.tar.gz
# Source2-md5: c4bdbea4c0ffe0650d12d9ff370b8255
Source3: https://github.com/hhvm/hhvm-third-party/archive/%{thirdparty}/third_party-%{thirdparty}.tar.gz
Patch3: MAX.patch
Patch4: system-thirdparty.patch
Patch5: cmake.patch
+Patch6: libvpx2.patch
+Patch7: gcc5.patch
+Patch8: cxx.patch
+Patch9: gcc6.patch
+Patch10: libevent-2.1.patch
+Patch11: icu59.patch
URL: https://github.com/facebook/hhvm/wiki
BuildRequires: ImageMagick-devel
BuildRequires: a52dec-libs-devel
#BuildRequires: flex >= 2.5.35
BuildRequires: libafdt-devel >= 0.1.0
#BuildRequires: re2c >= 0.13.0
+BuildConflicts: ImageMagick6-devel
Provides: %{name}(api) = %{hhvm_api_version}
Provides: php(core) = %{php_version}
# foreach (get_loaded_extensions() as $ext) printf("Provides:\tphp(%s)\n", strtolower($ext));
%patch2 -p1
%patch3 -p1
%patch4 -p1
-%patch5 -p1
+#%patch5 -p1
+%patch6 -p1
+%patch7 -p1
+%patch8 -p1
+%patch9 -p1
+%patch10 -p1
+%patch11 -p1
# prefer ones from system
rm CMake/FindBISON.cmake
rm CMake/FindFreetype.cmake
# ensure system libs get used
-# NOTE: keep sqlite dir, build breaks with 3.8.5.0
-
cd third-party
rm -r pcre \
+ %{?with_system_sqlite:libsqlite3} \
%{?with_system_lz4:lz4} \
%{?with_system_dconv:double-conversion} \
%{?with_system_fastlz:fastlz} \
exit 1
fi
+export CXXFLAGS="%{rpmcxxflags} -fpermissive -I/usr/include/lz4"
+
# out of dir build broken (can't find it's tools, or headers)
#install -d build
#cd build
-DUSE_JEMALLOC=OFF \
-DUSE_TCMALLOC=OFF \
-DTEST_BIN=OFF \
- -DPCRE_LIBRARY=OFF \
- %{?with_system_sqlite:-DLIBSQLITE3_LIBRARY=OFF} \
- %{?with_system_lz4:-DLZ4_LIBRARY=OFF} \
- %{?with_system_dconv:-DDOUBLE_CONVERSION_LIBRARY=OFF} \
- %{?with_system_fastlz:-DFASTLZ_LIBRARY=OFF} \
- %{?with_system_libafdt:-DLIBAFDT_LIBRARY=OFF} \
- %{?with_system_libzip:-DLIBZIP_LIBRARY=OFF} \
-DENABLE_COTIRE=%{!?with_cotire:OFF}%{?with_cotire:ON} \
.