Skip to content

CMake Updates, master branch (2019.04.10.)

This whole thing started out to just add the ability to build "static" and "object" libraries with atlas_add_library(...). Meant for ATLASSIM-3150.

But as I was doing that, I decided that I should do a big cleanup of AtlasCMake at the same time. One that I've been thinking about for more than a year now. So here it goes...

The largest change is that I tried to remove all mentions of the "package rebuilding" feature of the code. (This is the feature that was inspired by RootCore, allowing users to build 1-2 packages in their build directory, and let CMake figure out which packages need to be re-built from the base release to get a completely functional runtime environment.) That feature has never quite worked well, and it was responsible for about 1k lines of code.

At the same time I also rationalised some parts of the code a bit. (Parts that I wrote amongst the first while developing our CMake code many years ago.) Re-arranged files in the projects a bit. Moved files in the build directory into more hidden locations than before. (In order to make in-source builds more of a possibility.) And so on...

I did have to update atlas/athena a bit to compile successfully after these updates. You can find those modifications in: https://gitlab.cern.ch/akraszna/athena/commits/CMakeModernisation-master-20190409 Eventually those will become part of the merge request that updates the athena repository to this new version of the externals.

Merge request reports