On 2/14/16 11:58 PM, Vladimir Prus wrote:
a) Current status is that I can pass all my tests on my local machine - Mac OSX when building static libraries. But now - due to a change from an "upgrade" to El Capitan - boost build won't build and run tests for shared libraries on this plaform.
It's certainly unfortunate that Apple chose to break some many things in El Capitan,
Of course I would like to see this fixed - but truth is I don't think it's holding me up all that much. My normal mode is to test with static libraries and then check in to the develop branch and watch the test matrix. These days it never happens that it passes on the static library test but fails on the shared library tests. So as I said it's not holding me up that much. It is of value to run in all 4 combinations of static/shared debug/release because some combinations eliminated code which is not explicitly called - so called dead code. But the serialization library can require code which is not explicitly referred to by name - code which "looks like" dead code. So one has to take special precautions to make sure that code doesn't get eliminated. The good news is that once one has done this, it seems the problem is eliminated once and for all - at least for the last 10 years.
and it's alarming that you're the first to notice the issue as it related to Boost testing.
Well, El Capitan has been out only a short time - and I'm sure a lot of people have not upgraded so I wouldn't get alarmed. Anyway, we
discussed some options on Boost.Build list, and hopefully we'll have them implemented in time for 1.61.
To me, more urgent is the problem associated with b2 on cygwin. I've noted on this list. Basically if one builds b2 using the bootstrap.sh under cygwin it seems that it get's the / and \ mixed up in the pathnames. And this prevents b2 from working correctly. I wouldn't be surprised if this isn't also a problem with mingw on windows as well. I'm guessing this probably an easy fix for you. I also mentioned that the "regression" tools aren't tested in accordance with Boost customs. I think you (or whoever) should consider this. These tools only are on the develop but not the master branch - and as far as I know - aren't subjected to regular boost testing. I know it seems like a pain to setup - but once it's been done you get a lot of testing without having to spend any time on it. Robert Ramey