source: trunk/Clp/configure.ac @ 2453

Last change on this file since 2453 was 2396, checked in by stefan, 6 months ago

restoring Clp/trunk

  • Property svn:keywords set to Id
File size: 7.6 KB
RevLine 
[754]1# Copyright (C) 2006 International Business Machines.
2# All Rights Reserved.
[1655]3# This file is distributed under the Eclipse Public License.
[754]4
[784]5## $Id: configure.ac 2396 2019-02-22 21:53:45Z stefan $
[754]6
7# Author:  Andreas Waechter            IBM    2006-04-13
8
9#############################################################################
10#                       Names and other basic things                        #
11#############################################################################
12
13AC_PREREQ(2.59)
14
[2396]15AC_INIT([Clp],[trunk],[clp@list.coin-or.org])
[754]16
17AC_COPYRIGHT([
18Copyright 2006 International Business Machines and others.
19All Rights Reserved.
20This file is part of the open source package Coin which is distributed
[1655]21under the Eclipse Public License.])
[754]22
23# List one file in the package so that the configure script can test
24# whether the package is actually there
[1559]25AC_CONFIG_SRCDIR(src/ClpSimplex.cpp)
[754]26
[786]27# Where should everything be installed by default?  Here, we want it
28# to be installed directly in 'bin', 'lib', 'include' subdirectories
29# of the directory where configure is run.  The default would be
30# /usr/local.
31AC_PREFIX_DEFAULT([`pwd`])
32
[754]33#############################################################################
34#                         Standard build tool stuff                         #
35#############################################################################
36
37# Get the system type
38AC_CANONICAL_BUILD
39
40# If this project depends on external projects, the Externals file in
41# the source root directory contains definition of where to find those
42# externals.  The following macro ensures that those externals are
43# retrieved by svn if they are not there yet.
[1564]44AC_COIN_PROJECTDIR_INIT(Clp)
[754]45
46# Check if user wants to produce debugging code
[836]47AC_COIN_DEBUG_COMPILE(Clp)
[754]48
49# Get the name of the C++ compiler and appropriate compiler options
50AC_COIN_PROG_CXX
51
52# Initialize automake and libtool
53AC_COIN_INIT_AUTO_TOOLS
54
55#############################################################################
[1559]56#                              COIN-OR components                           #
[754]57#############################################################################
58
[1621]59AC_COIN_CHECK_PACKAGE(CoinUtils, [coinutils], [ClpLib])
[1628]60if test $coin_has_coinutils != yes ; then
61  AC_MSG_ERROR([Required package CoinUtils not available.])
62fi
[1693]63AC_COIN_CHECK_PACKAGE(Osi,       [osi],       [OsiClpLib])
[1618]64AC_COIN_CHECK_PACKAGE(OsiTests,  [osi-unittests])
65AC_COIN_CHECK_PACKAGE(Sample,    [coindatasample])
66AC_COIN_CHECK_PACKAGE(Netlib,    [coindatanetlib])
[754]67
68#############################################################################
[1910]69#                                    Aboca                                  #
70#############################################################################
71
72#  1 - build Abc serial but no inherit code
73#  2 - build Abc serial and inherit code
74#  3 - build Abc cilk parallel but no inherit code
75#  4 - build Abc cilk parallel and inherit code
76AC_ARG_ENABLE([aboca],
77              [AC_HELP_STRING([--enable-aboca],[enables build of Aboca solver (set to 1,2,3,4)])],
78              [use_aboca=$enableval],
79              [use_aboca=no])
[1920]80if test "$use_aboca" = yes ; then
81  use_aboca=1
82fi
[1910]83case "$use_aboca" in
84  1 | 2 | 3 | 4)
85    AC_DEFINE_UNQUOTED([CLP_HAS_ABC], [$use_aboca], [Define to 1, 2, 3, or 4 if Aboca should be build.])
86    ;;
87  no) ;;
88  *)
89    AC_MSG_ERROR([invalid argument for --enable-aboca: $use_aboca])
90    ;;
91esac
92AM_CONDITIONAL(COIN_HAS_ABC, test ! "$use_aboca" = no)
93
94#############################################################################
[994]95#                        Third party linear solvers                         #
96#############################################################################
97
[1691]98# AMD from UFL
99AC_COIN_CHECK_USER_LIBRARY(AMD, AMD, [amd.h], [amd_defaults],,[ClpLib])
100
101# CHOLMOD from UFL
102# CHOLMOD requires AMD, which can be given by AMD_LIBS
[1695]103# CHOLMOD requires Blas and Lapack?
[1691]104coin_save_LIBS="$LIBS"
[1695]105LIBS="$LIBS $AMD_LIBS"
[1691]106AC_COIN_CHECK_USER_LIBRARY(CHOLMOD, CHOLMOD, [cholmod.h], [cholmod_start],,[ClpLib])
107LIBS="$coin_save_LIBS"
108
109# Glpk also brings AMD
110if test $coin_has_cholmod = false -a $coin_has_amd = false ; then
[1751]111  AC_COIN_CHECK_PACKAGE(Glpk, [coinglpk], [ClpLib])
[1691]112  if test $coin_has_glpk = yes ; then
113    AC_MSG_NOTICE([using AMD from GLPK package])
114    AC_DEFINE(COIN_HAS_AMD,[1],[Define to 1 if the AMD package is available])
115  fi
116else
117  # for configure
118  AM_CONDITIONAL(COIN_HAS_GLPK, [test 0 = 1])
119fi
120
[1692]121# MUMPS
122AC_COIN_CHECK_PACKAGE(Mumps, [coinmumps], [ClpLib])
123
[994]124# WSMP
125AC_ARG_WITH([wsmp],
126            AC_HELP_STRING([--with-wsmp],
127                           [specify WSMP library]),
128            [use_wsmp=$withval], [use_wsmp=no])
129
130if test "$use_wsmp" != "no"; then
[1693]131  # Check how to link against Fortran libraries from C
[1695]132  AC_COIN_PROG_F77
[1693]133  AC_COIN_F77_WRAPPERS
[1695]134 
135  # WSMP requires Blas
136  AC_COIN_CHECK_PACKAGE_BLAS(ClpLib)
[1693]137
138  coin_save_LIBS="$LIBS"
[1695]139  LIBS="$LIBS $use_wsmp $BLAS_LIBS"
[1693]140  AC_LANG_PUSH([Fortran 77])
141  AC_MSG_CHECKING([whether user-supplied WSMP library \"$use_wsmp\" works])
142  AC_TRY_LINK([],[      call WSSMP()],
[1695]143              [AC_MSG_RESULT(yes)],
144              [AC_MSG_RESULT(no)
145               AC_MSG_ERROR([WSMP library $use_wsmp does not seem to work])])
[1693]146  AC_LANG_POP([Fortran 77])
147  LIBS="$coin_save_LIBS"
148
149  AC_DEFINE_UNQUOTED([COIN_HAS_WSMP], [1], [Define to 1 if the WSMP package is available])
150 
[1603]151  CLPLIB_LIBS="$use_wsmp $CLPLIB_LIBS"
[1693]152  CLPLIB_LIBS_INSTALLED="$use_wsmp $CLPLIB_LIBS_INSTALLED"
[1603]153  CLPLIB_PCLIBS="$use_wsmp $CLPLIB_PCLIBS"
[1698]154else
155  # to please configure
156  AM_CONDITIONAL(COIN_HAS_BLAS, [test 0 = 1])
[994]157fi
[1693]158AM_CONDITIONAL(COIN_HAS_WSMP, [test "$use_wsmp" != no])
[994]159
160#############################################################################
[754]161#                             Other dependencies                            #
162#############################################################################
[1946]163# Ampl Solver library
164AC_COIN_CHECK_PACKAGE(ASL, [coinasl], [ClpLib])
[754]165
[1603]166AC_COIN_CHECK_GNU_READLINE(ClpLib)
[754]167
[1722]168AC_COIN_CHECK_CXX_CHEADER(math)
169AC_COIN_CHECK_CXX_CHEADER(float)
170AC_COIN_CHECK_CXX_CHEADER(ieeefp)
171
[754]172##############################################################################
[778]173#                   VPATH links for example input files                      #
174##############################################################################
175
176# In case this is a VPATH configuration we need to make sure that the
177# input files for the examples are available in the VPATH directory.
178
179AC_COIN_VPATH_LINK(examples/hello.mps)
180AC_COIN_VPATH_LINK(examples/input.130)
[1938]181AC_COIN_VPATH_LINK(examples/g.tiny)
182AC_COIN_VPATH_LINK(examples/gparm.tiny)
[778]183
[1581]184#############################################################################
185#                  Check for doxygen                                        #
186#############################################################################
187
188AC_COIN_DOXYGEN(CoinUtils Osi)
189
[778]190##############################################################################
[754]191#                   Finishing up by writing all the output                   #
192##############################################################################
193
194# Here list all the files that configure should create (except for the
195# configuration header file)
196AC_CONFIG_FILES([Makefile
[778]197                 examples/Makefile
[754]198                 src/Makefile
[1559]199                 src/OsiClp/Makefile
[754]200                 test/Makefile
[1734]201                 clp.pc
202                 clp-uninstalled.pc])
[1910]203
[1559]204if test $coin_has_osi = yes ; then
[1636]205  AC_CONFIG_FILES([osi-clp.pc:src/OsiClp/osi-clp.pc.in
[1559]206                   osi-clp-uninstalled.pc:src/OsiClp/osi-clp-uninstalled.pc.in])
207fi
[754]208
[1581]209AC_CONFIG_FILES([doxydoc/doxygen.conf])
210
[754]211# Here put the location and name of the configuration header file
[1734]212AC_CONFIG_HEADER([src/config.h src/config_clp.h])
[754]213
214# Finally, we let configure write all the output...
[786]215AC_COIN_FINALIZE
Note: See TracBrowser for help on using the repository browser.