# Adding a new source file¶

Whenever you create a new source file you need to tell CMake what target it belongs to. We maintain lists of source files that are compiled into each of our libraries and executables. For example, see the core_SRCS variable in CMakeLists.txt.

# Adding support for another HPC facility¶

• Create a file CMake/find_dependencies_<name>.cmake. This will contain the location of XGC’s dependencies at this HPC facility.

• Add the facility name to the list of possible values of XGC_PLATFORM in our top-level CMakeLists.txt file.

# Adding a new configuration option¶

• In our top-level CMakeLists.txt, use the option command to create a new boolean option in the XGC build system.