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

Last change on this file since 1996 was 1996, checked in by stefan, 6 years ago

conditional addition of dependent libraries into project libs via LIBADD

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