source: trunk/Cbc/src/Makefile.am @ 1979

Last change on this file since 1979 was 1979, 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: 9.6 KB
Line 
1# Copyright (C) 2006, 2007 International Business Machines and others.
2# All Rights Reserved.
3# This file is distributed under the Eclipse Public License.
4
5## $Id: Makefile.am 1979 2013-11-21 19:57:20Z stefan $
6
7# Author:  Andreas Waechter           IBM    2006-04-13
8
9AUTOMAKE_OPTIONS = foreign
10
11########################################################################
12#                               libCbc                                 #
13########################################################################
14
15# Name of the library compiled in this directory.  We want it to be installed
16# in the 'lib' directory
17lib_LTLIBRARIES = libCbc.la libCbcSolver.la
18
19# List all source files for this library, including headers
20libCbc_la_SOURCES = \
21        Cbc_C_Interface.cpp Cbc_C_Interface.h \
22        CbcConfig.h \
23        CbcBranchActual.hpp \
24        CbcBranchAllDifferent.cpp CbcBranchAllDifferent.hpp \
25        CbcBranchBase.hpp \
26        CbcBranchCut.cpp CbcBranchCut.hpp \
27        CbcBranchDecision.cpp CbcBranchDecision.hpp \
28        CbcBranchDefaultDecision.cpp CbcBranchDefaultDecision.hpp \
29        CbcBranchDynamic.cpp CbcBranchDynamic.hpp \
30        CbcBranchingObject.cpp CbcBranchingObject.hpp \
31        CbcBranchLotsize.cpp CbcBranchLotsize.hpp \
32        CbcBranchToFixLots.cpp CbcBranchToFixLots.hpp \
33        CbcCompareActual.hpp \
34        CbcCompareBase.hpp \
35        CbcCompareDefault.cpp CbcCompareDefault.hpp \
36        CbcCompareDepth.cpp CbcCompareDepth.hpp \
37        CbcCompareEstimate.cpp CbcCompareEstimate.hpp \
38        CbcCompareObjective.cpp CbcCompareObjective.hpp \
39        CbcConsequence.cpp CbcConsequence.hpp \
40        CbcClique.cpp CbcClique.hpp \
41        CbcCompare.hpp \
42        CbcCountRowCut.cpp CbcCountRowCut.hpp \
43        CbcCutGenerator.cpp CbcCutGenerator.hpp \
44        CbcCutModifier.cpp CbcCutModifier.hpp \
45        CbcCutSubsetModifier.cpp CbcCutSubsetModifier.hpp \
46        CbcDummyBranchingObject.cpp CbcDummyBranchingObject.hpp \
47        CbcEventHandler.cpp CbcEventHandler.hpp \
48        CbcFathom.cpp CbcFathom.hpp \
49        CbcFathomDynamicProgramming.cpp CbcFathomDynamicProgramming.hpp \
50        CbcFeasibilityBase.hpp \
51        CbcFixVariable.cpp CbcFixVariable.hpp \
52        CbcFullNodeInfo.cpp CbcFullNodeInfo.hpp \
53        CbcFollowOn.cpp CbcFollowOn.hpp \
54        CbcGeneral.cpp CbcGeneral.hpp \
55        CbcGeneralDepth.cpp CbcGeneralDepth.hpp \
56        CbcHeuristic.cpp CbcHeuristic.hpp \
57        CbcHeuristicDINS.cpp CbcHeuristicDINS.hpp \
58        CbcHeuristicDive.cpp CbcHeuristicDive.hpp \
59        CbcHeuristicDiveCoefficient.cpp CbcHeuristicDiveCoefficient.hpp \
60        CbcHeuristicDiveFractional.cpp CbcHeuristicDiveFractional.hpp \
61        CbcHeuristicDiveGuided.cpp CbcHeuristicDiveGuided.hpp \
62        CbcHeuristicDiveLineSearch.cpp CbcHeuristicDiveLineSearch.hpp \
63        CbcHeuristicDivePseudoCost.cpp CbcHeuristicDivePseudoCost.hpp \
64        CbcHeuristicDiveVectorLength.cpp CbcHeuristicDiveLength.hpp \
65        CbcHeuristicFPump.cpp CbcHeuristicFPump.hpp \
66        CbcHeuristicGreedy.cpp CbcHeuristicGreedy.hpp \
67        CbcHeuristicLocal.cpp CbcHeuristicLocal.hpp \
68        CbcHeuristicPivotAndFix.cpp CbcHeuristicPivotAndFix.hpp \
69        CbcHeuristicRandRound.cpp CbcHeuristicRandRound.hpp \
70        CbcHeuristicRENS.cpp CbcHeuristicRENS.hpp \
71        CbcHeuristicRINS.cpp CbcHeuristicRINS.hpp \
72        CbcHeuristicVND.cpp CbcHeuristicVND.hpp \
73        CbcHeuristicDW.cpp CbcHeuristicDW.hpp \
74        CbcMessage.cpp CbcMessage.hpp \
75        CbcModel.cpp CbcModel.hpp \
76        CbcNode.cpp CbcNode.hpp \
77        CbcNodeInfo.cpp CbcNodeInfo.hpp \
78        CbcNWay.cpp CbcNWay.hpp \
79        CbcObject.cpp CbcObject.hpp \
80        CbcObjectUpdateData.cpp CbcObjectUpdateData.hpp \
81        CbcPartialNodeInfo.cpp CbcPartialNodeInfo.hpp \
82        CbcSimpleInteger.cpp CbcSimpleInteger.hpp \
83        CbcSimpleIntegerDynamicPseudoCost.cpp \
84        CbcSimpleIntegerDynamicPseudoCost.hpp \
85        CbcSimpleIntegerPseudoCost.cpp \
86        CbcSimpleIntegerPseudoCost.hpp \
87        CbcSOS.cpp CbcSOS.hpp \
88        CbcStatistics.cpp CbcStatistics.hpp \
89        CbcStrategy.cpp CbcStrategy.hpp \
90        CbcSubProblem.cpp CbcSubProblem.hpp \
91        CbcThread.cpp CbcThread.hpp \
92        CbcTree.cpp CbcTree.hpp \
93        CbcTreeLocal.cpp CbcTreeLocal.hpp
94
95libCbcSolver_la_SOURCES = \
96        CbcCbcParam.cpp \
97        Cbc_ampl.cpp Cbc_ampl.h \
98        CbcLinked.cpp CbcLinked.hpp CbcLinkedUtils.cpp \
99        unitTestClp.cpp CbcSolver.cpp \
100        CbcSolverHeuristics.cpp CbcSolverHeuristics.hpp \
101        CbcSolverAnalyze.cpp CbcSolverAnalyze.hpp \
102        CbcMipStartIO.cpp CbcMipStartIO.hpp \
103        CbcSolverExpandKnapsack.cpp CbcSolverExpandKnapsack.hpp
104
105# List all additionally required libraries
106if DEPENDENCY_LINKING
107libCbc_la_LIBADD = $(CBCLIB_LIBS)
108libCbcSolver_la_LIBADD = $(CBCLIB_LIBS) libCbc.la
109endif
110
111# This is for libtool
112
113libCbc_la_LDFLAGS = $(LT_LDFLAGS)
114libCbcSolver_la_LDFLAGS = $(LT_LDFLAGS)
115
116# Some common setup for cbc and cbc-generic.
117
118bin_PROGRAMS =
119AM_CPPFLAGS = $(COINDEPEND_CFLAGS) $(CLP_CFLAGS) $(CPX_CFLAGS) $(ASL_CFLAGS)
120
121########################################################################
122#                            cbc program                               #
123########################################################################
124
125if COIN_HAS_CLP
126
127# Name of the executable compiled in this directory.  We want it to be
128# installed in the 'bin' directory
129bin_PROGRAMS += cbc
130
131# List all source files for this executable, including headers
132cbc_SOURCES = CoinSolve.cpp
133
134# Additional libraries
135cbc_LDADD = libCbcSolver.la libCbc.la $(CBCLIB_LIBS) $(ASL_LIBS)
136cbc_DEPENDENCIES = libCbcSolver.la libCbc.la $(CBCLIB_DEPENDENCIES) $(ASL_DEPENDENCIES)
137
138endif
139
140
141########################################################################
142#                        cbc-generic program                           #
143########################################################################
144
145if CBC_BUILD_CBC_GENERIC
146
147# Name of the executable compiled in this directory.  We want it to be
148# installed in the 'bin' directory
149
150bin_PROGRAMS += cbc-generic
151
152# List all source files for this executable, including headers
153
154cbc_generic_SOURCES = \
155        CbcGenBaB.cpp \
156        CbcGenCbcParam.cpp CbcGenCbcParam.hpp CbcGenCbcParamUtils.cpp \
157        CbcGenCtlBlk.cpp CbcGenCtlBlk.hpp \
158        CbcGeneric.cpp \
159        CbcGenMessages.cpp CbcGenMessages.hpp \
160        CbcGenOsiParam.cpp CbcGenOsiParam.hpp CbcGenOsiParamUtils.cpp \
161        CbcGenParam.cpp CbcGenParam.hpp CbcGenParamUtils.cpp \
162        CbcGenSolution.cpp \
163        CbcGenSolvers.cpp
164
165cbc_generic_LDADD = libCbcSolver.la libCbc.la $(CBCGENERIC_LIBS)
166cbc_generic_DEPENDENCIES = libCbcSolver.la libCbc.la $(CBCGENERIC_DEPENDENCIES)
167
168# List all additionally required solver and Osi libraries
169# the linker flags for all available LP solvers should already be included in $CBCGENERIC_LIBS,
170# so just add compiler flags here (all we can think of)
171
172AM_CPPFLAGS += $(DYLP_CFLAGS) $(GLPK_CFLAGS) $(MSK_CFLAGS) $(SPX_CFLAGS) $(VOL_CFLAGS) $(XPR_CFLAGS)
173
174endif
175
176########################################################################
177#                            Additional flags                          #
178########################################################################
179
180# List additional defines
181AM_CPPFLAGS += -DCOIN_NO_CLP_MESSAGE -DUSE_CBCCONFIG
182
183# This line is necessary to allow VPATH compilation
184DEFAULT_INCLUDES = -I. -I`$(CYGPATH_W) $(srcdir)` -I$(top_builddir)/src
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        Cbc_C_Interface.h \
195        CbcBranchActual.hpp \
196        CbcBranchAllDifferent.hpp \
197        CbcBranchBase.hpp \
198        CbcBranchDynamic.hpp \
199        CbcBranchCut.hpp \
200        CbcBranchDecision.hpp \
201        CbcBranchDefaultDecision.hpp \
202        CbcBranchingObject.hpp \
203        CbcBranchLotsize.hpp \
204        CbcBranchToFixLots.hpp \
205        CbcCompareActual.hpp \
206        CbcCompareBase.hpp \
207        CbcCompareDefault.hpp \
208        CbcCompareDepth.hpp \
209        CbcCompareEstimate.hpp \
210        CbcCompareObjective.hpp \
211        CbcConsequence.hpp \
212        CbcClique.hpp \
213        CbcCompare.hpp \
214        CbcCountRowCut.hpp \
215        CbcCutGenerator.hpp \
216        CbcCutModifier.hpp \
217        CbcCutSubsetModifier.hpp \
218        CbcDummyBranchingObject.hpp \
219        CbcFathom.hpp \
220        CbcEventHandler.hpp \
221        CbcFathomDynamicProgramming.hpp \
222        CbcFeasibilityBase.hpp \
223        CbcFixVariable.hpp \
224        CbcFollowOn.hpp \
225        CbcFullNodeInfo.hpp \
226        CbcGeneral.hpp \
227        CbcGeneralDepth.hpp \
228        CbcHeuristic.hpp \
229        CbcHeuristicDINS.hpp \
230        CbcHeuristicDive.hpp \
231        CbcHeuristicDiveCoefficient.hpp \
232        CbcHeuristicDiveFractional.hpp \
233        CbcHeuristicDiveGuided.hpp \
234        CbcHeuristicDiveLineSearch.hpp \
235        CbcHeuristicDivePseudoCost.hpp \
236        CbcHeuristicDiveVectorLength.hpp \
237        CbcHeuristicFPump.hpp \
238        CbcHeuristicGreedy.hpp \
239        CbcHeuristicLocal.hpp \
240        CbcHeuristicPivotAndFix.hpp \
241        CbcHeuristicRandRound.hpp \
242        CbcHeuristicRENS.hpp \
243        CbcHeuristicRINS.hpp \
244        CbcHeuristicVND.hpp \
245        CbcHeuristicDW.hpp \
246        CbcMessage.hpp \
247        CbcModel.hpp \
248        CbcNode.hpp \
249        CbcNodeInfo.hpp \
250        CbcNWay.hpp \
251        CbcObject.hpp \
252        CbcObjectUpdateData.hpp \
253        CbcPartialNodeInfo.hpp \
254        CbcSimpleInteger.hpp \
255        CbcSimpleIntegerDynamicPseudoCost.hpp \
256        CbcSimpleIntegerPseudoCost.hpp \
257        CbcStrategy.hpp \
258        CbcSolver.hpp \
259        CbcMipStartIO.hpp \
260        CbcSOS.hpp \
261        CbcSubProblem.hpp \
262        CbcTree.hpp \
263        CbcLinked.hpp \
264        CbcTreeLocal.hpp \
265        ClpConstraintAmpl.hpp \
266        ClpAmplObjective.hpp
267
268########################################################################
269#                     Installing manifest (MSVC++)                     #
270########################################################################
271
272if COIN_CXX_IS_CL
273install-exec-hook:
274        test -s cbc.exe.manifest && \
275        mt -manifest cbc.exe.manifest -outputresource:cbc.exe;\
276        cp cbc.exe $(bindir)/clp.exe
277endif
278
279#######################################################################
280# Create the Config.h file that has all public defines and install it #
281#######################################################################
282
283install-exec-local:
284        $(install_sh_DATA) config_cbc.h $(DESTDIR)$(includecoindir)/CbcConfig.h
285
286uninstall-local:
287        rm -f $(DESTDIR)$(includecoindir)/CbcConfig.h
Note: See TracBrowser for help on using the repository browser.