sabel83/metashell — pull request #1 by abigagli (2014-01-27 12:44:15+00:00)
Title: Fixed compilation on OSX >= Mavericks, but still need special CXXFLAGS, see pull request comment

Hi, if you're interested I made a couple of small tweaks to build on OSX 10.9 with Xcode5's clang and libc++.
There's a slight problem in the code, specifically at lib/cxtranslationunit.cpp#119 where the address of std::string::c_str is taken, that causes linking to fail though.
As pointed out in http://clang-developers.42468.n3.nabble.com/LIBCPP-INLINE-VISIBILITY-and-std-string-length-td4030879.html, "[...] this code is not required to work, because you are not generally allowed to take the address of functions from the standard library".
In any case, adding -D'_LIBCPP_EXTERN_TEMPLATE(...)=' (as suggested in the linked page) to the CXXFLAGS, solves the link problem.
I didn't find an easy way for CMakeLists.txt to detect if it was using libc++ and hence activate the fix, I could just apply it if "__APPLE__" was defined, but that's not really the right way to do it, so I leave to you deciding, if you want, how to apply that.

Andrea.