On 8/30/06, Geoffrey Winn <[EMAIL PROTECTED]> wrote: <snip>. Using the Apache stdcxx library instead would provide
us with a number of benefits
Agreed. +1 for this. The one difficulty is that once SDO links against the stdcxx library then
all users of SDO must also do so. I think this gives us two options 1. Just do it, and live with the consequences. In this case we will (one way or another) pre-req stdcxx on all platforms, and all users of SDO for C++ will be required to use stdcxx as their C++ standard library. 2. Create a build time switch that chooses between whatever the platform offers (ie the current arrangement) and stdcxx. Presumably defaulting to the current arrangement. I prefer option 2 but obviously it somewhat complicates our build process and perhaps more seriously adds another complication to our test cases. What does the team think?
My preference is also for option 2 as it gives our users more choice. However, we may find ourselves #ifdef-ing chunks of code out to get around the aforementioned differences in libraries (see Pete's map problem on Windows yesterday..) which will make code less readable, etc. I think starting this with the SDO codebase is a good idea, as this is a relatively standalone set of code, and will give us a good idea what the issues are with this approach. A side question - SDO has a couple of pre-reqs (libxml2, etc) - will these need to be rebuilt against stdcxx as well? Cheers Andy