When we build root with the e6 compiler, root-config does not supply the expected flags. The issue is that the root-config in root v5_34_21b always tells you to use --std=c++11, even it root was actually built with -std=c++1y. This is because root does not want to force the end user to use unnecessary flags. Flags passed in via MyRules.mk are not added to root-config. Since root did not yet have --enable-cxx14, we used MyRules to add -std=c++1y.
Philippe commited several bug fixes the the head of the 5.34.xx branch. He added --enable-cxx14 and also --cxxflags and --cflags. Options added with --cxxflags will be reported by root-config.
We have been building 5.34.21 with patches. There have been a lot of changes, including some for thread safety. Philippe's commits work as expected with the head of the 5.34 branch.
However, using the config from the head of the 5.34 branch with 5.34.21 works, but gives warnings under Mavericks:
include/TGLTH3Composition.h:60:34: warning: ‘auto_ptr’ is deprecated (declared at /Users/garren/jenkins/workspace/LArSoft-release-MountainLion-build/build/gcc/v4_9_1/Darwin64bit+12/include/c++/4.9.1/backward/auto_ptr.h:87) [-Wdeprecated-declarations]
Since we see no such warnings when building without the new config, we would need to backport the changes instead of picking them up directly from the head.
However, root 5.34.23 is now scheduled to be released this week. I would like to wait and build with root 5.34.23 as soon as it is available.