-
Notifications
You must be signed in to change notification settings - Fork 8
/
configure.ac
128 lines (99 loc) · 4.92 KB
/
configure.ac
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
# Copyright (C) 2006 International Business Machines.
# All Rights Reserved.
# This file is distributed under the Eclipse Public License.
#
# Authors: Andreas Waechter IBM 2006-12-06
# Pietro Belotti
#############################################################################
# Names and other basic things #
#############################################################################
AC_INIT([Couenne],[devel],[https://github.com/coin-or/Couenne/issues/new],[coin-or-couenne],[https://github.com/coin-or/Couenne])
AC_COPYRIGHT([
Copyright 2006 Carnegie Mellon University, International Business Machines and others.
All Rights Reserved.
This file is part of the open source package Coin which is distributed
under the Eclipse Public License.])
# List one file in the package so that the configure script can test
# whether the package is actually there
AC_CONFIG_SRCDIR(src/expression/expression.cpp)
#############################################################################
# Standard build tool stuff #
#############################################################################
# Do some initialization work (version numbers, change prefix default, ...)
AC_COIN_INITIALIZE
# Get the name of the C++ compiler and appropriate compiler options
AC_COIN_PROG_CXX
# Initialize libtool
AC_COIN_PROG_LIBTOOL
#############################################################################
# COIN-OR components #
#############################################################################
AC_COIN_CHK_PKG(Bonmin,[CouenneLib])
if test $coin_has_bonmin != yes ; then
AC_MSG_ERROR([Required package Bonmin not available.])
fi
AC_COIN_CHK_PKG(BonminAmpl,[CouenneLib],[bonminamplinterface])
# more workaround for having ASL deep inside Couenne
if test $coin_has_bonminampl = yes ; then
AC_DEFINE(COUENNEINTERFACE_FROM_ASL, 1, [whether CouenneInterface is derived from Bonmins AmplInterface])
fi
# Osi interfaces to LP solvers
AC_COIN_CHK_PKG(OsiCpx,[CouenneLib],[osi-cplex]) # Osi/Cplex
AC_COIN_CHK_PKG(OsiGrb,[CouenneLib],[osi-gurobi]) # Osi/Gurobi
AC_COIN_CHK_PKG(OsiMsk,[CouenneLib],[osi-mosek]) # Osi/Mosek
AC_COIN_CHK_PKG(OsiSpx,[CouenneLib],[osi-soplex]) # Osi/SoPlex
AC_COIN_CHK_PKG(OsiXpr,[CouenneLib],[osi-xpress]) # Osi/Xpress
#############################################################################
# Other third party software #
#############################################################################
# Nauty library (for symmetry detection)
AC_COIN_CHK_PKG([Nauty],[CouenneLib],[nauty])
AC_LANG_PUSH(C)
# SCIP (used in Feasibility Pump)
AC_COIN_CHK_LIB([SCIP],[CouenneLib],[-lscipsolver],[],[],[SCIPcreate])
# CPLEX (so we can include cplex.h)
AC_COIN_CHK_LIB([Cplex],[CouenneLib],[-lcplex -lpthread -lm -ldl],[],[],[CPXgetstat])
AC_LANG_POP(C)
# for dsyevx in sdpcuts
AC_COIN_CHK_LAPACK(CouenneLib)
#############################################################################
# System header #
#############################################################################
AC_LANG_PUSH(C++)
# for readnl
AC_CHECK_HEADERS([cstdint stdint.h],[break],[])
AC_LANG_POP(C++)
#############################################################################
# Check for doxygen #
#############################################################################
AC_COIN_DOXYGEN(CoinUtils Osi Clp Cgl Cbc Ipopt Bonmin)
##############################################################################
# Finishing up by writing all the output #
##############################################################################
AC_COIN_FINALIZE_FLAGS([CouenneLib])
# Here list all the files that configure should create (except for the
# configuration header file)
AC_CONFIG_FILES([Makefile
test/Makefile
src/main/Makefile
src/bound_tightening/Makefile
src/bound_tightening/twoImpliedBT/Makefile
src/branch/Makefile
src/convex/Makefile
src/interfaces/Makefile
src/heuristics/Makefile
src/disjunctive/Makefile
src/cut/crossconv/Makefile
src/cut/sdpcuts/Makefile
src/expression/Makefile
src/problem/Makefile
src/standardize/Makefile
src/util/Makefile
src/Makefile
test/grandTest.sh
couenne.pc
doxydoc/doxygen.conf])
# Here put the location and name of the configuration header file
AC_CONFIG_HEADERS([src/config.h src/config_couenne.h])
# Finally, we let configure write all the output...
AC_COIN_FINALIZE