Pending approval from other committers, I'm going to commit a number of
changes to Thrift's build scripts and source code (the latter are
minor).  A preview of the changes is at

http://gitweb.thrift-rpc.org/?p=thrift.git;a=log;h=refs/heads/pri/dreiss/build-changes;hb=HEAD

You can click "commitdiff" next to each commit to see the full diff.
I'll upload patches to JIRA shortly.  These changes span the following
issues: 500, 503, 505, 506, 507, 850, 865, 874.

The new features include:

- "make check"-enabled C++ tests moved from /test to /lib/cpp/test
- configure accepts --disable-cpp to skip building the C++ runtime.
- The compiler no longer depends on Boost.
- The compiler no longer requires lex or yacc, if building from a
  release (or instant release) tarball.  (This is why thrifty.h,
  thrifty.cc, and thriftl.cc are included in the tarballs.  I just had
  to make a small change to remove the dependency on libfl.)
- A script is included to cross-compile a Windows binary of the Thrift
  compiler from a stock Ubuntu 10.04 machine (with the gcc-ming32
  package).
  
I was able to build the compiler from a release-style tarball on a stock
CentOS 5.2 machine (with g++ installed via yum) by running

./configure && make -C compiler/cpp

Note that this machine does *not* have autoconf, automake, libtool, lex,
flex, yacc, bison, or boost installed.

I am not able to test on a Mac, but I would appreciate if the people who
have had problems building on Mac OS X would download this tarball, run
the same command, and report any problems they encounter.  If I don't
hear back, I will assume that there are no problems whatsoever building
on Mac OS X: http://people.apache.org/~dreiss/thrift-e0db3ee.tar.gz

Because procedure to cross-compile for Windows is so ridiculously easy,
I will be producing Windows binaries of the compiler for all of our
future releases.  You can nab a build of the latest trunk at
http://people.apache.org/~dreiss/thrift-e0db3ee.exe

--David

Reply via email to