1################################################################################
2# Basic settings
3################################################################################
4
5# Build directory (default: _build within the source tree)
6BUILDDIR := $(ROOT)/_build
7
8# Installation directory
9INSTALLDIR := $(ROOT)/_install
10
11################################################################################
12# Configuration of optional components
13################################################################################
14
15# Whether DFTB+ should support GPU-acceleration, if using remember to
16# set MAGMADIR and LIB_LAPACK to point to the GPU BLAS (CUDADIR/...)
17# in your make.arch file (see make.x86_64-linux-intel for an example)
18WITH_GPU := 0
19
20# Whether DFTB+ should support MPI-parallelism
21WITH_MPI := 0
22
23# Whether DFTB+ with MPI-parallelism should use the ELSI libraries
24WITH_ELSI := 0
25
26# Whether the ELSI libraries are compiled  with PEXSI support
27WITH_PEXSI := 0
28
29# Whether the socket library (external control) should be linked.
30WITH_SOCKETS := 0
31
32# Whether the ARPACK library (needed by TD-DFTB) should be linked with DFTB+
33# Only affects serial build (MPI-version is built without ARPACK/TD-DFTB).
34WITH_ARPACK := 0
35
36# Whether transport via libNEGF should be included.
37# Only affects parallel build (serial version is built without libNEGF/transport)
38WITH_TRANSPORT := 0
39
40# Whether the DFTD3 library (dispersion) should be linked.
41# NOTE: Due to the license of the DFTD3 library, the combined code must be
42# distributed under the GPLv3 license (as opposed to the LGPLv3 license of the
43# DFTB+ package)
44WITH_DFTD3 := 0
45
46################################################################################
47# General building/testing options
48################################################################################
49
50# DEBUG levels:
51# 0 -- production code
52# 1 -- internal runtime checks and reduced compiler optimization
53# 2 -- level 1 checks plus extra runtime compiler checks
54DEBUG := 0
55
56# Whether the API (DFTB+ library) should be built
57BUILD_API := 0
58
59# Whether eventual binaries needed for testing should be also built
60BUILD_TEST_BINARIES := 1
61
62# Nr. of MPI processes used for testing
63TEST_MPI_PROCS := 1
64
65# Nr. of OpenMP shared memory threads used for testing
66TEST_OMP_THREADS := 1
67
68################################################################################
69# Architecture dependent settings
70################################################################################
71
72# Whether DFTD3 should be compiled during the build process. If set to 1 (yes),
73# you will have to download the dftd3 library before starting the build using
74# the utils/get_opt_externals tool.
75# (Only active, if WITH_DFTB3 was set to 1 above.)
76COMPILE_DFTD3 := 1
77
78# Set the compile time include and the link time library options for
79# dftd3-lib. Ignored if WITH_DFTD3 has been disabled or COMPILE_DFTD3 enabled.
80DFTD3_INCS := -I$(PREFIX)/include/dftd3-lib
81DFTD3_LIBS := -L$(PREFIX)/lib -ldftd3
82
83# Link time library options for linking ARPACK. Ignored if WITH_ARPACK was
84# disabled.
85ARPACK_LIBS := -larpack
86
87# Whether ARPACK depends on the external LAPACK and BLAS libraries
88ARPACK_NEEDS_LAPACK := 0
89
90# Include architecture dependent settings from make.arch (make sure to adapt
91# those in make.arch for your system)
92include $(ROOT)/make.arch
93