Skip to content

WIP: GaudiAIDA subdirectory creation

This is a follow-up of merge request 241.

In this modification I created a new subdirectory called GaudiAIDA, and moved all the AIDA dependent source code from GaudiUtils and GaudiAlg in there. Direct AIDA dependencies still remain in GaudiCommonSvc, GaudiExamples, GaudiGSL, GaudiPython and RootHistCnv. (AIDA is used a lot in the code.) But in those cases it didn't seem to bring an improvement to move the source files into the new subdirectory.

Things to note:

  • The CMakeLists.txt file of both GaudiUtils and GaudiAlg simplifies a lot with this update.
  • There are some macOS updates in the merge request as well. Which I only noticed when building the project on macOS with all optional externals provided. As it turns out Apple's clang doesn't allow std::next to be used on boost::iterators::filter_iterator. So I had to update the code in GaudiKernel to use std::advance instead.

akraszna/GaudiGaudi@325bfb77

  • The update moves a bunch of base classes into the new GaudiAIDA subdirectory. And since GaudiAIDA depends on GaudiAlg, it was not possible to leave forwarding headers behind in GaudiAlg so that clients could only adapt to the changes later on. This means that probably a fair amount of code should be updated in the LHCb projects to accommodate this change. (ATLAS doesn't use any of those base classes.)

As a result of all of this I don't expect this modification to go in quickly/easily. I guess on first order this is just to discuss what people think of this implementation...

Attila

Merge request reports