This lesson is still being designed and assembled (Pre-Alpha version)


The ATLAS software, called athena, itself is a very large project containing many packages. To help define all of the dependencies, CMake is used to manage the build process. To make a developer’s life easier, athena defines several custom macros. This lesson describes how to use these custom macros to build an user package.


This assumes that you’ll have a basic knowledge of CMake, for example:

  1. What out-of-source builds are
  2. How to write a simple CMakeList.txt
  3. How to generate a Makefile from a CMakeLists.txt

This lesson will also build on the AnalysisPayload project started in the previous ATLAS GitLab lesson.


Setup Download files required for the lesson
00:00 1. Introduction to ATLAS Offline Software What is atlas/athena and what release should I be using?
00:20 2. Your Workspace How should I organize my code?
01:00 3. The Top-Level CMakeLists.txt How do I tell CMake about all my packages?
01:30 4. The Package CMakeLists.txt How do I compile my package?
02:10 5. Coffee break! How much coffee can you drink in 20 minutes?
Is LBL coffee better than CERN coffee?
Which are the best cookies?
02:10 6. Calibrate Your Jets How do you use Athena tools?
03:00 7. Modyfing an Athena Package How do I modify a package inside the athena repository?
03:40 Finish

The actual schedule may vary slightly depending on the topics and exercises chosen by the instructor.