dev:makefile
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| dev:makefile [2014/07/28 09:30] – oschuett | dev:makefile [2026/01/08 13:28] (current) – removed oschuett | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ====== Makefile ====== | ||
| - | |||
| - | The CP2K Makefile automatically adopts to changes of the code base. | ||
| - | |||
| - | To add a file to the source tree, just create it. The Makefile will automatically discover it, compile it, and link it. Consequently, | ||
| - | |||
| - | The file discovery is based on a simple suffix naming convention: | ||
| - | * **.F files** are Fortran files. They are compiled into an object. They should contain either a '' | ||
| - | * **.f90 files** are included Fortran files. They are **not** compiled into an object. | ||
| - | * **.c files** are C-files. They are compiled into an object. | ||
| - | * **.cu files** are Cuda-C-files. They are compiled into an object using Nvidia' | ||
| - | * **.h files** are C-header files. They are included by .c or .cu files. They are **not** compiled into an object. | ||
| - | |||
| - | Furthermore, | ||
| - | |||
| - | ===== Compiling Multiple Versions ===== | ||
| - | |||
| - | The Makefile allows to compile multiple versions of all build targets in parallel: | ||
| - | < | ||
| - | $ make ARCH=Linux-x86-64-gfortran VERSION=" | ||
| - | </ | ||
| - | building only the main CP2K binary can be done as | ||
| - | < | ||
| - | $ make ARCH=Linux-x86-64-gfortran VERSION=" | ||
| - | </ | ||
dev/makefile.1406539823.txt.gz · Last modified: (external edit)
