See the README_maven.txt and README.txt for background.
Basically the patch adds
1) maven support for the main app
2) contrib/recipes/C are currently still built by ant/autotools. See the readme, but the basic idea is to move over to mvn slowly, incrementally, rather than one huge "refactor the world, oh and change the build system at the same time".
3) ant/mvn will live side-by-side while we work out the kinks.
4) I modeled things after Avro - specifically if you work on java you can use mvn, if you work on C you can use autotools, if you need to work with everything (say release manager) then you just "./build.sh dist;./build.sh sign" from the toplevel and publish as a release candidate.
Summary of current status:
everything builds, tests, and packages
try running "./build.sh test" or follow the instructions to create an eclipse project that you can import into eclipse (notice that you get all the javadoc and source for dependencies!)
eod this should be a win for developers, consumers (esp maven), something we can build on, and a HUGE win for release managers.
there are still a few todos as listed in the readme. In particular the version generation is current turned off, it's hardcoded for now.