source: branches/autotools-update/Clp/src/Makefile.am @ 2319

Last change on this file since 2319 was 2319, checked in by lou, 16 months ago

Correct the install directory for include files.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 9.6 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 2319 2018-02-28 22:48:24Z lou $
6
7# Author:  Andreas Waechter           IBM    2006-04-13
8
9AUTOMAKE_OPTIONS = foreign
10
11include $(top_srcdir)/BuildTools/Makemain.inc
12
13########################################################################
14#                               libClp                                 #
15########################################################################
16
17# Let the code know we're building the Clp library.
18
19AM_CPPFLAGS = $(CLPLIB_CFLAGS) -DCLP_BUILD
20
21# Name of the library compiled in this directory.  We want it to be installed
22# in the 'lib' directory
23lib_LTLIBRARIES = libClp.la libClpSolver.la
24
25# List all source files for this library, including headers
26libClp_la_SOURCES = \
27        ClpConfig.h \
28        ClpCholeskyBase.cpp ClpCholeskyBase.hpp \
29        ClpCholeskyDense.cpp ClpCholeskyDense.hpp \
30        ClpConstraint.cpp ClpConstraint.hpp \
31        ClpConstraintLinear.cpp ClpConstraintLinear.hpp \
32        ClpConstraintQuadratic.cpp ClpConstraintQuadratic.hpp \
33        Clp_C_Interface.cpp Clp_C_Interface.h \
34        ClpDualRowDantzig.cpp ClpDualRowDantzig.hpp \
35        ClpDualRowPivot.cpp ClpDualRowPivot.hpp \
36        ClpDualRowSteepest.cpp ClpDualRowSteepest.hpp \
37        ClpDummyMatrix.cpp ClpDummyMatrix.hpp \
38        ClpDynamicExampleMatrix.cpp ClpDynamicExampleMatrix.hpp \
39        ClpDynamicMatrix.cpp ClpDynamicMatrix.hpp \
40        ClpEventHandler.cpp ClpEventHandler.hpp \
41        ClpFactorization.cpp ClpFactorization.hpp \
42        ClpGubDynamicMatrix.cpp ClpGubDynamicMatrix.hpp \
43        ClpGubMatrix.cpp ClpGubMatrix.hpp \
44        ClpHelperFunctions.cpp ClpHelperFunctions.hpp \
45        ClpInterior.cpp ClpInterior.hpp \
46        ClpLinearObjective.cpp ClpLinearObjective.hpp \
47        ClpMatrixBase.cpp ClpMatrixBase.hpp \
48        ClpMessage.cpp ClpMessage.hpp \
49        ClpModel.cpp ClpModel.hpp \
50        ClpNetworkBasis.cpp ClpNetworkBasis.hpp \
51        ClpNetworkMatrix.cpp ClpNetworkMatrix.hpp \
52        ClpNonLinearCost.cpp ClpNonLinearCost.hpp \
53        ClpNode.cpp ClpNode.hpp \
54        ClpObjective.cpp ClpObjective.hpp \
55        ClpPackedMatrix.cpp ClpPackedMatrix.hpp \
56        ClpParameters.hpp \
57        ClpPlusMinusOneMatrix.cpp ClpPlusMinusOneMatrix.hpp \
58        ClpPredictorCorrector.cpp ClpPredictorCorrector.hpp \
59        ClpPdco.cpp ClpPdco.hpp \
60        ClpPdcoBase.cpp ClpPdcoBase.hpp \
61        ClpLsqr.cpp ClpLsqr.hpp \
62        ClpPresolve.cpp ClpPresolve.hpp \
63        ClpPrimalColumnDantzig.cpp ClpPrimalColumnDantzig.hpp \
64        ClpPrimalColumnPivot.cpp ClpPrimalColumnPivot.hpp \
65        ClpPrimalColumnSteepest.cpp ClpPrimalColumnSteepest.hpp \
66        ClpQuadraticObjective.cpp ClpQuadraticObjective.hpp \
67        ClpSimplex.cpp ClpSimplex.hpp \
68        ClpSimplexDual.cpp ClpSimplexDual.hpp \
69        ClpSimplexNonlinear.cpp ClpSimplexNonlinear.hpp \
70        ClpSimplexOther.cpp ClpSimplexOther.hpp \
71        ClpSimplexPrimal.cpp ClpSimplexPrimal.hpp \
72        ClpSolve.cpp ClpSolve.hpp \
73        Idiot.cpp Idiot.hpp \
74        IdiSolve.cpp \
75        ClpCholeskyPardiso.cpp ClpCholeskyPardiso.hpp \
76        ClpPESimplex.cpp ClpPESimplex.hpp \
77        ClpPEPrimalColumnDantzig.cpp ClpPEPrimalColumnDantzig.hpp \
78        ClpPEPrimalColumnSteepest.cpp ClpPEPrimalColumnSteepest.hpp \
79        ClpPEDualRowDantzig.cpp ClpPEDualRowDantzig.hpp \
80        ClpPEDualRowSteepest.cpp ClpPEDualRowSteepest.hpp
81
82if COIN_HAS_ABC
83libClp_la_SOURCES += \
84        AbcCommon.hpp \
85        AbcDualRowDantzig.cpp AbcDualRowDantzig.hpp \
86        AbcDualRowPivot.cpp AbcDualRowPivot.hpp \
87        AbcDualRowSteepest.cpp AbcDualRowSteepest.hpp \
88        AbcMatrix.cpp AbcMatrix.hpp \
89        AbcNonLinearCost.cpp AbcNonLinearCost.hpp \
90        AbcPrimalColumnDantzig.cpp AbcPrimalColumnDantzig.hpp \
91        AbcPrimalColumnPivot.cpp AbcPrimalColumnPivot.hpp \
92        AbcPrimalColumnSteepest.cpp AbcPrimalColumnSteepest.hpp \
93        AbcSimplex.cpp AbcSimplex.hpp \
94        AbcSimplexDual.cpp AbcSimplexDual.hpp \
95        AbcSimplexPrimal.cpp AbcSimplexPrimal.hpp \
96        AbcSimplexParallel.cpp \
97        AbcSimplexFactorization.cpp AbcSimplexFactorization.hpp \
98        AbcWarmStart.cpp AbcWarmStart.hpp \
99        CoinAbcBaseFactorization.hpp \
100        CoinAbcBaseFactorization1.cpp \
101        CoinAbcBaseFactorization2.cpp \
102        CoinAbcBaseFactorization3.cpp \
103        CoinAbcBaseFactorization4.cpp \
104        CoinAbcBaseFactorization5.cpp \
105        CoinAbcCommonFactorization.hpp \
106        CoinAbcCommon.hpp \
107        CoinAbcDenseFactorization.cpp \
108        CoinAbcDenseFactorization.hpp \
109        CoinAbcFactorization.hpp \
110        CoinAbcFactorization1.cpp \
111        CoinAbcFactorization2.cpp \
112        CoinAbcFactorization3.cpp \
113        CoinAbcFactorization4.cpp \
114        CoinAbcFactorization5.cpp \
115        CoinAbcHelperFunctions.cpp CoinAbcHelperFunctions.hpp \
116        CoinAbcOrderedFactorization1.cpp \
117        CoinAbcOrderedFactorization2.cpp \
118        CoinAbcOrderedFactorization3.cpp \
119        CoinAbcOrderedFactorization4.cpp \
120        CoinAbcOrderedFactorization5.cpp \
121        CoinAbcSmallFactorization1.cpp \
122        CoinAbcSmallFactorization2.cpp \
123        CoinAbcSmallFactorization3.cpp \
124        CoinAbcSmallFactorization4.cpp \
125        CoinAbcSmallFactorization5.cpp
126endif
127
128libClpSolver_la_SOURCES = \
129        ClpSolver.cpp \
130        CbcOrClpParam.cpp CbcOrClpParam.hpp \
131        Clp_ampl.cpp Clp_ampl.h \
132        MyEventHandler.cpp MyEventHandler.hpp \
133        MyMessageHandler.cpp MyMessageHandler.hpp \
134        unitTest.cpp
135
136# if AMD, CHOLMOD, or GLPK is available, then compile ClpCholeskyUfl.cpp
137if COIN_HAS_AMD
138libClp_la_SOURCES += ClpCholeskyUfl.cpp ClpCholeskyUfl.hpp
139else
140if COIN_HAS_CHOLMOD
141libClp_la_SOURCES += ClpCholeskyUfl.cpp ClpCholeskyUfl.hpp
142else
143if COIN_HAS_GLPK
144libClp_la_SOURCES += ClpCholeskyUfl.cpp ClpCholeskyUfl.hpp
145endif
146endif
147endif
148
149if COIN_HAS_MUMPS
150libClp_la_SOURCES += ClpCholeskyMumps.cpp ClpCholeskyMumps.hpp
151endif
152
153if COIN_HAS_WSMP
154libClp_la_SOURCES += ClpCholeskyWssmp.cpp ClpCholeskyWssmp.hpp ClpCholeskyWssmpKKT.cpp ClpCholeskyWssmpKKT.hpp
155endif
156
157# List all additionally required libraries
158if DEPENDENCY_LINKING
159libClp_la_LIBADD = $(CLPLIB_LIBS)
160libClpSolver_la_LIBADD = $(CLPLIB_LIBS) libClp.la
161endif
162
163# This is for libtool
164libClp_la_LDFLAGS = $(LT_LDFLAGS)
165libClpSolver_la_LDFLAGS = $(LT_LDFLAGS)
166
167########################################################################
168#                            clp program                               #
169########################################################################
170
171# Name of the executable compiled in this directory.  We want it to be
172# installed in the 'bin' directory
173bin_PROGRAMS = clp
174
175# List all source files for this executable, including headers
176clp_SOURCES = ClpMain.cpp
177
178# List all additionally required libraries
179clp_LDADD = libClpSolver.la libClp.la $(CLPLIB_LIBS) $(ASL_LIBS)
180
181########################################################################
182#                            Additional flags                          #
183########################################################################
184
185# CbcOrClpParam seem to require COIN_HAS_CLP so that it knows that it
186# is built within Clp
187AM_CPPFLAGS += -DCOIN_HAS_CLP
188
189if COIN_HAS_CHOLMOD
190AM_CPPFLAGS += -I`$(CYGPATH_W) $(CHOLMODINCDIR)`
191endif
192
193if COIN_HAS_AMD
194AM_CPPFLAGS += -I`$(CYGPATH_W) $(AMDINCDIR)`
195endif
196
197# This line is necessary to allow VPATH compilation
198# DEFAULT_INCLUDES = -I. -I`$(CYGPATH_W) $(srcdir)`
199
200########################################################################
201#                Headers that need to be installed                     #
202########################################################################
203
204# Here list all the header files that are required by a user of the library,
205# and that therefore should be installed in 'include/coin'
206includecoindir = $(pkgincludedir)
207includecoin_HEADERS = \
208        Clp_C_Interface.h \
209        ClpCholeskyBase.hpp \
210        ClpCholeskyDense.hpp \
211        ClpConstraint.hpp \
212        ClpConstraintLinear.hpp \
213        ClpConstraintQuadratic.hpp \
214        ClpDualRowDantzig.hpp \
215        ClpDualRowPivot.hpp \
216        ClpDualRowSteepest.hpp \
217        ClpDummyMatrix.hpp \
218        ClpDynamicExampleMatrix.hpp \
219        ClpDynamicMatrix.hpp \
220        ClpEventHandler.hpp \
221        ClpFactorization.hpp \
222        ClpGubDynamicMatrix.hpp \
223        ClpGubMatrix.hpp \
224        ClpInterior.hpp \
225        ClpLinearObjective.hpp \
226        ClpMatrixBase.hpp \
227        ClpMessage.hpp \
228        ClpModel.hpp \
229        ClpNetworkMatrix.hpp \
230        ClpNonLinearCost.hpp \
231        ClpNode.hpp \
232        ClpObjective.hpp \
233        ClpPackedMatrix.hpp \
234        ClpPdcoBase.hpp \
235        ClpPlusMinusOneMatrix.hpp \
236        ClpParameters.hpp \
237        ClpPresolve.hpp \
238        ClpPrimalColumnDantzig.hpp \
239        ClpPrimalColumnPivot.hpp \
240        ClpPrimalColumnSteepest.hpp \
241        ClpQuadraticObjective.hpp \
242        ClpSimplex.hpp \
243        ClpSimplexNonlinear.hpp \
244        ClpSimplexOther.hpp \
245        ClpSimplexDual.hpp \
246        ClpSimplexPrimal.hpp \
247        ClpSolve.hpp \
248        CbcOrClpParam.hpp \
249        Idiot.hpp \
250        ClpCholeskyPardiso.hpp \
251        ClpPESimplex.hpp \
252        ClpPEPrimalColumnDantzig.hpp \
253        ClpPEPrimalColumnSteepest.hpp \
254        ClpPEDualRowDantzig.hpp \
255        ClpPEDualRowSteepest.hpp
256
257if COIN_HAS_ABC
258includecoin_HEADERS += AbcSimplex.hpp CoinAbcCommon.hpp AbcCommon.hpp AbcNonLinearCost.hpp
259endif
260
261
262# if AMD, CHOLMOD, or GLPK is available, then install ClpCholeskyUfl.hpp (for advanced users)
263if COIN_HAS_AMD
264includecoin_HEADERS += ClpCholeskyUfl.hpp
265else
266if COIN_HAS_CHOLMOD
267includecoin_HEADERS += ClpCholeskyUfl.hpp
268else
269if COIN_HAS_GLPK
270includecoin_HEADERS += ClpCholeskyUfl.hpp
271endif
272endif
273endif
274
275if COIN_HAS_MUMPS
276includecoin_HEADERS += ClpCholeskyMumps.hpp
277endif
278
279if COIN_HAS_WSMP
280includecoin_HEADERS += ClpCholeskyWssmp.hpp ClpCholeskyWssmpKKT.hpp
281endif
282
283# needed by Clp
284includecoin_HEADERS += CbcOrClpParam.cpp
285
286########################################################################
287#                     Installing manifest (MSVC++)                     #
288########################################################################
289
290if COIN_CXX_IS_CL
291install-exec-hook:
292        test -s clp.exe.manifest && \
293        mt -manifest clp.exe.manifest -outputresource:clp.exe;\
294        cp clp.exe $(bindir)/clp.exe
295endif
296
297#######################################################################
298# Create the Config.h file that has all public defines and install it #
299#######################################################################
300
301install-exec-local:
302        $(install_sh_DATA) config_clp.h $(DESTDIR)$(includecoindir)/ClpConfig.h
303
304uninstall-local:
305        rm -f $(DESTDIR)$(includecoindir)/ClpConfig.h
Note: See TracBrowser for help on using the repository browser.