Fix RE2 builds and tests on Mac OS X Mavericks
Even after upgrading RE2 to the latest version which addresses
some issues with Mac OS X, I was having trouble linking the C++
test programs with RE2 - and I believe that .chpl programs
using RE2 would not compile either. The source of the problem
was three-fold:
1) Mac OS X does not support static linking of executables
(although it can link with a static library), so using the
--static flag in the tests is not an option.
2) The RE2 build/install process leaves a partial pathname
to the .so encoded in the .so; so that when you link with
that binary it would look for the re2.so in an obj/ directory.
Because of this partial pathname, the usual rpath linker
flag was not enabling the loader to find the required library.
3) When dynamically linking, the list of exported symbols
did not include some that earlier patches to RE2 (to make
it work on channels) added.
To fix these problems, this patch:
1) Adjusts the C++ language Regexp tests to not use
--static on Mac OS X
2) Fixes the RE2 Makefile to update the pathname
in the .so to the absolute destination pathname using
the tool install_name_tool if it exists
3) Adds the missing symbols to libre2.symbols and
libre2.symbols.darwin.
This version passes test/regexp on Linux and has minimal
changes from the one that worked for me with Mac OS X Mavericks.
------------------------------------------------------------------------------
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments & Everything In Between.
Get a Quote or Start a Free Trial Today.
http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
_______________________________________________
Chapel-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/chapel-developers