OpenMEEG
Toggle main menu visibility
Loading...
Searching...
No Matches
OpenMEEGMaths
include
OpenMEEGMathsConfig.h
Go to the documentation of this file.
1
// Project Name: OpenMEEG (http://openmeeg.github.io)
2
// © INRIA and ENPC under the French open source license CeCILL-B.
3
// See full copyright notice in the file LICENSE.txt
4
// If you make a copy of this file, you must either:
5
// - provide also LICENSE.txt and modify this header to refer to it.
6
// - replace this header by the LICENSE.txt content.
7
8
#pragma once
9
10
// cmake configuration.
11
12
#include <OpenMEEGConfigure.h>
13
#include <OpenMEEGMaths_Export.h>
14
15
// specially for windows
16
#ifdef WIN32
17
#pragma inline_recursion(on)
18
#pragma inline_depth(255)
// MSVC static build with MKL cause LNK2019 error
19
#if defined(_MSC_VER)
20
// Enable MSVC compiler warning messages that are useful but off by default.
21
#pragma warning(default : 4263)
/* no override, call convention differs */
22
// Disable MSVC compiler warning messages that often occur in valid code.
23
#pragma warning(disable : 4097)
/* typedef is synonym for class */
24
#pragma warning(disable : 4127)
/* conditional expression is constant */
25
#pragma warning(disable : 4244)
/* possible loss in conversion */
26
#pragma warning(disable : 4251)
/* missing DLL-interface */
27
#pragma warning(disable : 4305)
/* truncation from type1 to type2 */
28
#pragma warning(disable : 4309)
/* truncation of constant value */
29
#pragma warning(disable : 4514)
/* unreferenced inline function */
30
#pragma warning(disable : 4706)
/* assignment in conditional expression */
31
#pragma warning(disable : 4710)
/* function not inlined */
32
#pragma warning(disable : 4786)
/* identifier truncated in debug info */
33
#pragma warning(disable : 4244)
/* possible loss of data ('float' to 'mat_uint32_t') */
34
#pragma warning(disable : 4267)
/* possible loss of data (size_t to int) */
35
#endif
36
#endif
37
38
// Blas/Lapack configuration
39
40
#if defined(USE_LAPACK)
41
#include <BlasLapackImplementations/OpenMEEGMathsBlasLapackConfig.h>
42
#elif defined(USE_MKL)
43
#include <BlasLapackImplementations/OpenMEEGMathsMKLConfig.h>
44
#elif defined(USE_ATLAS)
45
#include <BlasLapackImplementations/OpenMEEGMathsAtlasConfig.h>
46
#elif defined(USE_OPENBLAS)
47
#include <BlasLapackImplementations/OpenMEEGMathsOpenBLASConfig.h>
48
#elif defined(USE_FLEXIBLAS)
49
#include <BlasLapackImplementations/OpenMEEGMathsFlexiBLASConfig.h>
50
#else
51
#warning "No blas/lapack implementation selected."
52
#endif
53
54
#define DPOTF2 LAPACK(dpotf2,DPOTF2)
55
#define DSPEVD LAPACK(dspevd,DSPEVD)
Generated by
1.17.0