1 /*
2  * Include file for the configuration of Ipopt.
3  *
4  * On systems where the code is configured with the configure script
5  * (i.e., compilation is always done with HAVE_CONFIG_H defined), this
6  * header file includes the automatically generated header file, and
7  * undefines macros that might configure with other Config.h files.
8  *
9  * On systems that are compiled in other ways (e.g., with the
10  * Developer Studio), a header files is included to define those
11  * macros that depend on the operating system and the compiler.  The
12  * macros that define the configuration of the particular user setting
13  * (e.g., presence of other COIN packages or third party code) are set
14  * here.  The project maintainer needs to remember to update this file
15  * and choose reasonable defines.  A user can modify the default
16  * setting by editing this file here.
17  *
18  */
19 
20 #ifndef __IPOPTCONFIG_H__
21 #define __IPOPTCONFIG_H__
22 
23 // VC++ tries to be secure by leaving bounds checking on for STL containers
24 // even in Release mode. This macro exists to disable that feature and can
25 // result in a considerable speedup.
26 // CAUTION: every linked-together compilation unit must have this set the same
27 // way. Everyone who properly includes SimTKcommon/internal/common.h
28 // first is fine but IpOpt doesn't do that. (TODO: it should)
29 // (sherm 081204 disabling for now: doesn't work on VC++ 8 and is
30 // tricky on VC++ 9 because all libraries, including 3rd party, must
31 // be built the same way)
32 //#ifdef _WIN32
33 //    #ifdef NDEBUG
34 //        #undef _SECURE_SCL
35 //        #define _SECURE_SCL 0
36 //    #endif
37 //#endif
38 
39 #ifdef HAVE_CONFIG_H
40 #include "config_ipopt.h"
41 
42 /* undefine macros that could conflict with those in other config.h
43    files */
44 #undef PACKAGE
45 #undef PACKAGE_BUGREPORT
46 #undef PACKAGE_NAME
47 #undef PACKAGE_STRING
48 #undef PACKAGE_TARNAME
49 #undef PACKAGE_VERSION
50 #undef VERSION
51 
52 #else /* HAVE_CONFIG_H */
53 
54 /* include the COIN-wide system specific configure header */
55 #include "configall_system.h"
56 
57 /***************************************************************************/
58 /*             HERE DEFINE THE CONFIGURATION SPECIFIC MACROS               */
59 /***************************************************************************/
60 
61 /* Define to the debug sanity check level (0 is no test) */
62 #define COIN_IPOPT_CHECKLEVEL 0
63 
64 /* Define to the debug verbosity level (0 is no output) */
65 #define COIN_IPOPT_VERBOSITY 0
66 
67 /* If defined, the Ampl Solver Library is available. */
68 #define COIN_HAS_ASL 1
69 
70 /* If defined, the BLAS Library is available. */
71 #define COIN_HAS_BLAS 1
72 
73 /* Define to 1 if the Ipopt package is used */
74 #define COIN_HAS_IPOPT 1
75 
76 /* If defined, the LAPACK Library is available. */
77 #define COIN_HAS_LAPACK 1
78 
79 /* Define to 1 if MA27 is available */
80 #define HAVE_MA27 1
81 
82 /* Define to 1 if MA57 is available */
83 /* #undef HAVE_MA57 */
84 
85 /* Define to 1 if MC19 is available */
86 #define HAVE_MC19 1
87 
88 /* Define to 1 if MUMPS is available */
89 /* #undef HAVE_MUMPS */
90 
91 /* Define to 1 if Pardiso is available */
92 /* #undef HAVE_PARDISO */
93 
94 /* Define to 1 if you are using the parallel version of Pardiso */
95 /* #undef HAVE_PARDISO_PARALLEL */
96 
97 /* Define to 1 if TAUCS is available */
98 /* #undef HAVE_TAUCS */
99 
100 /* Define to 1 if WSMP is available */
101 /* #undef HAVE_WSMP */
102 
103 #endif /* HAVE_CONFIG_H */
104 
105 /* In the Ipopt code, we use IP_DEBUG to indicate debug compile */
106 #if COIN_IPOPT_DEBUG > 0
107 #define IP_DEBUG 1
108 #endif
109 
110 /* Type of Fortran integer translated into C */
111 typedef FORTRAN_INTEGER_TYPE ipfint;
112 
113 #endif /*__IPOPTCONFIG_H__*/
114