Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 360699

Summary: Facebook HipHop PHP->C++ compiler framework ebuild request
Product: Gentoo Linux Reporter: Anton Kochkov <anton.kochkov>
Component: Current packagesAssignee: Default Assignee for New Packages <maintainer-wanted>
Status: RESOLVED OBSOLETE    
Severity: enhancement CC: anton.kochkov, arne_bab, bugs+gentoo, jer, marek, master_temp, orzel, php-bugs, robink, StormByte
Priority: Normal Keywords: EBUILD, PATCH
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: dev-php/hiphop-php-20120714.ebuild
files/hphp
files/hphpi
files/support-curl-7.21.7.patch
files/use_pcre_fullinfo.patch
dev-php/hiphop-php-20120714.ebuild
dev-php/hiphop-php-20120714.ebuild
files/hphp
files/hphpi
dev-php/hiphop-php-20120714.ebuild

Description Anton Kochkov 2011-03-27 05:50:24 UTC
"HipHop for PHP transforms PHP source code into highly optimized C++. It was developed by Facebook and was released as open source in early 2010.

HipHop transforms your PHP source code into highly optimized C++ and then compiles it with g++ to build binary files. You keep coding in simpler PHP, then HipHop executes your source code in a semantically equivalent manner and sacrifices some rarely used features – such as eval() – in exchange for improved performance.

Facebook sees about a 50% reduction in CPU usage when serving equal amounts of Web traffic when compared to Apache and PHP. Facebook’s API tier can serve twice the traffic using 30% less CPU." - from HipHop wiki

Here is home of project - https://github.com/facebook/hiphop-php


Reproducible: Always
Comment 1 Anton Kochkov 2011-03-27 06:04:30 UTC
here is commit for support 32bit https://github.com/sanxiyn/hiphop-php/commit/eb9e4d83a253479950497d38ed8a01cc1eb5df18
Comment 2 David Carlos Manuelda 2012-05-24 20:34:24 UTC
Any news or any maintainer for this one? It is very interesting to have this in Gentoo, specially if the server is Gentoo also!
Comment 3 Pavel Procopiuc 2012-07-19 11:43:45 UTC
Created attachment 318626 [details]
dev-php/hiphop-php-20120714.ebuild

Initial ebuild for hiphop, rather dirty, but handles necessary depencencies and patches and gets the job done. Installs itself and custom libraries into /usr/lib/hiphop-php + launcher scripts into /usr/bin. Keyworded as ~amd64 only as Facebook claims it works only on x86_64.
Comment 4 Pavel Procopiuc 2012-07-19 11:44:00 UTC
Created attachment 318628 [details]
files/hphp
Comment 5 Pavel Procopiuc 2012-07-19 11:44:15 UTC
Created attachment 318630 [details]
files/hphpi
Comment 6 Pavel Procopiuc 2012-07-19 11:44:32 UTC
Created attachment 318632 [details, diff]
files/support-curl-7.21.7.patch
Comment 7 Pavel Procopiuc 2012-07-19 11:44:44 UTC
Created attachment 318634 [details, diff]
files/use_pcre_fullinfo.patch
Comment 8 Pavel Procopiuc 2012-07-19 11:48:04 UTC
Created attachment 318636 [details]
dev-php/hiphop-php-20120714.ebuild
Comment 9 Pavel Procopiuc 2012-07-19 14:10:27 UTC
Created attachment 318642 [details]
dev-php/hiphop-php-20120714.ebuild
Comment 10 Pavel Procopiuc 2012-07-19 14:10:38 UTC
Created attachment 318644 [details]
files/hphp
Comment 11 Pavel Procopiuc 2012-07-19 14:10:49 UTC
Created attachment 318646 [details]
files/hphpi
Comment 12 Pavel Procopiuc 2012-07-20 07:06:09 UTC
Created attachment 318694 [details]
dev-php/hiphop-php-20120714.ebuild
Comment 13 Ole Markus With (RETIRED) gentoo-dev 2012-10-11 13:17:17 UTC
Probably best to put this in an overlay. I do not see how we can add those required patches.
Comment 14 Arne Babenhauserheide 2013-05-08 11:28:35 UTC
From what I can see, HipHop additionally requires net-libs/c-client.

I tried to build it via 

    layman -o http://gpo.zugaina.org/lst/gpo-repositories.xml -a bgo-overlay -f
    emerge hiphop-php

The build process fails at 61%, though. Last part of the log:

[ 61%] Building CXX object src/CMakeFiles/hphp_runtime_static.dir/runtime/ext/ext_simplexml.cpp.o
[ 61%] Building CXX object src/CMakeFiles/hphp_runtime_static.dir/runtime/ext/ext_mcrypt.cpp.o
[ 61%] Building CXX object src/CMakeFiles/hphp_runtime_static.dir/runtime/ext/ext_memcache.cpp.o
[ 61%] Building CXX object src/CMakeFiles/hphp_runtime_static.dir/runtime/ext/ext_mb.cpp.o
/var/tmp/portage/dev-php/hiphop-php-20120714/work/hiphop-php-20120714/src/runtime/ext/ext_simplexml.cpp: In Elementfunktion »HPHP::Variant HPHP::c_SimpleXMLElement::t_asxml(HPHP::CStrRef)«:
/var/tmp/portage/dev-php/hiphop-php-20120714/work/hiphop-php-20120714/src/runtime/ext/ext_simplexml.cpp:433:36: Fehler: falsche Benutzung des unvollständigen Typs »xmlBuf {aka struct _xmlBuf}«
/usr/include/libxml2/libxml/tree.h:104:16: Fehler: Vorwärtsdeklaration von »xmlBuf {aka struct _xmlBuf}«
/var/tmp/portage/dev-php/hiphop-php-20120714/work/hiphop-php-20120714/src/runtime/ext/ext_simplexml.cpp:433:61: Fehler: falsche Benutzung des unvollständigen Typs »xmlBuf {aka struct _xmlBuf}«
/usr/include/libxml2/libxml/tree.h:104:16: Fehler: Vorwärtsdeklaration von »xmlBuf {aka struct _xmlBuf}«
[ 61%] Building CXX object src/CMakeFiles/hphp_runtime_static.dir/runtime/ext/ext_posix.cpp.o
make[2]: *** [src/CMakeFiles/hphp_runtime_static.dir/runtime/ext/ext_simplexml.cpp.o] Fehler 1
Comment 15 Brian Evans (RETIRED) gentoo-dev 2017-05-30 17:58:38 UTC
This project is now hhvm