[ https://issues.apache.org/jira/browse/THRIFT-851?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12905087#action_12905087 ]
Dave Engberg commented on THRIFT-851: ------------------------------------- This broke the marshaling of i64 data on Windows when compiling with Visual Studio. I.e. i64 marshals correctly via TBinaryProtocol::readI64() using the Thrift 0.4.0 tag, but marshals incorrectly with the current Thrift trunk. Here's the only delta (in TProtocol.h): -#ifdef HAVE_ENDIAN_H -#include <endian.h> +#ifdef HAVE_SYS_PARAM_H_ +#include <sys/param.h> #endif Since 'endian.h' was removed from the header, the conditional macros that check for endian-ness don't appear to do the right thing on Windows. > php extension fails to compile on centos 5.x > -------------------------------------------- > > Key: THRIFT-851 > URL: https://issues.apache.org/jira/browse/THRIFT-851 > Project: Thrift > Issue Type: Bug > Components: PHP - Library > Affects Versions: 0.4 > Reporter: Anthony Molinaro > Assignee: Todd Lipcon > Fix For: 0.5 > > Attachments: php-ext-include.patch, thrift-851.txt > > > At some point the includes for endian.h and byte_order.h were changed from > #include <endian.h> > #include <byteswap.h> > to > #include <machine/endian.h> > #include <machine/byte_order.h> > Unfortunately the latter files only exist on bsd and bsd derived systems like > Mac OSX. > I fixed it by using some ifdef's and using the old includes on linux. > Patch is attached -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.