mirror of https://gitlab.com/QEF/q-e.git
89 lines
3.6 KiB
Plaintext
89 lines
3.6 KiB
Plaintext
|
|
----------------------------------------------------------------------------
|
|
CONFIGURATION FILES
|
|
|
|
You shouldn't need to edit the following files. The first three
|
|
are automatically generated by "configure".
|
|
|
|
* include/configure.h
|
|
==================
|
|
automatically generated by configure using include/configure.h.in
|
|
as template - contains compilation info, used in initial printout
|
|
|
|
* include/fft_defs.h
|
|
==================
|
|
automatically generated by configure using include/fft_defs.h.in
|
|
as template - included in Modules/fft_scalar.f90
|
|
contains the type for C pointers called by fortran:
|
|
C_POINTER is integer*8 for 64-bit machines,
|
|
integer*4 on most other machines
|
|
DO NOT add C-style comments! some fortran compilers do not like them
|
|
OBSOLESCENT: to be replaced by ISO C binding definitions
|
|
|
|
* include/c_defs.h
|
|
================
|
|
automatically generated by configure using include/c_defs.h.in
|
|
as template - included in C files in clib/ . Contains:
|
|
|
|
1) #define HAVE_MALLINFO
|
|
if the mallinfo structure is present (Linux, AIX)
|
|
|
|
2) Macros redefining C symbols so that Fortran finds them
|
|
F77_FUNC, F77_FUNC_
|
|
C routine 'name' in *.c files are defined as
|
|
F77_FUNC('name','NAME')
|
|
if 'name' does not contain an underscore; if it does, as
|
|
F77_FUNC_('name','NAME')
|
|
OBSOLESCENT: to be replaced by ISO C binding definitions
|
|
|
|
* iotk/include/iotk_config.h
|
|
=========================
|
|
contains definitions for iotk . Defines on output:
|
|
__IOTK_REAL1 kind for single-precision reals
|
|
__IOTK_REAL2 kind for double-precision reals
|
|
__IOTK_WORKAROUND* various workarounds for miscellaneous compiler bugs
|
|
(accept from 1 to 10)
|
|
|
|
----------------------------------------------------------------------------
|
|
|
|
PREPROCESSING OPTIONS USED IN *.h FILES AND IN THE SOURCES
|
|
|
|
Hardware / Compiler:
|
|
__AIX Ibm rs/6000 machines
|
|
__XLF xlf compiler (ibm or macintosh with powerpc processor)
|
|
__SX6 Nec sx-6 vector machines (Nec compiler)
|
|
__PGI Portland Group compiler workarounds for compiler bugs
|
|
__GFORTRAN GNU gfortran workarounds for compiler bugs
|
|
__INTEL Intel compiler workarounds for compiler bugs
|
|
|
|
Parallel execution:
|
|
__PARA Parallel execution - OBSOLETE
|
|
__MPI Use MPI library
|
|
__OPENMP OpenMP parallelization
|
|
|
|
Libraries:
|
|
__FFTW FFT routines from internal FFTW library
|
|
__FFTW3 FFT routines from external FFTW v.3 library
|
|
__DFTI FFT routines from Intel MKL library
|
|
__ARM_LIB EFT routines from ARM Performance library
|
|
__LINUX_ESSL Use blas/lapack/fft routines from IBM ESSL library
|
|
(linux version; aix version no longer supported)
|
|
__SCALAPACK Use Scalapack routines instead of internal ones
|
|
for parallel subspace diagonalization
|
|
__ELPA Use ELPA library, it replaces some Scalapack calls
|
|
__MASS Use mathematical routines from IBM MASS library
|
|
ASL, MICRO SX-6 specific libraries
|
|
|
|
Signals:
|
|
__PTRACE Enable traceback
|
|
__TRAP_SIGUSR1 Enable signal trapping (experimental): code will stop
|
|
and save data if executable is signaled with USR1
|
|
IO / Reporting:
|
|
__XSD Enable XML format
|
|
__HDF5 Enable I/O using parallel HDF5 (Fortran 2003
|
|
features needed to compile)
|
|
__CLOCK_SECONDS Translate clock from HH:mm:ss to only seconds
|
|
|
|
All other preprocessing flags are for debugging purposes and should not be
|
|
used unless you know what you are doing
|