OrderN / CONQUEST-release

Full public release of large scale and linear scaling DFT code CONQUEST
http://www.order-n.org/
MIT License
96 stars 25 forks source link

Version control system.make for different machines #247

Closed tkoskela closed 8 months ago

tkoskela commented 9 months ago

At the moment, the user needs to make local changes to system.make to build on different systems with different compilers, library paths, etc. This causes a lot of faff with git not being able to deal with local changes. My suggestion is: keep version controlled versions of system.make for machines we commonly run on, perhaps in a separate subdirectory. Modify the makefile so that it attempts to detect the machine it is building on (e.g. with hostname -d, or something similar) and include the correct system.make for that machine.

AugustinLu commented 9 months ago

Would it make sense to do the following?

  1. Put src/system.make in gitignore
  2. Create a makefiles directory containing all tracked system.make templates (ex: system.make.ubuntu20.04, system.make.wsl, system.make.somesystem, etc. + a generic system.make makefile)
  3. Tell the user to copy the relevant makefile as system.make in the documentation.