source: trunk/Clp/src/Makefile.am @ 1701

Last change on this file since 1701 was 1701, checked in by stefan, 9 years ago

install ClpCholeskyXyz?.hpp for advanced users

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 7.3 KB
Line 
1# Copyright (C) 2006 International Business Machines and others.
2# All Rights Reserved.
3# This file is distributed under the Eclipse Public License.
4
5## $Id: Makefile.am 1701 2011-03-09 10:56:48Z stefan $
6
7# Author:  Andreas Waechter           IBM    2006-04-13
8
9AUTOMAKE_OPTIONS = foreign
10
11if COIN_HAS_OSI
12  SUBDIRS = OsiClp
13endif
14
15########################################################################
16#                               libClp                                 #
17########################################################################
18
19# Name of the library compiled in this directory.  We want it to be installed
20# in the 'lib' directory
21lib_LTLIBRARIES = libClp.la
22
23# List all source files for this library, including headers
24libClp_la_SOURCES = \
25        ClpConfig.h \
26        ClpCholeskyBase.cpp ClpCholeskyBase.hpp \
27        ClpCholeskyDense.cpp ClpCholeskyDense.hpp \
28        ClpConstraint.cpp ClpConstraint.hpp \
29        ClpConstraintLinear.cpp ClpConstraintLinear.hpp \
30        ClpConstraintQuadratic.cpp ClpConstraintQuadratic.hpp \
31        Clp_C_Interface.cpp Clp_C_Interface.h \
32        ClpDualRowDantzig.cpp ClpDualRowDantzig.hpp \
33        ClpDualRowPivot.cpp ClpDualRowPivot.hpp \
34        ClpDualRowSteepest.cpp ClpDualRowSteepest.hpp \
35        ClpDummyMatrix.cpp ClpDummyMatrix.hpp \
36        ClpDynamicExampleMatrix.cpp ClpDynamicExampleMatrix.hpp \
37        ClpDynamicMatrix.cpp ClpDynamicMatrix.hpp \
38        ClpEventHandler.cpp ClpEventHandler.hpp \
39        ClpFactorization.cpp ClpFactorization.hpp \
40        ClpGubDynamicMatrix.cpp ClpGubDynamicMatrix.hpp \
41        ClpGubMatrix.cpp ClpGubMatrix.hpp \
42        ClpHelperFunctions.cpp ClpHelperFunctions.hpp \
43        ClpInterior.cpp ClpInterior.hpp \
44        ClpLinearObjective.cpp ClpLinearObjective.hpp \
45        ClpMatrixBase.cpp ClpMatrixBase.hpp \
46        ClpMessage.cpp ClpMessage.hpp \
47        ClpModel.cpp ClpModel.hpp \
48        ClpNetworkBasis.cpp ClpNetworkBasis.hpp \
49        ClpNetworkMatrix.cpp ClpNetworkMatrix.hpp \
50        ClpNonLinearCost.cpp ClpNonLinearCost.hpp \
51        ClpNode.cpp ClpNode.hpp \
52        ClpObjective.cpp ClpObjective.hpp \
53        ClpPackedMatrix.cpp ClpPackedMatrix.hpp \
54        ClpParameters.hpp \
55        ClpPlusMinusOneMatrix.cpp ClpPlusMinusOneMatrix.hpp \
56        ClpPredictorCorrector.cpp ClpPredictorCorrector.hpp \
57        ClpPdco.cpp ClpPdco.hpp \
58        ClpPdcoBase.cpp ClpPdcoBase.hpp \
59        ClpLsqr.cpp ClpLsqr.hpp \
60        ClpPresolve.cpp ClpPresolve.hpp \
61        ClpPrimalColumnDantzig.cpp ClpPrimalColumnDantzig.hpp \
62        ClpPrimalColumnPivot.cpp ClpPrimalColumnPivot.hpp \
63        ClpPrimalColumnSteepest.cpp ClpPrimalColumnSteepest.hpp \
64        ClpQuadraticObjective.cpp ClpQuadraticObjective.hpp \
65        ClpSimplex.cpp ClpSimplex.hpp \
66        ClpSimplexDual.cpp ClpSimplexDual.hpp \
67        ClpSimplexNonlinear.cpp ClpSimplexNonlinear.hpp \
68        ClpSimplexOther.cpp ClpSimplexOther.hpp \
69        ClpSimplexPrimal.cpp ClpSimplexPrimal.hpp \
70        ClpSolve.cpp ClpSolve.hpp \
71        Idiot.cpp Idiot.hpp \
72        IdiSolve.cpp
73
74# if AMD, CHOLMOD, or GLPK is available, then compile ClpCholeskyUfl.cpp
75if COIN_HAS_AMD
76libClp_la_SOURCES += ClpCholeskyUfl.cpp ClpCholeskyUfl.hpp
77else
78if COIN_HAS_CHOLMOD
79libClp_la_SOURCES += ClpCholeskyUfl.cpp ClpCholeskyUfl.hpp
80else
81if COIN_HAS_GLPK
82libClp_la_SOURCES += ClpCholeskyUfl.cpp ClpCholeskyUfl.hpp
83endif
84endif
85endif
86
87if COIN_HAS_MUMPS
88libClp_la_SOURCES += ClpCholeskyMumps.cpp ClpCholeskyMumps.hpp
89endif
90
91if COIN_HAS_WSMP
92libClp_la_SOURCES += ClpCholeskyWssmp.cpp ClpCholeskyWssmp.hpp ClpCholeskyWssmpKKT.cpp ClpCholeskyWssmpKKT.hpp
93endif
94
95# This is for libtool
96libClp_la_LDFLAGS = $(LT_LDFLAGS)
97
98########################################################################
99#                            clp program                               #
100########################################################################
101
102# Name of the executable compiled in this directory.  We want it to be
103# installed in the 'bin' directory
104bin_PROGRAMS = clp
105
106# List all source files for this executable, including headers
107clp_SOURCES = \
108        ClpMain.cpp \
109        CbcOrClpParam.cpp CbcOrClpParam.hpp \
110        MyEventHandler.cpp MyEventHandler.hpp \
111        MyMessageHandler.cpp MyMessageHandler.hpp \
112        unitTest.cpp
113
114# List all additionally required libraries
115clp_LDADD = libClp.la $(CLPLIB_LIBS)
116
117# List all dependency libraries (similar to LDADD, but without -l, -L flags)
118clp_DEPENDENCIES = libClp.la $(CLPLIB_DEPENDENCIES)
119
120# Finally, the -rpath flag is used by libtool to make sure that the shared
121# library is found (in the lib install directory) when we are using dynamic
122# libraries.
123clp_LDFLAGS = -rpath $(libdir)
124
125########################################################################
126#                            Additional flags                          #
127########################################################################
128
129# CbcOrClpParam seem to require COIN_HAS_CLP so that it knows that it is build within Clp
130AM_CPPFLAGS = $(CLPLIB_CFLAGS) -DCOIN_HAS_CLP
131
132if COIN_HAS_CHOLMOD
133AM_CPPFLAGS += -I`$(CYGPATH_W) $(CHOLMODINCDIR)`
134endif
135
136if COIN_HAS_AMD
137AM_CPPFLAGS += -I`$(CYGPATH_W) $(AMDINCDIR)`
138endif
139
140# This line is necessary to allow VPATH compilation with MS compilers
141# on Cygwin
142DEFAULT_INCLUDES = -I. -I`$(CYGPATH_W) $(srcdir)` -I$(top_builddir)/inc
143
144########################################################################
145#                Headers that need to be installed                     #
146########################################################################
147
148# Here list all the header files that are required by a user of the library,
149# and that therefore should be installed in 'include/coin'
150includecoindir = $(includedir)/coin
151includecoin_HEADERS = \
152        ../inc/config_clp.h \
153        Clp_C_Interface.h \
154        ClpCholeskyBase.hpp \
155        ClpCholeskyDense.hpp \
156        ClpConstraint.hpp \
157        ClpConstraintLinear.hpp \
158        ClpConstraintQuadratic.hpp \
159        ClpDualRowDantzig.hpp \
160        ClpDualRowPivot.hpp \
161        ClpDualRowSteepest.hpp \
162        ClpDummyMatrix.hpp \
163        ClpDynamicExampleMatrix.hpp \
164        ClpDynamicMatrix.hpp \
165        ClpEventHandler.hpp \
166        ClpFactorization.hpp \
167        ClpGubDynamicMatrix.hpp \
168        ClpGubMatrix.hpp \
169        ClpInterior.hpp \
170        ClpLinearObjective.hpp \
171        ClpMatrixBase.hpp \
172        ClpMessage.hpp \
173        ClpModel.hpp \
174        ClpNetworkMatrix.hpp \
175        ClpNonLinearCost.hpp \
176        ClpNode.hpp \
177        ClpObjective.hpp \
178        ClpPackedMatrix.hpp \
179        ClpPdcoBase.hpp \
180        ClpPlusMinusOneMatrix.hpp \
181        ClpParameters.hpp \
182        ClpPresolve.hpp \
183        ClpPrimalColumnDantzig.hpp \
184        ClpPrimalColumnPivot.hpp \
185        ClpPrimalColumnSteepest.hpp \
186        ClpQuadraticObjective.hpp \
187        ClpSimplex.hpp \
188        ClpSimplexNonlinear.hpp \
189        ClpSimplexOther.hpp \
190        ClpSimplexPrimal.hpp \
191        ClpSolve.hpp \
192        CbcOrClpParam.hpp \
193        Idiot.hpp
194
195
196# if AMD, CHOLMOD, or GLPK is available, then install ClpCholeskyUfl.hpp (for advanced users)
197if COIN_HAS_AMD
198includecoin_HEADERS += ClpCholeskyUfl.hpp
199else
200if COIN_HAS_CHOLMOD
201includecoin_HEADERS += ClpCholeskyUfl.hpp
202else
203if COIN_HAS_GLPK
204includecoin_HEADERS += ClpCholeskyUfl.hpp
205endif
206endif
207endif
208
209if COIN_HAS_MUMPS
210includecoin_HEADERS += ClpCholeskyMumps.hpp
211endif
212
213if COIN_HAS_WSMP
214includecoin_HEADERS += ClpCholeskyWssmp.hpp ClpCholeskyWssmpKKT.hpp
215endif
216
217# needed by Cbc
218includecoin_HEADERS += CbcOrClpParam.cpp
219
220#############################################################################
221# Create the Config.h file that always defines HAVE_CONFIG_H and install it #
222#############################################################################
223
224# You only need to adapt the following line
225ConfigHeader = ClpConfig.h
226
227install-exec-local:
228        echo "#ifndef HAVE_CONFIG_H" >bla
229        echo "#define HAVE_CONFIG_H" >>bla
230        echo "#endif" >> bla
231        cat $(srcdir)/$(ConfigHeader) >> bla
232        $(install_sh_DATA) bla $(DESTDIR)$(includecoindir)/$(ConfigHeader)
233        rm -f bla
234
235uninstall-local:
236        rm -f $(DESTDIR)$(includecoindir)/$(ConfigHeader)
Note: See TracBrowser for help on using the repository browser.