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

Last change on this file since 1545 was 1545, checked in by stefan, 10 years ago

list .la files in xxx-uninstalled.pc files; setup binary dependencies with _DEPENDENCIES variable; rerun autotools

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 9.6 KB
RevLine 
[765]1# Copyright (C) 2006, 2007 International Business Machines and others.
[311]2# All Rights Reserved.
3# This file is distributed under the Common Public License.
4
5## $Id: Makefile.am 1545 2010-12-04 16:07:00Z stefan $
6
7# Author:  Andreas Waechter           IBM    2006-04-13
8
9AUTOMAKE_OPTIONS = foreign
10
[1464]11SUBDIRS = OsiCbc
12
[311]13########################################################################
14#                               libCbc                                 #
15########################################################################
16
17# Name of the library compiled in this directory.  We want it to be installed
18# in the 'lib' directory
[1464]19coinlibdir = ${libdir}/coin
20coinlib_LTLIBRARIES = libCbc.la libCbcSolver.la
[311]21
22# List all source files for this library, including headers
23libCbc_la_SOURCES = \
[454]24        Cbc_C_Interface.cpp Cbc_C_Interface.h \
[331]25        CbcConfig.h \
[1295]26        CbcBranchActual.hpp \
[1306]27        CbcBranchAllDifferent.cpp CbcBranchAllDifferent.hpp \
[1301]28        CbcBranchBase.hpp \
[311]29        CbcBranchCut.cpp CbcBranchCut.hpp \
[1301]30        CbcBranchDecision.cpp CbcBranchDecision.hpp \
[1293]31        CbcBranchDefaultDecision.cpp CbcBranchDefaultDecision.hpp \
[311]32        CbcBranchDynamic.cpp CbcBranchDynamic.hpp \
[1301]33        CbcBranchingObject.cpp CbcBranchingObject.hpp \
[311]34        CbcBranchLotsize.cpp CbcBranchLotsize.hpp \
[1306]35        CbcBranchToFixLots.cpp CbcBranchToFixLots.hpp \
[1314]36        CbcCompareActual.hpp \
[311]37        CbcCompareBase.hpp \
[1314]38        CbcCompareDefault.cpp CbcCompareDefault.hpp \
39        CbcCompareDepth.cpp CbcCompareDepth.hpp \
40        CbcCompareEstimate.cpp CbcCompareEstimate.hpp \
41        CbcCompareObjective.cpp CbcCompareObjective.hpp \
[1301]42        CbcConsequence.cpp CbcConsequence.hpp \
[1292]43        CbcChooseVariable.hpp \
[1298]44        CbcClique.cpp CbcClique.hpp \
[1292]45        CbcCompare.hpp \
[311]46        CbcCountRowCut.cpp CbcCountRowCut.hpp \
47        CbcCutGenerator.cpp CbcCutGenerator.hpp \
[1314]48        CbcCutModifier.cpp CbcCutModifier.hpp \
49        CbcCutSubsetModifier.cpp CbcCutSubsetModifier.hpp \
[1293]50        CbcDummyBranchingObject.cpp CbcDummyBranchingObject.hpp \
[311]51        CbcEventHandler.cpp CbcEventHandler.hpp \
52        CbcFathom.cpp CbcFathom.hpp \
53        CbcFathomDynamicProgramming.cpp CbcFathomDynamicProgramming.hpp \
54        CbcFeasibilityBase.hpp \
[1293]55        CbcFixVariable.cpp CbcFixVariable.hpp \
[1313]56        CbcFullNodeInfo.cpp CbcFullNodeInfo.hpp \
[1293]57        CbcFollowOn.cpp CbcFollowOn.hpp \
58        CbcGeneral.cpp CbcGeneral.hpp \
59        CbcGeneralDepth.cpp CbcGeneralDepth.hpp \
[311]60        CbcHeuristic.cpp CbcHeuristic.hpp \
[1368]61        CbcHeuristicDINS.cpp CbcHeuristicDINS.hpp \
[912]62        CbcHeuristicDive.cpp CbcHeuristicDive.hpp \
[871]63        CbcHeuristicDiveCoefficient.cpp CbcHeuristicDiveCoefficient.hpp \
64        CbcHeuristicDiveFractional.cpp CbcHeuristicDiveFractional.hpp \
65        CbcHeuristicDiveGuided.cpp CbcHeuristicDiveGuided.hpp \
[945]66        CbcHeuristicDiveLineSearch.cpp CbcHeuristicDiveLineSearch.hpp \
67        CbcHeuristicDivePseudoCost.cpp CbcHeuristicDivePseudoCost.hpp \
[871]68        CbcHeuristicDiveVectorLength.cpp CbcHeuristicDiveLength.hpp \
[311]69        CbcHeuristicFPump.cpp CbcHeuristicFPump.hpp \
70        CbcHeuristicGreedy.cpp CbcHeuristicGreedy.hpp \
71        CbcHeuristicLocal.cpp CbcHeuristicLocal.hpp \
[1055]72        CbcHeuristicPivotAndFix.cpp CbcHeuristicPivotAndFix.hpp \
[1057]73        CbcHeuristicRandRound.cpp CbcHeuristicRandRound.hpp \
[1368]74        CbcHeuristicRENS.cpp CbcHeuristicRENS.hpp \
[640]75        CbcHeuristicRINS.cpp CbcHeuristicRINS.hpp \
[1368]76        CbcHeuristicVND.cpp CbcHeuristicVND.hpp \
[311]77        CbcMessage.cpp CbcMessage.hpp \
78        CbcModel.cpp CbcModel.hpp \
79        CbcNode.cpp CbcNode.hpp \
[1313]80        CbcNodeInfo.cpp CbcNodeInfo.hpp \
[1293]81        CbcNWay.cpp CbcNWay.hpp \
[1301]82        CbcObject.cpp CbcObject.hpp \
83        CbcObjectUpdateData.cpp CbcObjectUpdateData.hpp \
[1313]84        CbcPartialNodeInfo.cpp CbcPartialNodeInfo.hpp \
[1293]85        CbcSimpleInteger.cpp CbcSimpleInteger.hpp \
[1387]86        CbcSimpleIntegerDynamicPseudoCost.cpp \
87        CbcSimpleIntegerDynamicPseudoCost.hpp \
88        CbcSimpleIntegerPseudoCost.cpp \
89        CbcSimpleIntegerPseudoCost.hpp \
[1293]90        CbcSOS.cpp CbcSOS.hpp \
[311]91        CbcStatistics.cpp CbcStatistics.hpp \
92        CbcStrategy.cpp CbcStrategy.hpp \
[1293]93        CbcSubProblem.cpp CbcSubProblem.hpp \
[1404]94        CbcThread.cpp CbcThread.hpp \
[311]95        CbcTree.cpp CbcTree.hpp \
[765]96        CbcTreeLocal.cpp CbcTreeLocal.hpp
97
98libCbcSolver_la_SOURCES = \
99        CbcCbcParam.cpp \
100        Cbc_ampl.cpp Cbc_ampl.h \
[1387]101        CbcLinked.cpp CbcLinked.hpp CbcLinkedUtils.cpp \
[1385]102        unitTestClp.cpp CbcSolver.cpp \
[1396]103        CbcSolverHeuristics.cpp CbcSolverHeuristics.hpp \
[1399]104        CbcSolverAnalyze.cpp CbcSolverAnalyze.hpp \
105        CbcSolverExpandKnapsack.cpp CbcSolverExpandKnapsack.hpp
[311]106
[1545]107# This is for libtool
[640]108
[328]109libCbc_la_LDFLAGS = $(LT_LDFLAGS)
[765]110libCbcSolver_la_LDFLAGS = $(LT_LDFLAGS)
[311]111
[640]112# Some common setup for cbc and cbc-generic.
113
114bin_PROGRAMS =
[1545]115AM_CPPFLAGS = $(COINDEPEND_CFLAGS) $(CLP_CFLAGS) $(CPX_CFLAGS) $(ASL_CFLAGS)
[640]116
[312]117########################################################################
[640]118#                            cbc program                               #
119########################################################################
120
121if COIN_HAS_CLP
122
123# Name of the executable compiled in this directory.  We want it to be
124# installed in the 'bin' directory
125bin_PROGRAMS += cbc
126
127# List all source files for this executable, including headers
[1464]128cbc_SOURCES = CoinSolve.cpp
[640]129
[1545]130# Additional libraries
131cbc_LDADD = libCbcSolver.la libCbc.la $(CBCLIB_LIBS) $(ASL_LIBS)
132cbc_DEPENDENCIES = libCbcSolver.la libCbc.la $(CBCLIB_DEPENDENCIES) $(ASL_DEPENDENCIES)
[640]133
134# Finally, the -rpath flag is used by libtool to make sure that the shared
135# library is found (in the lib install directory) when we are using dynamic
136# libraries.
137cbc_LDFLAGS = -rpath $(libdir)
138
139endif
140
141
142########################################################################
[372]143#                        cbc-generic program                           #
[312]144########################################################################
145
[640]146if CBC_BUILD_CBC_GENERIC
147
[312]148# Name of the executable compiled in this directory.  We want it to be
149# installed in the 'bin' directory
150
[640]151bin_PROGRAMS += cbc-generic
152
[312]153# List all source files for this executable, including headers
[640]154
[372]155cbc_generic_SOURCES = \
[640]156        CbcGenBaB.cpp \
157        CbcGenCbcParam.cpp CbcGenCbcParam.hpp CbcGenCbcParamUtils.cpp \
158        CbcGenCtlBlk.cpp CbcGenCtlBlk.hpp \
159        CbcGeneric.cpp \
160        CbcGenMessages.cpp CbcGenMessages.hpp \
161        CbcGenOsiParam.cpp CbcGenOsiParam.hpp CbcGenOsiParamUtils.cpp \
162        CbcGenParam.cpp CbcGenParam.hpp CbcGenParamUtils.cpp \
163        CbcGenSolution.cpp \
164        CbcGenSolvers.cpp
[312]165
[1501]166cbc_generic_LDADD = libCbcSolver.la libCbc.la $(CBCGENERIC_LIBS)
[1545]167cbc_generic_DEPENDENCIES = libCbcSolver.la libCbc.la $(CBCGENERIC_DEPENDENCIES)
[312]168
169# List all additionally required solver and Osi libraries
[1501]170# the linker flags for all available LP solvers should already be included in $CBCGENERIC_LIBS,
171# so just add compiler flags here (all we can think of)
[640]172
[1545]173AM_CPPFLAGS += $(DYLP_CFLAGS) $(GLPK_CFLAGS) $(MSK_CFLAGS) $(SPX_CFLAGS) $(VOL_CFLAGS) $(XPR_CFLAGS)
[312]174
175# Finally, the -rpath flag is used by libtool to make sure that the shared
176# library is found (in the lib install directory) when we are using dynamic
177# libraries.
[640]178
[372]179cbc_generic_LDFLAGS = -rpath $(libdir)
[312]180
[369]181endif
182
[312]183########################################################################
184#                            Additional flags                          #
185########################################################################
186
187# List additional defines
[345]188AM_CPPFLAGS += -DCOIN_NO_CLP_MESSAGE -DUSE_CBCCONFIG
[311]189
[324]190# This line is necessary to allow VPATH compilation with MS compilers
191# on Cygwin
192DEFAULT_INCLUDES = -I. -I`$(CYGPATH_W) $(srcdir)` -I$(top_builddir)/inc
193
[311]194########################################################################
195#                Headers that need to be installed                     #
196########################################################################
197
198# Here list all the header files that are required by a user of the library,
[1545]199# and that therefore should be installed in 'include/coin'
[846]200includecoindir = $(includedir)/coin
201includecoin_HEADERS = \
[333]202        ../inc/config_cbc.h \
[454]203        Cbc_C_Interface.h \
[311]204        CbcBranchActual.hpp \
[1306]205        CbcBranchAllDifferent.hpp \
[311]206        CbcBranchBase.hpp \
[387]207        CbcBranchDynamic.hpp \
[333]208        CbcBranchCut.hpp \
[1301]209        CbcBranchDecision.hpp \
[1293]210        CbcBranchDefaultDecision.hpp \
[1301]211        CbcBranchingObject.hpp \
[1351]212        CbcBranchLotsize.hpp \
[1306]213        CbcBranchToFixLots.hpp \
[311]214        CbcCompareActual.hpp \
[1455]215        CbcCompareBase.hpp \
[1314]216        CbcCompareDefault.hpp \
217        CbcCompareDepth.hpp \
218        CbcCompareEstimate.hpp \
219        CbcCompareObjective.hpp \
[1301]220        CbcConsequence.hpp \
[1292]221        CbcChooseVariable.hpp \
[1293]222        CbcClique.hpp \
[1292]223        CbcCompare.hpp \
[311]224        CbcCutGenerator.hpp \
[1314]225        CbcCutModifier.hpp \
226        CbcCutSubsetModifier.hpp \
[1293]227        CbcDummyBranchingObject.hpp \
[687]228        CbcFathom.hpp \
[311]229        CbcEventHandler.hpp \
[640]230        CbcFeasibilityBase.hpp \
[1293]231        CbcFixVariable.hpp \
232        CbcFollowOn.hpp \
[1313]233        CbcFullNodeInfo.hpp \
[1293]234        CbcGeneral.hpp \
235        CbcGeneralDepth.hpp \
[311]236        CbcHeuristic.hpp \
[1368]237        CbcHeuristicDINS.hpp \
[912]238        CbcHeuristicDive.hpp \
[871]239        CbcHeuristicDiveCoefficient.hpp \
240        CbcHeuristicDiveFractional.hpp \
241        CbcHeuristicDiveGuided.hpp \
[945]242        CbcHeuristicDiveLineSearch.hpp \
243        CbcHeuristicDivePseudoCost.hpp \
[871]244        CbcHeuristicDiveVectorLength.hpp \
[311]245        CbcHeuristicFPump.hpp \
246        CbcHeuristicGreedy.hpp \
247        CbcHeuristicLocal.hpp \
[1055]248        CbcHeuristicPivotAndFix.hpp \
[1057]249        CbcHeuristicRandRound.hpp \
[1368]250        CbcHeuristicRENS.hpp \
[640]251        CbcHeuristicRINS.hpp \
[1368]252        CbcHeuristicVND.hpp \
[311]253        CbcMessage.hpp \
254        CbcModel.hpp \
255        CbcNode.hpp \
[1313]256        CbcNodeInfo.hpp \
[1293]257        CbcNWay.hpp \
[1301]258        CbcObject.hpp \
259        CbcObjectUpdateData.hpp \
[1313]260        CbcPartialNodeInfo.hpp \
[1293]261        CbcSimpleInteger.hpp \
[1308]262        CbcSimpleIntegerDynamicPseudoCost.hpp \
[1293]263        CbcSimpleIntegerPseudoCost.hpp \
[311]264        CbcStrategy.hpp \
[783]265        CbcSolver.hpp \
[1293]266        CbcSOS.hpp \
267        CbcSubProblem.hpp \
[311]268        CbcTree.hpp \
[640]269        CbcLinked.hpp \
[687]270        CbcTreeLocal.hpp \
271        ClpConstraintAmpl.hpp \
272        ClpAmplObjective.hpp
[311]273
[325]274#############################################################################
275# Create the Config.h file that always defines HAVE_CONFIG_H and install it #
276#############################################################################
[311]277
[325]278# You only need to adapt the following line
279ConfigHeader = CbcConfig.h
[311]280
[325]281install-exec-local:
282        echo "#ifndef HAVE_CONFIG_H" >bla
283        echo "#define HAVE_CONFIG_H" >>bla
284        echo "#endif" >> bla
285        cat $(srcdir)/$(ConfigHeader) >> bla
[846]286        $(install_sh_DATA) bla $(DESTDIR)$(includecoindir)/$(ConfigHeader)
[325]287        rm -f bla
[311]288
[325]289uninstall-local:
[846]290        rm -f $(DESTDIR)$(includecoindir)/$(ConfigHeader)
Note: See TracBrowser for help on using the repository browser.