quantum-espresso/include/defs.h.README

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