https://github.com/facebook/hhvm/commit/6b5614711b7e55928d834e181934f7f5cc525e5a (current master)
cmake .
make
Build succeeds
...
[ 17%] Building CXX object third-party/proxygen/CMakeFiles/hphp_proxygen.dir/src/proxygen/lib/http/codec/HTTP2Codec.cpp.o
./third-party/proxygen/src/proxygen/lib/http/codec/HTTP2Codec.cpp: In member function ‘virtual void proxygen::HTTP2Codec::generateHeader(folly::IOBufQueue&, proxygen::HTTPCodec::StreamID, const proxygen::HTTPMessage&, proxygen::HTTPCodec::StreamID, bool, proxygen::HTTPHeaderSize*)’:
./third-party/proxygen/src/proxygen/lib/http/codec/HTTP2Codec.cpp:988:69: error: no match for ‘operator=’ (operand types are ‘boost::optional<proxygen::http2::PriorityUpdate>’ and ‘<brace-enclosed initializer list>’)
pri = {std::get<0>(*res), std::get<1>(*res), std::get<2>(*res)};
^
In file included from ./third-party/proxygen/lib/http/HTTPMethod.h:12:0,
from ./third-party/proxygen/lib/http/HTTPMessage.h:23,
from ./third-party/proxygen/lib/http/codec/HTTPRequestVerifier.h:12,
from ./third-party/proxygen/lib/http/codec/HTTP2Codec.h:12,
from ./third-party/proxygen/src/proxygen/lib/http/codec/HTTP2Codec.cpp:10:
I'm using Boost 1.63 on Arch Linux. This error is probably fixed by https://github.com/facebook/proxygen/commit/aa22632d8cef3c04cfcabd83b21b9adbc06e780e so it may just be a matter of updating Proxygen in third-party (which I tried, but ran into other errors which I'm not sure were related or not).
I've got a diff in-progress to update our third-party build, I just hit a lot of separate broken things that I had to fix separately. Those fixes have now landed (I'll have to delay the squangle & mysql upgrades for the moment), so I'll try the update again.
Works now, thanks @Orvid.
Most helpful comment
I've got a diff in-progress to update our third-party build, I just hit a lot of separate broken things that I had to fix separately. Those fixes have now landed (I'll have to delay the squangle & mysql upgrades for the moment), so I'll try the update again.