Changeset 465


Ignore:
Timestamp:
Aug 18, 2005 10:15:46 PM (14 years ago)
Author:
andreasw
Message:
  • added AMPL options support
  • added a few tests to configure (sse flags, HSL conditional compilation)
  • corrected a few option descriptions
  • DBG_SET_VERBOSITY eliminiated
  • made compilable for gcc 4.0.1
Location:
branches/dev
Files:
67 edited

Legend:

Unmodified
Added
Removed
  • branches/dev/Algorithm/IpAdaptiveMuUpdate.cpp

    r460 r465  
    2424  // ToDo Make the different globalization strategies extra classes
    2525
    26   DBG_SET_VERBOSITY(0);
     26#ifdef IP_DEBUG
     27  static const Index dbg_verbosity = 0;
     28#endif
    2729
    2830  AdaptiveMuUpdate::AdaptiveMuUpdate
     
    6971      "adaptive_mu_globalization",
    7072      "Globalization strategy for non-monotone mode",
    71       "kkt-error",
     73      "obj-constr-filter",
    7274      "kkt-error", "nonmonotone decrease of kkt-error",
    7375      "obj-constr-filter", "2-dim filter for objective and constraint violation",
    74       /*"kkt-error-filter", "3-dim filter for kkt-error components", not yet implemented*/
    7576      "never-monotone-mode", "disables globalization",
    7677      "To achieve global convergence of the adaptive version, the algorithm "
  • branches/dev/Algorithm/IpAlgBuilder.cpp

    r464 r465  
    3030#include "IpRestoRestoPhase.hpp"
    3131#include "IpTSymLinearSolver.hpp"
    32 #include "IpMa27TSolverInterface.hpp"
    33 #include "IpMc19TSymScalingMethod.hpp"
     32
     33#ifdef HAVE_MA27
     34# include "IpMa27TSolverInterface.hpp"
     35#endif
     36#ifdef HAVE_MC19
     37# include "IpMc19TSymScalingMethod.hpp"
     38#endif
    3439#ifdef HAVE_PARDISO
    3540# include "IpPardisoSolverInterface.hpp"
     
    4146namespace Ipopt
    4247{
    43   DBG_SET_VERBOSITY(0);
     48#ifdef IP_DEBUG
     49  static const Index dbg_verbosity = 0;
     50#endif
    4451
    4552  void AlgorithmBuilder::RegisterOptions(SmartPtr<RegisteredOptions> roptions)
     
    7380    roptions->AddStringOption3(
    7481      "mu_oracle",
    75       "Oracle for a new barrier parameters in the adaptive strategy",
     82      "Oracle for a new barrier parameter in the adaptive strategy",
    7683      "probing",
    7784      "probing", "Mehrotra's probing heuristic",
     
    122129                     linear_system_scaling, prefix);
    123130    if (linear_system_scaling=="mc19") {
     131#ifdef HAVE_MC19
    124132      ScalingMethod = new Mc19TSymScalingMethod();
     133#else
     134
     135      THROW_EXCEPTION(OPTION_INVALID,
     136                      "Selected linear system scaling method MC19 not available.");
     137#endif
     138
    125139    }
    126140
     
    129143    options.GetValue("linear_solver", linear_solver, prefix);
    130144    if (linear_solver=="ma27") {
     145#ifdef HAVE_MA27
    131146      SolverInterface = new Ma27TSolverInterface();
     147#else
     148
     149      THROW_EXCEPTION(OPTION_INVALID,
     150                      "Selected linear solver MA27 not available.");
     151#endif
     152
    132153    }
    133154    else if (linear_solver=="pardiso") {
     
    137158
    138159      THROW_EXCEPTION(OPTION_INVALID,
    139                       "Selected solver Pardiso not available.");
     160                      "Selected linear solver Pardiso not available.");
    140161#endif
    141162
     
    147168
    148169      THROW_EXCEPTION(OPTION_INVALID,
    149                       "Selected solver TAUCS not available.");
     170                      "Selected linear solver TAUCS not available.");
    150171#endif
    151172
  • branches/dev/Algorithm/IpAugRestoSystemSolver.cpp

    r430 r465  
    1616namespace Ipopt
    1717{
    18   DBG_SET_VERBOSITY(0);
     18#ifdef IP_DEBUG
     19  static const Index dbg_verbosity = 0;
     20#endif
    1921
    2022  AugRestoSystemSolver::AugRestoSystemSolver(AugSystemSolver& orig_aug_solver,
  • branches/dev/Algorithm/IpDefaultIterateInitializer.cpp

    r460 r465  
    1111namespace Ipopt
    1212{
    13   DBG_SET_VERBOSITY(0);
     13#ifdef IP_DEBUG
     14  static const Index dbg_verbosity = 0;
     15#endif
    1416
    1517  DefaultIterateInitializer::DefaultIterateInitializer
  • branches/dev/Algorithm/IpFilter.cpp

    r422 r465  
    1313{
    1414
    15   DBG_SET_VERBOSITY(0);
     15#ifdef IP_DEBUG
     16  static const Index dbg_verbosity = 0;
     17#endif
    1618
    1719  ///////////////////////////////////////////////////////////////////////////
  • branches/dev/Algorithm/IpFilterLineSearch.cpp

    r460 r465  
    3535{
    3636
    37   DBG_SET_VERBOSITY(0);
     37#ifdef IP_DEBUG
     38  static const Index dbg_verbosity = 0;
     39#endif
    3840
    3941  FilterLineSearch::FilterLineSearch(const SmartPtr<RestorationPhase>& resto_phase,
  • branches/dev/Algorithm/IpIpoptAlg.cpp

    r464 r465  
    1 // Copyright (C) 2004, International Business Machines and others.
     1// Copyright (C) 2004, 2005 International Business Machines and others.
    22// All Rights Reserved.
    33// This code is published under the Common Public License.
     
    1313namespace Ipopt
    1414{
    15   DBG_SET_VERBOSITY(0);
     15#ifdef IP_DEBUG
     16  static const Index dbg_verbosity = 0;
     17#endif
    1618
    1719  IpoptAlgorithm::IpoptAlgorithm(const SmartPtr<PDSystemSolver>& pd_solver,
  • branches/dev/Algorithm/IpIpoptCalculatedQuantities.cpp

    r464 r465  
    1 // Copyright (C) 2004, International Business Machines and others.
     1// Copyright (C) 2004, 2005 International Business Machines and others.
    22// All Rights Reserved.
    33// This code is published under the Common Public License.
     
    2323namespace Ipopt
    2424{
    25   DBG_SET_VERBOSITY(0);
     25#ifdef IP_DEBUG
     26  static const Index dbg_verbosity = 0;
     27#endif
    2628
    2729  IpoptCalculatedQuantities::IpoptCalculatedQuantities
  • branches/dev/Algorithm/IpIpoptData.cpp

    r464 r465  
    1313{
    1414
    15   DBG_SET_VERBOSITY(0);
     15#ifdef IP_DEBUG
     16  static const Index dbg_verbosity = 0;
     17#endif
    1618
    1719  IpoptData::IpoptData()
     
    4446    roptions->AddLowerBoundedNumberOption(
    4547      "tol",
    46       "Convergence tolerance (relative).",
     48      "Desired convergence tolerance (relative).",
    4749      0.0, true,  1e-8,
    4850      "Determines the convergence tolerance for the algorthim.  The "
  • branches/dev/Algorithm/IpIteratesVector.cpp

    r425 r465  
    1 // Copyright (C) 2004, International BusinDess Machines and others.
     1// Copyright (C) 2005 International BusinDess Machines and others.
    22// All Rights Reserved.
    33// This code is published under the Common Public License.
     
    1212{
    1313
    14   DBG_SET_VERBOSITY(0);
     14#ifdef IP_DEBUG
     15  static const Index dbg_verbosity = 0;
     16#endif
    1517
    1618  IteratesVector::IteratesVector(const IteratesVectorSpace* owner_space, bool create_new)
     
    154156  IteratesVectorSpace::~IteratesVectorSpace()
    155157  {}
    156   ;
    157158
    158159} // namespae Ipopt
  • branches/dev/Algorithm/IpLeastSquareMults.cpp

    r430 r465  
    1 // Copyright (C) 2004, International Business Machines and others.
     1// Copyright (C) 2004, 2005 International Business Machines and others.
    22// All Rights Reserved.
    33// This code is published under the Common Public License.
     
    1111namespace Ipopt
    1212{
    13   DBG_SET_VERBOSITY(0);
     13#ifdef IP_DEBUG
     14  static const Index dbg_verbosity = 0;
     15#endif
    1416
    1517  LeastSquareMultipliers::LeastSquareMultipliers(AugSystemSolver& augSysSolver)
  • branches/dev/Algorithm/IpLoqoMuOracle.cpp

    r438 r465  
    1 // Copyright (C) 2004, International Business Machines and others.
     1// Copyright (C) 2004, 2005 International Business Machines and others.
    22// All Rights Reserved.
    33// This code is published under the Common Public License.
     
    2424{
    2525
    26   DBG_SET_VERBOSITY(0);
     26#ifdef IP_DEBUG
     27  static const Index dbg_verbosity = 0;
     28#endif
    2729
    2830  LoqoMuOracle::LoqoMuOracle()
  • branches/dev/Algorithm/IpMonotoneMuUpdate.cpp

    r460 r465  
    1 // Copyright (C) 2004, International Business Machines and others.
     1// Copyright (C) 2004, 2005 International Business Machines and others.
    22// All Rights Reserved.
    33// This code is published under the Common Public License.
     
    2323{
    2424
    25   DBG_SET_VERBOSITY(0);
     25#ifdef IP_DEBUG
     26  static const Index dbg_verbosity = 0;
     27#endif
    2628
    2729  MonotoneMuUpdate::MonotoneMuUpdate(const SmartPtr<LineSearch>& linesearch)
  • branches/dev/Algorithm/IpNLPScaling.cpp

    r460 r465  
    1 // Copyright (C) 2004, International Business Machines and others.
     1// Copyright (C) 2005 International Business Machines and others.
    22// All Rights Reserved.
    33// This code is published under the Common Public License.
     
    1212{
    1313
    14   DBG_SET_VERBOSITY(0);
     14#ifdef IP_DEBUG
     15  static const Index dbg_verbosity = 0;
     16#endif
    1517
    1618  SmartPtr<Vector> NLPScalingObject::apply_vector_scaling_x_LU_NonConst(
     
    297299    }
    298300    return scaled_x;
    299   };
     301  }
    300302
    301303  SmartPtr<const Vector> StandardScalingBase::apply_vector_scaling_x(
  • branches/dev/Algorithm/IpOptErrorConvCheck.cpp

    r460 r465  
    1 // Copyright (C) 2004, International Business Machines and others.
     1// Copyright (C) 2004, 2005 International Business Machines and others.
    22// All Rights Reserved.
    33// This code is published under the Common Public License.
     
    1111namespace Ipopt
    1212{
    13   DBG_SET_VERBOSITY(0);
     13#ifdef IP_DEBUG
     14  static const Index dbg_verbosity = 0;
     15#endif
    1416
    1517  OptimalityErrorConvergenceCheck::OptimalityErrorConvergenceCheck()
     
    2931    roptions->AddLowerBoundedNumberOption(
    3032      "dual_inf_tol",
    31       "Acceptance threshold for the dual infeasibility.",
     33      "Desired threshold for the dual infeasibility.",
    3234      0.0, true, 1e-4,
    3335      "Absolute tolerance on the dual infesaibility. Successful termination "
     
    3638    roptions->AddLowerBoundedNumberOption(
    3739      "constr_viol_tol",
    38       "Acceptance threshold for the constraint violation.",
     40      "Desired threshold for the constraint violation.",
    3941      0.0, true, 1e-4,
    4042      "Absolute tolerance on the constraint violation. Successful termination "
     
    4345    roptions->AddLowerBoundedNumberOption(
    4446      "compl_inf_tol",
    45       "Acceptance threshold for the complementarity conditions.",
     47      "Desired threshold for the complementarity conditions.",
    4648      0.0, true, 1e-4,
    4749      "Absolute tolerance on the complementarity. Successful termination "
  • branches/dev/Algorithm/IpOrigIpoptNLP.cpp

    r460 r465  
    1 // Copyright (C) 2004, International Business Machines and others.
     1// Copyright (C) 2004, 2005 International Business Machines and others.
    22// All Rights Reserved.
    33// This code is published under the Common Public License.
     
    2121namespace Ipopt
    2222{
    23   DBG_SET_VERBOSITY(0);
     23#ifdef IP_DEBUG
     24  static const Index dbg_verbosity = 0;
     25#endif
    2426
    2527  OrigIpoptNLP::OrigIpoptNLP(const SmartPtr<const Journalist>& jnlst,
  • branches/dev/Algorithm/IpOrigIterationOutput.cpp

    r438 r465  
    2121namespace Ipopt
    2222{
    23   DBG_SET_VERBOSITY(0);
     23#ifdef IP_DEBUG
     24  static const Index dbg_verbosity = 0;
     25#endif
    2426
    2527  OrigIterationOutput::OrigIterationOutput()
  • branches/dev/Algorithm/IpPDFullSpaceSolver.cpp

    r460 r465  
    1 // Copyright (C) 2004, International BusinDess Machines and others.
     1// Copyright (C) 2004, 2005 International BusinDess Machines and others.
    22// All Rights Reserved.
    33// This code is published under the Common Public License.
     
    1313{
    1414
    15   DBG_SET_VERBOSITY(0);
     15#ifdef IP_DEBUG
     16  static const Index dbg_verbosity = 0;
     17#endif
    1618
    1719  PDFullSpaceSolver::PDFullSpaceSolver(AugSystemSolver& augSysSolver,
     
    3537    roptions->AddLowerBoundedIntegerOption(
    3638      "min_refinement_steps",
    37       "Minimum number of iterative refinement steps per solve.",
     39      "Minimum number of iterative refinement steps per linear system solve.",
    3840      0, 1,
    3941      "Iterative refinement (on the unsymmetric full system) is performed for "
     
    4345    roptions->AddLowerBoundedIntegerOption(
    4446      "max_refinement_steps",
    45       "Maximal number of iterative refinement steps per solve.",
     47      "Maximal number of iterative refinement steps per linear system solve.",
    4648      0, 10,
    4749      "Iterative refinement (on the unsymmetric full system) is performed for "
  • branches/dev/Algorithm/IpPDPerturbationHandler.cpp

    r460 r465  
    1 // Copyright (C) 2005, International Business Machines and others.
     1// Copyright (C) 2005 International Business Machines and others.
    22// All Rights Reserved.
    33// This code is published under the Common Public License.
     
    1111namespace Ipopt
    1212{
    13   DBG_SET_VERBOSITY(0);
     13#ifdef IP_DEBUG
     14  static const Index dbg_verbosity = 0;
     15#endif
    1416
    1517  PDPerturbationHandler::PDPerturbationHandler()
  • branches/dev/Algorithm/IpProbingMuOracle.cpp

    r460 r465  
    1 // Copyright (C) 2004, International Business Machines and others.
     1// Copyright (C) 2004, 2005 International Business Machines and others.
    22// All Rights Reserved.
    33// This code is published under the Common Public License.
     
    2121namespace Ipopt
    2222{
    23 
    24   DBG_SET_VERBOSITY(0);
     23#ifdef IP_DEBUG
     24  static const Index dbg_verbosity = 0;
     25#endif
    2526
    2627  ProbingMuOracle::ProbingMuOracle(const SmartPtr<PDSystemSolver>& pd_solver)
  • branches/dev/Algorithm/IpQualityFunctionMuOracle.cpp

    r460 r465  
    1 // Copyright (C) 2004, International Business Machines and others.
     1// Copyright (C) 2004, 2005 International Business Machines and others.
    22// All Rights Reserved.
    33// This code is published under the Common Public License.
     
    2121namespace Ipopt
    2222{
    23 
    24   DBG_SET_VERBOSITY(0);
     23#ifdef IP_DEBUG
     24  static const Index dbg_verbosity = 0;
     25#endif
    2526
    2627  QualityFunctionMuOracle::QualityFunctionMuOracle(const SmartPtr<PDSystemSolver>& pd_solver)
  • branches/dev/Algorithm/IpRestoFilterConvCheck.cpp

    r460 r465  
    1 // Copyright (C) 2004, International Business Machines and others.
     1// Copyright (C) 2004, 2005 International Business Machines and others.
    22// All Rights Reserved.
    33// This code is published under the Common Public License.
     
    1313namespace Ipopt
    1414{
    15 
    16   DBG_SET_VERBOSITY(0);
     15#ifdef IP_DEBUG
     16  static const Index dbg_verbosity = 0;
     17#endif
    1718
    1819  RestoFilterConvergenceCheck::RestoFilterConvergenceCheck()
  • branches/dev/Algorithm/IpRestoIpoptNLP.cpp

    r460 r465  
    1 // Copyright (C) 2004, International Business Machines and others.
     1// Copyright (C) 2004, 2005 International Business Machines and others.
    22// All Rights Reserved.
    33// This code is published under the Common Public License.
     
    2525namespace Ipopt
    2626{
    27   DBG_SET_VERBOSITY(0);
     27#ifdef IP_DEBUG
     28  static const Index dbg_verbosity = 0;
     29#endif
    2830
    2931  RestoIpoptNLP::RestoIpoptNLP(IpoptNLP& orig_ip_nlp,
  • branches/dev/Algorithm/IpRestoIterateInitializer.cpp

    r414 r465  
    1 // Copyright (C) 2004, International Business Machines and others.
     1// Copyright (C) 2004, 2005 International Business Machines and others.
    22// All Rights Reserved.
    33// This code is published under the Common Public License.
     
    1313namespace Ipopt
    1414{
    15   DBG_SET_VERBOSITY(0);
     15#ifdef IP_DEBUG
     16  static const Index dbg_verbosity = 0;
     17#endif
    1618
    1719  RestoIterateInitializer::RestoIterateInitializer
  • branches/dev/Algorithm/IpRestoIterationOutput.cpp

    r438 r465  
    1 // Copyright (C) 2004, International Business Machines and others.
     1// Copyright (C) 2004, 2005 International Business Machines and others.
    22// All Rights Reserved.
    33// This code is published under the Common Public License.
     
    2222namespace Ipopt
    2323{
    24   DBG_SET_VERBOSITY(0);
     24#ifdef IP_DEBUG
     25  static const Index dbg_verbosity = 0;
     26#endif
    2527
    2628  RestoIterationOutput::RestoIterationOutput(const SmartPtr<OrigIterationOutput>& resto_orig_iteration_output)
  • branches/dev/Algorithm/IpRestoMinC_1Nrm.cpp

    r460 r465  
    1 // Copyright (C) 2004, International Business Machines and others.
     1// Copyright (C) 2004, 2005 International Business Machines and others.
    22// All Rights Reserved.
    33// This code is published under the Common Public License.
     
    1414namespace Ipopt
    1515{
    16   DBG_SET_VERBOSITY(0);
     16#ifdef IP_DEBUG
     17  static const Index dbg_verbosity = 0;
     18#endif
    1719
    1820  MinC_1NrmRestorationPhase::MinC_1NrmRestorationPhase
  • branches/dev/Algorithm/IpRestoRestoPhase.cpp

    r305 r465  
    1 // Copyright (C) 2004, International Business Machines and others.
     1// Copyright (C) 2004, 2005 International Business Machines and others.
    22// All Rights Reserved.
    33// This code is published under the Common Public License.
     
    1212namespace Ipopt
    1313{
    14   DBG_SET_VERBOSITY(0);
     14#ifdef IP_DEBUG
     15  static const Index dbg_verbosity = 0;
     16#endif
    1517
    1618  RestoRestorationPhase::RestoRestorationPhase()
  • branches/dev/Algorithm/IpStdAugSystemSolver.cpp

    r430 r465  
    1 // Copyright (C) 2004, International BusinDess Machines and others.
     1// Copyright (C) 2004, 2005 International BusinDess Machines and others.
    22// All Rights Reserved.
    33// This code is published under the Common Public License.
     
    2121namespace Ipopt
    2222{
    23 
    24   DBG_SET_VERBOSITY(0);
     23#ifdef IP_DEBUG
     24  static const Index dbg_verbosity = 0;
     25#endif
    2526
    2627  StdAugSystemSolver::StdAugSystemSolver(SymLinearSolver& linSolver)
  • branches/dev/Algorithm/IpWarmStartIterateInitializer.cpp

    r460 r465  
    1 // Copyright (C) 2004, International Business Machines and others.
     1// Copyright (C) 2005 International Business Machines and others.
    22// All Rights Reserved.
    33// This code is published under the Common Public License.
     
    2525namespace Ipopt
    2626{
    27   DBG_SET_VERBOSITY(0);
     27#ifdef IP_DEBUG
     28  static const Index dbg_verbosity = 0;
     29#endif
    2830
    2931  WarmStartIterateInitializer::WarmStartIterateInitializer()
  • branches/dev/Algorithm/LinearSolvers/IpLinearSolversRegOp.cpp

    r464 r465  
    1 // Copyright (C) 2005, International Business Machines and others.
     1// Copyright (C) 2005 International Business Machines and others.
    22// All Rights Reserved.
    33// This code is published under the Common Public License.
     
    99#include "IpLinearSolversRegOp.hpp"
    1010#include "IpRegOptions.hpp"
    11 #include "IpMa27TSolverInterface.hpp"
     11
     12#ifdef HAVE_MA27
     13# include "IpMa27TSolverInterface.hpp"
     14#endif
    1215
    1316namespace Ipopt
     
    1720  {
    1821    roptions->SetRegisteringCategory("Linear Solver");
     22#ifdef HAVE_MA27
     23
    1924    Ma27TSolverInterface::RegisterOptions(roptions);
     25#endif
     26
    2027    roptions->SetRegisteringCategory("Uncategorized");
    2128  }
  • branches/dev/Algorithm/LinearSolvers/IpMa27TSolverInterface.cpp

    r460 r465  
    1 // Copyright (C) 2004, International Business Machines and others.
     1// Copyright (C) 2004, 2005 International Business Machines and others.
    22// All Rights Reserved.
    33// This code is published under the Common Public License.
     
    4040namespace Ipopt
    4141{
    42 
    43   DBG_SET_VERBOSITY(0);
     42#ifdef IP_DEBUG
     43  static const Index dbg_verbosity = 0;
     44#endif
    4445
    4546  Ma27TSolverInterface::Ma27TSolverInterface()
  • branches/dev/Algorithm/LinearSolvers/IpMc19TSymScalingMethod.cpp

    r438 r465  
    1 // Copyright (C) 2004, International Business Machines and others.
     1// Copyright (C) 2004, 2005 International Business Machines and others.
    22// All Rights Reserved.
    33// This code is published under the Common Public License.
     
    3030namespace Ipopt
    3131{
     32#ifdef IP_DEBUG
     33  static const Index dbg_verbosity = 0;
     34#endif
    3235
    33   DBG_SET_VERBOSITY(0);
    3436
    3537  bool Mc19TSymScalingMethod::InitializeImpl(const OptionsList& options,
  • branches/dev/Algorithm/LinearSolvers/IpPardisoSolverInterface.cpp

    r438 r465  
    1 // Copyright (C) 2005, International Business Machines and others.
     1// Copyright (C) 2005 International Business Machines and others.
    22// All Rights Reserved.
    33// This code is published under the Common Public License.
     
    3636namespace Ipopt
    3737{
    38 
    39   DBG_SET_VERBOSITY(0);
     38#ifdef IP_DEBUG
     39  static const Index dbg_verbosity = 0;
     40#endif
    4041
    4142  PardisoSolverInterface::PardisoSolverInterface()
  • branches/dev/Algorithm/LinearSolvers/IpTAUCSSolverInterface.cpp

    r438 r465  
    1 // Copyright (C) 2005, Yifan Hu (Wolfram Research)
     1// Copyright (C) 2005 Yifan Hu (Wolfram Research) and others
    22// All Rights Reserved.
    33// This code is published under the Common Public License.
     
    2121namespace Ipopt
    2222{
    23 
    24   DBG_SET_VERBOSITY(0);
     23#ifdef IP_DEBUG
     24  static const Index dbg_verbosity = 0;
     25#endif
    2526
    2627  TAUCSSolverInterface::TAUCSSolverInterface()
  • branches/dev/Algorithm/LinearSolvers/IpTSymLinearSolver.cpp

    r440 r465  
    2222namespace Ipopt
    2323{
    24 
    25   DBG_SET_VERBOSITY(0);
     24#ifdef IP_DEBUG
     25  static const Index dbg_verbosity = 0;
     26#endif
    2627
    2728  TSymLinearSolver::TSymLinearSolver
  • branches/dev/Algorithm/LinearSolvers/IpTripletToCSRConverter.cpp

    r430 r465  
    1 // Copyright (C) 2005, International Business Machines and others.
     1// Copyright (C) 2005 International Business Machines and others.
    22// All Rights Reserved.
    33// This code is published under the Common Public License.
     
    1212namespace Ipopt
    1313{
    14 
    15   DBG_SET_VERBOSITY(0);
     14#ifdef IP_DEBUG
     15  static const Index dbg_verbosity = 0;
     16#endif
    1617
    1718  TripletToCSRConverter::TripletToCSRConverter(Index offset)
  • branches/dev/Algorithm/LinearSolvers/Makefile.am

    r460 r465  
    1313liblinsolvers_a_SOURCES = \
    1414        IpLinearSolversRegOp.cpp IpLinearSolversRegOp.hpp \
    15         IpMa27TSolverInterface.cpp IpMa27TSolverInterface.hpp \
    16         IpMc19TSymScalingMethod.cpp IpMc19TSymScalingMethod.hpp \
    1715        IpSparseSymLinearSolverInterface.hpp \
    1816        IpSymLinearSolver.hpp \
     
    2018        IpTSymLinearSolver.cpp IpTSymLinearSolver.hpp \
    2119        IpTSymScalingMethod.hpp
     20
     21if HAVE_MA27
     22  liblinsolvers_a_SOURCES += \
     23        IpMa27TSolverInterface.cpp IpMa27TSolverInterface.hpp
     24endif
     25
     26if HAVE_MC19
     27  liblinsolvers_a_SOURCES += \
     28        IpMc19TSymScalingMethod.cpp IpMc19TSymScalingMethod.hpp
     29endif
    2230
    2331if HAVE_PARDISO
  • branches/dev/Algorithm/LinearSolvers/Makefile.in

    r460 r465  
    4444POST_UNINSTALL = :
    4545build_triplet = @build@
    46 @HAVE_PARDISO_TRUE@am__append_1 = \
     46@HAVE_MA27_TRUE@am__append_1 = \
     47@HAVE_MA27_TRUE@        IpMa27TSolverInterface.cpp IpMa27TSolverInterface.hpp
     48
     49@HAVE_MC19_TRUE@am__append_2 = \
     50@HAVE_MC19_TRUE@        IpMc19TSymScalingMethod.cpp IpMc19TSymScalingMethod.hpp
     51
     52@HAVE_PARDISO_TRUE@am__append_3 = \
    4753@HAVE_PARDISO_TRUE@     IpPardisoSolverInterface.cpp IpPardisoSolverInterface.hpp
    4854
    49 @HAVE_TAUCS_TRUE@am__append_2 = \
     55@HAVE_TAUCS_TRUE@am__append_4 = \
    5056@HAVE_TAUCS_TRUE@       IpTAUCSSolverInterface.cpp IpTAUCSSolverInterface.hpp
    5157
     
    6369liblinsolvers_a_LIBADD =
    6470am__liblinsolvers_a_SOURCES_DIST = IpLinearSolversRegOp.cpp \
    65         IpLinearSolversRegOp.hpp IpMa27TSolverInterface.cpp \
    66         IpMa27TSolverInterface.hpp IpMc19TSymScalingMethod.cpp \
    67         IpMc19TSymScalingMethod.hpp \
    68         IpSparseSymLinearSolverInterface.hpp IpSymLinearSolver.hpp \
    69         IpTripletToCSRConverter.cpp IpTripletToCSRConverter.hpp \
    70         IpTSymLinearSolver.cpp IpTSymLinearSolver.hpp \
    71         IpTSymScalingMethod.hpp IpPardisoSolverInterface.cpp \
    72         IpPardisoSolverInterface.hpp IpTAUCSSolverInterface.cpp \
    73         IpTAUCSSolverInterface.hpp
    74 @HAVE_PARDISO_TRUE@am__objects_1 = IpPardisoSolverInterface.$(OBJEXT)
    75 @HAVE_TAUCS_TRUE@am__objects_2 = IpTAUCSSolverInterface.$(OBJEXT)
     71        IpLinearSolversRegOp.hpp IpSparseSymLinearSolverInterface.hpp \
     72        IpSymLinearSolver.hpp IpTripletToCSRConverter.cpp \
     73        IpTripletToCSRConverter.hpp IpTSymLinearSolver.cpp \
     74        IpTSymLinearSolver.hpp IpTSymScalingMethod.hpp \
     75        IpMa27TSolverInterface.cpp IpMa27TSolverInterface.hpp \
     76        IpMc19TSymScalingMethod.cpp IpMc19TSymScalingMethod.hpp \
     77        IpPardisoSolverInterface.cpp IpPardisoSolverInterface.hpp \
     78        IpTAUCSSolverInterface.cpp IpTAUCSSolverInterface.hpp
     79@HAVE_MA27_TRUE@am__objects_1 = IpMa27TSolverInterface.$(OBJEXT)
     80@HAVE_MC19_TRUE@am__objects_2 = IpMc19TSymScalingMethod.$(OBJEXT)
     81@HAVE_PARDISO_TRUE@am__objects_3 = IpPardisoSolverInterface.$(OBJEXT)
     82@HAVE_TAUCS_TRUE@am__objects_4 = IpTAUCSSolverInterface.$(OBJEXT)
    7683am_liblinsolvers_a_OBJECTS = IpLinearSolversRegOp.$(OBJEXT) \
    77         IpMa27TSolverInterface.$(OBJEXT) \
    78         IpMc19TSymScalingMethod.$(OBJEXT) \
    7984        IpTripletToCSRConverter.$(OBJEXT) IpTSymLinearSolver.$(OBJEXT) \
    80         $(am__objects_1) $(am__objects_2)
     85        $(am__objects_1) $(am__objects_2) $(am__objects_3) \
     86        $(am__objects_4)
    8187liblinsolvers_a_OBJECTS = $(am_liblinsolvers_a_OBJECTS)
    8288DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)/inc
     
    152158FFLAGS = @FFLAGS@
    153159FLIBS = @FLIBS@
     160HAVE_MA27_FALSE = @HAVE_MA27_FALSE@
     161HAVE_MA27_TRUE = @HAVE_MA27_TRUE@
     162HAVE_MC19_FALSE = @HAVE_MC19_FALSE@
     163HAVE_MC19_TRUE = @HAVE_MC19_TRUE@
    154164HAVE_PARDISO_FALSE = @HAVE_PARDISO_FALSE@
    155165HAVE_PARDISO_TRUE = @HAVE_PARDISO_TRUE@
     
    227237noinst_LIBRARIES = liblinsolvers.a
    228238liblinsolvers_a_SOURCES = IpLinearSolversRegOp.cpp \
    229         IpLinearSolversRegOp.hpp IpMa27TSolverInterface.cpp \
    230         IpMa27TSolverInterface.hpp IpMc19TSymScalingMethod.cpp \
    231         IpMc19TSymScalingMethod.hpp \
    232         IpSparseSymLinearSolverInterface.hpp IpSymLinearSolver.hpp \
    233         IpTripletToCSRConverter.cpp IpTripletToCSRConverter.hpp \
    234         IpTSymLinearSolver.cpp IpTSymLinearSolver.hpp \
    235         IpTSymScalingMethod.hpp $(am__append_1) $(am__append_2)
     239        IpLinearSolversRegOp.hpp IpSparseSymLinearSolverInterface.hpp \
     240        IpSymLinearSolver.hpp IpTripletToCSRConverter.cpp \
     241        IpTripletToCSRConverter.hpp IpTSymLinearSolver.cpp \
     242        IpTSymLinearSolver.hpp IpTSymScalingMethod.hpp $(am__append_1) \
     243        $(am__append_2) $(am__append_3) $(am__append_4)
    236244
    237245# Astyle stuff
  • branches/dev/Algorithm/Makefile.in

    r460 r465  
    155155FFLAGS = @FFLAGS@
    156156FLIBS = @FLIBS@
     157HAVE_MA27_FALSE = @HAVE_MA27_FALSE@
     158HAVE_MA27_TRUE = @HAVE_MA27_TRUE@
     159HAVE_MC19_FALSE = @HAVE_MC19_FALSE@
     160HAVE_MC19_TRUE = @HAVE_MC19_TRUE@
    157161HAVE_PARDISO_FALSE = @HAVE_PARDISO_FALSE@
    158162HAVE_PARDISO_TRUE = @HAVE_PARDISO_TRUE@
  • branches/dev/Apps/AmplSolver/AmplTNLP.cpp

    r458 r465  
    77// Authors:  Carl Laird, Andreas Waechter     IBM    2004-08-13
    88
    9 // TODO:
    10 // - clean up the boolean for initialization
    11 // - pass in a tag so we can know when x has changed
    12 // - look closer at the interface - it should pass in non-zeros as well as m in the jacobian stuff (maybe hessian stuff)
    13 
    149#include "AmplTNLP.hpp"
    1510#include "IpDenseVector.hpp"
     
    1914
    2015/* AMPL includes */
    21 //extern "C"
    22 //{
    2316#include "asl.h"
    2417#include "asl_pfgh.h"
    2518#include "getstub.h"
    26 //}
    2719
    2820namespace Ipopt
    2921{
    30   DBG_SET_VERBOSITY(0);
    31 
    32   AmplTNLP::AmplTNLP(const SmartPtr<const Journalist>& jnlst, char**& argv,
     22#ifdef IP_DEBUG
     23  static const Index dbg_verbosity = 0;
     24#endif
     25
     26  AmplTNLP::AmplTNLP(const SmartPtr<const Journalist>& jnlst,
     27                     const SmartPtr<OptionsList> options,
     28                     char**& argv,
    3329                     SmartPtr<AmplSuffixHandler> suffix_handler /* = NULL */,
    3430                     bool allow_discrete /* = false */)
    3531      :
    3632      TNLP(),
    37       jnlst_(ConstPtr(jnlst)),
     33      jnlst_(jnlst),
    3834      asl_(NULL),
    3935      obj_sign_(1),
     
    6460
    6561    // Read the options and stub
    66     // ToDo: Figure out the options stuff
    67     char* stub = getstub(&argv, NULL); // need to deal with options here
     62    char* stub = get_options(options, argv);
    6863    if (!stub) {
    69       printf("No .nl file given!\n");
    70       exit(1);
    71     }
    72 
    73     jnlst_->Printf(J_SUMMARY, J_MAIN, "Ampl Model: %s\n", stub);
    74 
    75     // Parse the first part of the nl file
    76     //char* stub = argv[0];
     64      jnlst_->Printf(J_ERROR, J_MAIN, "No .nl file given!\n");
     65      exit(-1);
     66    }
     67
    7768    FILE* nl = jac0dim(stub, (fint)strlen(stub));
    7869    DBG_ASSERT(nl);
     70    jnlst_->Printf(J_SUMMARY, J_MAIN, "\n");
     71
    7972    // check the problem statistics (see Table 1 in AMPL doc)
    8073    DBG_ASSERT(n_var > 0); // need some continuous variables
    81     //    DBG_ASSERT(nbv == 0); // Cannot handle binary variables
    82     //    DBG_ASSERT(niv == 0); // Cannot handle integer variables
    83     // DELETEME
    8474    if (!allow_discrete && (nbv>0 || niv>0) ) {
    85       // The journalist has not yet been initialized at this point
    86       // jnlst_->Printf(J_WARNING, J_MAIN, "Warning: Treating %d binary and %d integer variables as continous.\n", nbv, niv);
    87       printf("==> Warning: Treating %d binary and %d integer variables as continous.\n\n", nbv, niv);
     75      jnlst_->Printf(J_WARNING, J_MAIN, "==> Warning: Treating %d binary and %d integer variables as continous.\n\n", nbv, niv);
    8876      allow_discrete = true;
    8977    }
     
    127115      break;
    128116      case ASL_readerr_nofile : {
    129         printf("Cannot open .nl file\n");
    130         exit(1);
     117        jnlst_->Printf(J_ERROR, J_MAIN, "Cannot open .nl file\n");
     118        exit(-1);
    131119      }
    132120      break;
    133121      case ASL_readerr_nonlin : {
    134122        DBG_ASSERT(false); // this better not be an error!
    135         printf("model involves nonlinearities (ed0read)\n");
    136         exit(1);
     123        jnlst_->Printf(J_ERROR, J_MAIN, "model involves nonlinearities (ed0read)\n");
     124        exit(-1);
    137125      }
    138126      break;
    139127      case  ASL_readerr_argerr : {
    140         printf("user-defined function with bad args\n");
    141         exit(1);
     128        jnlst_->Printf(J_ERROR, J_MAIN, "user-defined function with bad args\n");
     129        exit(-1);
    142130      }
    143131      break;
    144132      case ASL_readerr_unavail : {
    145         printf("user-defined function not available\n");
    146         exit(1);
     133        jnlst_->Printf(J_ERROR, J_MAIN, "user-defined function not available\n");
     134        exit(-1);
    147135      }
    148136      break;
    149137      case ASL_readerr_corrupt : {
    150         printf("corrupt .nl file\n");
    151         exit(1);
     138        jnlst_->Printf(J_ERROR, J_MAIN, "corrupt .nl file\n");
     139        exit(-1);
    152140      }
    153141      break;
    154142      case ASL_readerr_bug : {
    155         printf("bug in .nl reader\n");
    156         exit(1);
     143        jnlst_->Printf(J_ERROR, J_MAIN, "bug in .nl reader\n");
     144        exit(-1);
    157145      }
    158146      break;
    159147      default: {
    160         printf("Unknown error in stub file read\n");
    161         exit(1);
     148        jnlst_->Printf(J_ERROR, J_MAIN, "Unknown error in stub file read\n");
     149        exit(-1);
    162150      }
    163151      break;
     
    489477
    490478    // Write the .sol file
    491     message = " \nNewIpopt: " + message;
     479    message = " \n" PACKAGE_STRING ": " + message;
    492480    write_solution_file(message.c_str());
    493481  }
     
    641629  }
    642630
     631  struct privat_info
     632  {
     633    SmartPtr<OptionsList> options;
     634    SmartPtr<const Journalist> jnlst;
     635  };
     636
     637  extern "C"
     638  {
     639    static char* get_num_opt(Option_Info *oi, keyword *kw, char *value) {
     640      privat_info* pinfo = (privat_info*) kw->info;
     641
     642      real real_val;
     643      kw->info = &real_val;
     644      char* retval = D_val(oi, kw, value);
     645      kw->info = (void*) pinfo;
     646
     647      if (!pinfo->options->SetNumericValue(kw->name, real_val)) {
     648        pinfo->jnlst->Printf(J_ERROR, J_MAIN,
     649                             "\nInvalid value for option %s.\n", kw->name);
     650        exit(-1);
     651      }
     652
     653      return retval;
     654    }
     655
     656    static char* get_int_opt(Option_Info *oi, keyword *kw, char *value) {
     657      privat_info* pinfo = (privat_info*) kw->info;
     658
     659      int int_val;
     660      kw->info = &int_val;
     661      char* retval = I_val(oi, kw, value);
     662      kw->info = (void*) pinfo;
     663
     664      if (!pinfo->options->SetIntegerValue(kw->name, int_val)) {
     665        pinfo->jnlst->Printf(J_ERROR, J_MAIN,
     666                             "\nInvalid value for option %s.\n", kw->name);
     667        exit(-1);
     668      }
     669
     670      return retval;
     671    }
     672
     673    static char* get_str_opt(Option_Info *oi, keyword *kw, char *value) {
     674      privat_info* pinfo = (privat_info*) kw->info;
     675
     676      char* str_val;
     677      kw->info = &str_val;
     678      char* retval = C_val(oi, kw, value);
     679      kw->info = (void*) pinfo;
     680
     681      if (!pinfo->options->SetValue(kw->name, str_val)) {
     682        pinfo->jnlst->Printf(J_ERROR, J_MAIN,
     683                             "\nInvalid value for option %s.\n", kw->name);
     684        exit(-1);
     685      }
     686
     687      return retval;
     688    }
     689  }
     690
     691  // Define some macros for convenience
     692#define ADDNUMOPT(__NAME__, __DESC__) \
     693    static char name_ ## __NAME__ [] = #__NAME__; \
     694    static char desc_ ## __NAME__ [] = __DESC__; \
     695    privat_info pinfo_ ## __NAME__ = {options, jnlst_}; \
     696    keywds[count_options].name = name_ ## __NAME__; \
     697    keywds[count_options].kf = get_num_opt; \
     698    keywds[count_options].info = (void*) &pinfo_ ## __NAME__; \
     699    keywds[count_options].desc = desc_ ## __NAME__; \
     700    count_options++;
     701
     702#define ADDINTOPT(__NAME__, __DESC__) \
     703    static char name_ ## __NAME__ [] = #__NAME__; \
     704    static char desc_ ## __NAME__ [] = __DESC__; \
     705    privat_info pinfo_ ## __NAME__ = {options, jnlst_}; \
     706    keywds[count_options].name = name_ ## __NAME__; \
     707    keywds[count_options].kf = get_int_opt; \
     708    keywds[count_options].info = (void*) &pinfo_ ## __NAME__; \
     709    keywds[count_options].desc = desc_ ## __NAME__; \
     710    count_options++;
     711
     712#define ADDSTROPT(__NAME__, __DESC__) \
     713    static char name_ ## __NAME__ [] = #__NAME__; \
     714    static char desc_ ## __NAME__ [] = __DESC__; \
     715    privat_info pinfo_ ## __NAME__ = {options, jnlst_}; \
     716    keywds[count_options].name = name_ ## __NAME__; \
     717    keywds[count_options].kf = get_str_opt; \
     718    keywds[count_options].info = (void*) &pinfo_ ## __NAME__; \
     719    keywds[count_options].desc = desc_ ## __NAME__; \
     720    count_options++;
     721
     722  char*
     723  AmplTNLP::get_options(const SmartPtr<OptionsList>& options,
     724                        char**& argv)
     725  {
     726    ASL_pfgh* asl = asl_;
     727
     728    // Now we list all options with one-line descriptions, using the
     729    // macros defined above.  The names must be ordered
     730    // alphabetically!!!
     731    static const int n_options = 31; // This must be the total number
     732    // of options defined below
     733    keyword keywds[n_options];
     734    int count_options=0;
     735    ADDNUMOPT(acceptable_compl_inf_tol,
     736              "Acceptance threshold for the complementarity conditions");
     737    ADDNUMOPT(acceptable_constr_viol_tol,
     738              "Acceptance threshold for the constraint violation");
     739    ADDNUMOPT(acceptable_dual_inf_tol,
     740              "Acceptance threshold for the dual infeasibility");
     741    ADDNUMOPT(acceptable_tol,
     742              "Acceptable convergence tolerance (relative)");
     743    ADDSTROPT(alpha_for_y,
     744              "Step size for constraint multipliers");
     745    ADDNUMOPT(bound_frac,
     746              "Desired minimal relative distance of initial point to bound");
     747    ADDNUMOPT(bound_mult_init_val,
     748              "Initial value for the bound multipliers");
     749    ADDNUMOPT(bound_push,
     750              "Desired minimal absolute distance of initial point to bound");
     751    ADDNUMOPT(bound_relax_factor,
     752              "Factor for initial relaxation of the bounds");
     753    ADDNUMOPT(compl_inf_tol,
     754              "Acceptance threshold for the complementarity conditions");
     755    ADDNUMOPT(constr_mult_init_max,
     756              "Maximal allowed least-square guess of constraint multipliers");
     757    ADDNUMOPT(constr_viol_tol,
     758              "Desired threshold for the constraint violation");
     759    ADDSTROPT(corrector_type,
     760              "Type of corrector steps");
     761    ADDNUMOPT(dual_inf_tol,
     762              "Desired threshold for the dual infeasibility");
     763    ADDSTROPT(expect_infeasible_problem,
     764              "Enable heuristics to quickly detect an infeasible problem");
     765    ADDINTOPT(file_print_level,
     766              "Verbosity level for output file");
     767    ADDINTOPT(max_iter,
     768              "Maximum number of iterations");
     769    ADDINTOPT(max_refinement_steps,
     770              "Maximal number of iterative refinement steps per linear system solve");
     771    ADDINTOPT(max_soc,
     772              "Maximal number of second order correction trial steps");
     773    ADDINTOPT(min_refinement_steps,
     774              "Minimum number of iterative refinement steps per linear system solve");
     775    ADDNUMOPT(mu_init,
     776              "Initial value for the barrier parameter");
     777    ADDSTROPT(mu_oracle,
     778              "Oracle for a new barrier parameter in the adaptive strategy");
     779    ADDSTROPT(mu_strategy,
     780              "Update strategy for barrier parameter");
     781    ADDNUMOPT(nlp_scaling_max_gradient,
     782              "Maximum gradient after scaling");
     783    ADDSTROPT(nlp_scaling_method,
     784              "Select the technique used for scaling the NLP");
     785    ADDNUMOPT(obj_scaling_factor,
     786              "Scaling factor for the objective function");
     787    ADDSTROPT(output_file,
     788              "File name of an output file (leave unset for no file output)");
     789    ADDNUMOPT(pivtol,
     790              "Pivot tolerance for the linear solver");
     791    ADDNUMOPT(pivtolmax,
     792              "Maximal pivot tolerance for the linear solver");
     793    ADDINTOPT(print_level,
     794              "Verbosity level");
     795    ADDNUMOPT(tol,
     796              "Desired convergence tolerance (relative)");
     797
     798    DBG_ASSERT(count_options == n_options);
     799
     800    static char sname[] = "ipopt";
     801    static char bsname[] = PACKAGE_STRING;
     802    static char opname[] = "ipopt_options";
     803    Option_Info Oinfo = {sname,
     804                         bsname,
     805                         opname,
     806                         keywds,
     807                         n_options};
     808
     809    char* stub = getstops(argv, &Oinfo);
     810
     811    return stub;
     812  }
     813
    643814  AmplSuffixHandler::AmplSuffixHandler()
    644815      :
     
    700871  }
    701872
    702   const Index* AmplSuffixHandler::GetIntegerSuffixValues(std::string suffix_string, Suffix_Source source) const
     873  const Index*
     874  AmplSuffixHandler::GetIntegerSuffixValues(std::string suffix_string,
     875      Suffix_Source source) const
    703876  {
    704877    ASL_pfgh* asl = asl_;
     
    726899  }
    727900
    728   const Number* AmplSuffixHandler::GetNumberSuffixValues(std::string suffix_string, Suffix_Source source) const
     901  const Number*
     902  AmplSuffixHandler::GetNumberSuffixValues(std::string suffix_string,
     903      Suffix_Source source) const
    729904  {
    730905    ASL_pfgh* asl = asl_;
  • branches/dev/Apps/AmplSolver/AmplTNLP.hpp

    r446 r465  
    1313#include "IpTNLP.hpp"
    1414#include "IpJournalist.hpp"
    15 #include "IpException.hpp"
    16 #include "IpSmartPtr.hpp"
     15#include "IpOptionsList.hpp"
    1716
    1817/* non Ipopt forward declaration */
     
    3534    //@{
    3635    /** Constructor */
    37     AmplTNLP(const SmartPtr<const Journalist>& jnlst, char**& argv, SmartPtr<AmplSuffixHandler> suffix_handler = NULL, bool allow_discrete = false);
     36    AmplTNLP(const SmartPtr<const Journalist>& jnlst,
     37             const SmartPtr<OptionsList> options,
     38             char**& argv, SmartPtr<AmplSuffixHandler>
     39             suffix_handler = NULL, bool allow_discrete = false);
    3840
    3941    /** Default destructor */
     
    132134
    133135  private:
     136    /**@name Default Compiler Generated Methods
     137     * (Hidden to avoid implicit creation/calling).
     138     * These methods are not implemented and
     139     * we do not want the compiler to implement
     140     * them for us, so we declare them private
     141     * and do not define them. This ensures that
     142     * they will not be implicitly created/called. */
     143    //@{
     144    /** Default Constructor */
     145    AmplTNLP();
     146
     147    /** Copy Constructor */
     148    AmplTNLP(const AmplTNLP&);
     149
     150    /** Overloaded Equals Operator */
     151    void operator=(const AmplTNLP&);
     152    //@}
     153
    134154    /** Journlist */
    135155    SmartPtr<const Journalist> jnlst_;
     
    184204
    185205    /** Internal function to update the internal and ampl state if the
    186     x value changes */
     206     *  x value changes */
    187207    void apply_new_x(bool new_x, Index n, const Number* x);
    188208
    189 
    190     /**@name Default Compiler Generated Methods
    191      * (Hidden to avoid implicit creation/calling).
    192      * These methods are not implemented and
    193      * we do not want the compiler to implement
    194      * them for us, so we declare them private
    195      * and do not define them. This ensures that
    196      * they will not be implicitly created/called. */
    197     //@{
    198     /** Default Constructor */
    199     AmplTNLP();
    200 
    201     /** Copy Constructor */
    202     AmplTNLP(const AmplTNLP&);
    203 
    204     /** Overloaded Equals Operator */
    205     void operator=(const AmplTNLP&);
    206     //@}
    207 
     209    /** Method for obtaining the name of the NL file and the options
     210     *  set from AMPL.  Returns a pointer to a char* with the name of
     211     *  the stub */
     212    char* get_options(const SmartPtr<OptionsList>& options,
     213                      char**& argv);
    208214  };
    209215
  • branches/dev/Apps/AmplSolver/Makefile.in

    r438 r465  
    146146FFLAGS = @FFLAGS@
    147147FLIBS = @FLIBS@
     148HAVE_MA27_FALSE = @HAVE_MA27_FALSE@
     149HAVE_MA27_TRUE = @HAVE_MA27_TRUE@
     150HAVE_MC19_FALSE = @HAVE_MC19_FALSE@
     151HAVE_MC19_TRUE = @HAVE_MC19_TRUE@
    148152HAVE_PARDISO_FALSE = @HAVE_PARDISO_FALSE@
    149153HAVE_PARDISO_TRUE = @HAVE_PARDISO_TRUE@
  • branches/dev/Apps/AmplSolver/ampl_ipopt.cpp

    r430 r465  
    1515
    1616  SmartPtr<IpoptApplication> app = new IpoptApplication();
    17   app->Jnlst()->Printf(J_ERROR, J_MAIN, "\n\n\n*************************************************************\n");
    18   app->Jnlst()->Printf(J_ERROR, J_MAIN, "*** Running Ipopt with AMPL Model ***************************\n");
    19   app->Jnlst()->Printf(J_ERROR, J_MAIN, "*************************************************************\n\n\n");
    20 
    21   // Get the options
    22   // TODO: Need method in AmplNLP that can fill options with the  AMPL user options
    23   //...  get options from AMPL
    24   //... app->Options()->Add...
    2517
    2618  // Add the suffix handler for scaling
     
    3022  suffix_handler->AddAvailableSuffix("scaling_factor", AmplSuffixHandler::Objective_Source, AmplSuffixHandler::Number_Type);
    3123
    32   SmartPtr<TNLP> ampl_tnlp = new AmplTNLP(ConstPtr(app->Jnlst()), argc, suffix_handler);
     24  SmartPtr<TNLP> ampl_tnlp = new AmplTNLP(ConstPtr(app->Jnlst()),
     25                                          app->Options(),
     26                                          argc, suffix_handler);
    3327
    3428  ApplicationReturnStatus retval;
  • branches/dev/Apps/CUTErInterface/Makefile.in

    r455 r465  
    119119FFLAGS = @FFLAGS@
    120120FLIBS = @FLIBS@
     121HAVE_MA27_FALSE = @HAVE_MA27_FALSE@
     122HAVE_MA27_TRUE = @HAVE_MA27_TRUE@
     123HAVE_MC19_FALSE = @HAVE_MC19_FALSE@
     124HAVE_MC19_TRUE = @HAVE_MC19_TRUE@
    121125HAVE_PARDISO_FALSE = @HAVE_PARDISO_FALSE@
    122126HAVE_PARDISO_TRUE = @HAVE_PARDISO_TRUE@
  • branches/dev/Apps/Makefile.in

    r438 r465  
    116116FFLAGS = @FFLAGS@
    117117FLIBS = @FLIBS@
     118HAVE_MA27_FALSE = @HAVE_MA27_FALSE@
     119HAVE_MA27_TRUE = @HAVE_MA27_TRUE@
     120HAVE_MC19_FALSE = @HAVE_MC19_FALSE@
     121HAVE_MC19_TRUE = @HAVE_MC19_TRUE@
    118122HAVE_PARDISO_FALSE = @HAVE_PARDISO_FALSE@
    119123HAVE_PARDISO_TRUE = @HAVE_PARDISO_TRUE@
  • branches/dev/Common/IpDebug.hpp

    r457 r465  
    2626# define DBG_ASSERT_EXCEPTION(__condition, __except_type, __msg) \
    2727   ASSERT_EXCEPTION( (__condition), __except_type, __msg);
    28 # define DBG_SET_VERBOSITY(__level) \
    29    static const Index dbg_verbosity = __level;
    3028#else
    3129# define DBG_ASSERT(test)
    3230# define DBG_ASSERT_EXCEPTION(__condition, __except_type, __msg)
    33 # define DBG_SET_VERBOSITY(__level) /##/
    3431#endif
    3532
  • branches/dev/Common/IpRegOptions.cpp

    r464 r465  
    644644  {
    645645    // create a set to print sorted output
    646 //     std::set
    647 //       <std::string> classes;
    648 //     std::map <std::string, SmartPtr<RegisteredOption> >::iterator option;
    649 //     for (option = registered_options_.begin(); option != registered_options_.end(); option++) {
    650 //       classes.insert(option->second->RegisteringCategory());
    651 //     }
     646    //     std::set
     647    //       <std::string> classes;
     648    //     std::map <std::string, SmartPtr<RegisteredOption> >::iterator option;
     649    //     for (option = registered_options_.begin(); option != registered_options_.end(); option++) {
     650    //       classes.insert(option->second->RegisteringCategory());
     651    //     }
    652652
    653653
    654654    std::list
    655       <std::string>::iterator i;
     655    <std::string>::iterator i;
    656656    for (i = categories.begin(); i != categories.end(); i++) {
    657657      jnlst.Printf(J_SUMMARY, J_DOCUMENTATION,
  • branches/dev/Common/IpRegOptions.hpp

    r464 r465  
    390390    //@{
    391391    /** Standard Constructor */
    392     RegisteredOptions() : current_registering_category_("Uncategorized")
     392    RegisteredOptions()
     393        :
     394        current_registering_category_("Uncategorized")
    393395    {}
    394396
     
    396398    ~RegisteredOptions()
    397399    {}
    398     ;
    399400    //@}
    400401
  • branches/dev/Common/Makefile.in

    r459 r465  
    142142FFLAGS = @FFLAGS@
    143143FLIBS = @FLIBS@
     144HAVE_MA27_FALSE = @HAVE_MA27_FALSE@
     145HAVE_MA27_TRUE = @HAVE_MA27_TRUE@
     146HAVE_MC19_FALSE = @HAVE_MC19_FALSE@
     147HAVE_MC19_TRUE = @HAVE_MC19_TRUE@
    144148HAVE_PARDISO_FALSE = @HAVE_PARDISO_FALSE@
    145149HAVE_PARDISO_TRUE = @HAVE_PARDISO_TRUE@
  • branches/dev/Extern/ASL/Makefile.in

    r455 r465  
    104104FFLAGS = @FFLAGS@
    105105FLIBS = @FLIBS@
     106HAVE_MA27_FALSE = @HAVE_MA27_FALSE@
     107HAVE_MA27_TRUE = @HAVE_MA27_TRUE@
     108HAVE_MC19_FALSE = @HAVE_MC19_FALSE@
     109HAVE_MC19_TRUE = @HAVE_MC19_TRUE@
    106110HAVE_PARDISO_FALSE = @HAVE_PARDISO_FALSE@
    107111HAVE_PARDISO_TRUE = @HAVE_PARDISO_TRUE@
  • branches/dev/Extern/HSL/Makefile.in

    r455 r465  
    5252mkinstalldirs = $(install_sh) -d
    5353CONFIG_HEADER = $(top_builddir)/inc/config.h
    54 CONFIG_CLEAN_FILES = fd05ad.f
     54CONFIG_CLEAN_FILES =
    5555LIBRARIES = $(noinst_LIBRARIES)
    5656libiphsl_a_AR = $(AR) $(ARFLAGS)
     
    123123FFLAGS = @FFLAGS@
    124124FLIBS = @FLIBS@
     125HAVE_MA27_FALSE = @HAVE_MA27_FALSE@
     126HAVE_MA27_TRUE = @HAVE_MA27_TRUE@
     127HAVE_MC19_FALSE = @HAVE_MC19_FALSE@
     128HAVE_MC19_TRUE = @HAVE_MC19_TRUE@
    125129HAVE_PARDISO_FALSE = @HAVE_PARDISO_FALSE@
    126130HAVE_PARDISO_TRUE = @HAVE_PARDISO_TRUE@
  • branches/dev/Extern/Makefile.in

    r438 r465  
    116116FFLAGS = @FFLAGS@
    117117FLIBS = @FLIBS@
     118HAVE_MA27_FALSE = @HAVE_MA27_FALSE@
     119HAVE_MA27_TRUE = @HAVE_MA27_TRUE@
     120HAVE_MC19_FALSE = @HAVE_MC19_FALSE@
     121HAVE_MC19_TRUE = @HAVE_MC19_TRUE@
    118122HAVE_PARDISO_FALSE = @HAVE_PARDISO_FALSE@
    119123HAVE_PARDISO_TRUE = @HAVE_PARDISO_TRUE@
  • branches/dev/Extern/blas/Makefile.in

    r460 r465  
    173173FFLAGS = @FFLAGS@
    174174FLIBS = @FLIBS@
     175HAVE_MA27_FALSE = @HAVE_MA27_FALSE@
     176HAVE_MA27_TRUE = @HAVE_MA27_TRUE@
     177HAVE_MC19_FALSE = @HAVE_MC19_FALSE@
     178HAVE_MC19_TRUE = @HAVE_MC19_TRUE@
    175179HAVE_PARDISO_FALSE = @HAVE_PARDISO_FALSE@
    176180HAVE_PARDISO_TRUE = @HAVE_PARDISO_TRUE@
  • branches/dev/Interfaces/IpAlgTypes.hpp

    r441 r465  
    1 // Copyright (C) 2004, International Business Machines and others.
     1// Copyright (C) 2004,2005 International Business Machines and others.
    22// All Rights Reserved.
    33// This code is published under the Common Public License.
     
    4747
    4848
    49 };
     49}
    5050
    5151#endif
  • branches/dev/Interfaces/IpIpoptApplication.cpp

    r464 r465  
    1 // Copyright (C) 2004, 2005, International Business Machines and others.
     1// Copyright (C) 2004, 2005 International Business Machines and others.
    22// All Rights Reserved.
    33// This code is published under the Common Public License.
     
    2323namespace Ipopt
    2424{
    25   DBG_SET_VERBOSITY(0);
     25#ifdef IP_DEBUG
     26  static const Index dbg_verbosity = 0;
     27#endif
    2628
    2729  IpoptApplication::IpoptApplication(bool read_params_dat,
     
    114116                             print_options_documentation, "");
    115117      if (print_options_documentation) {
    116         std::list<std::string> categories;
    117         categories.push_back("Output");
    118         categories.push_back("Main Algorithm");
    119         categories.push_back("Convergence");
    120         categories.push_back("Scaling");
    121         categories.push_back("Mu Update");
    122         categories.push_back("Line Search");
    123         categories.push_back("Initialization");
    124         categories.push_back("Linear Solver");
    125         categories.push_back("Step Calculation");
    126         categories.push_back("Restoration");
    127         categories.push_back("NLP");
    128         categories.push_back("Uncategorized");
     118        std::list<std::string> categories;
     119        categories.push_back("Output");
     120        categories.push_back("Main Algorithm");
     121        categories.push_back("Convergence");
     122        categories.push_back("Scaling");
     123        categories.push_back("Mu Update");
     124        categories.push_back("Line Search");
     125        categories.push_back("Initialization");
     126        categories.push_back("Linear Solver");
     127        categories.push_back("Step Calculation");
     128        categories.push_back("Restoration");
     129        categories.push_back("NLP");
     130        categories.push_back("Uncategorized");
    129131        reg_options->OutputOptionDocumentation(*jnlst_, categories);
    130132      }
     
    189191    roptions->AddBoundedIntegerOption(
    190192      "file_print_level",
    191       "Verbosity level output file.",
     193      "Verbosity level for output file.",
    192194      0, J_LAST_LEVEL-1, J_SUMMARY,
    193195      "NOTE: This option only works when read from PARAMS.DAT options file! "
  • branches/dev/Interfaces/IpTNLPAdapter.cpp

    r464 r465  
    1 // Copyright (C) 2004, International Business Machines and others.
     1// Copyright (C) 2004, 2005 International Business Machines and others.
    22// All Rights Reserved.
    33// This code is published under the Common Public License.
     
    1111namespace Ipopt
    1212{
    13 
    14   DBG_SET_VERBOSITY(0);
     13#ifdef IP_DEBUG
     14  static const Index dbg_verbosity = 0;
     15#endif
    1516
    1617  TNLPAdapter::TNLPAdapter(const SmartPtr<TNLP> tnlp)
  • branches/dev/Interfaces/Makefile.in

    r460 r465  
    144144FFLAGS = @FFLAGS@
    145145FLIBS = @FLIBS@
     146HAVE_MA27_FALSE = @HAVE_MA27_FALSE@
     147HAVE_MA27_TRUE = @HAVE_MA27_TRUE@
     148HAVE_MC19_FALSE = @HAVE_MC19_FALSE@
     149HAVE_MC19_TRUE = @HAVE_MC19_TRUE@
    146150HAVE_PARDISO_FALSE = @HAVE_PARDISO_FALSE@
    147151HAVE_PARDISO_TRUE = @HAVE_PARDISO_TRUE@
  • branches/dev/LinAlg/IpCompoundVector.cpp

    r438 r465  
    2424{
    2525
    26   DBG_SET_VERBOSITY(0);
     26#ifdef IP_DEBUG
     27  static const Index dbg_verbosity = 0;
     28#endif
    2729
    2830  CompoundVector::CompoundVector(const CompoundVectorSpace* owner_space, bool create_new)
  • branches/dev/LinAlg/IpDenseVector.cpp

    r440 r465  
    2525{
    2626
    27   DBG_SET_VERBOSITY(0);
     27#ifdef IP_DEBUG
     28  static const Index dbg_verbosity = 0;
     29#endif
    2830
    2931  DenseVector::DenseVector(const DenseVectorSpace* owner_space)
  • branches/dev/LinAlg/IpExpansionMatrix.cpp

    r430 r465  
    1313{
    1414
    15   DBG_SET_VERBOSITY(0);
     15#ifdef IP_DEBUG
     16  static const Index dbg_verbosity = 0;
     17#endif
    1618
    1719  ExpansionMatrix::ExpansionMatrix(const ExpansionMatrixSpace* owner_space)
  • branches/dev/LinAlg/Makefile.in

    r441 r465  
    153153FFLAGS = @FFLAGS@
    154154FLIBS = @FLIBS@
     155HAVE_MA27_FALSE = @HAVE_MA27_FALSE@
     156HAVE_MA27_TRUE = @HAVE_MA27_TRUE@
     157HAVE_MC19_FALSE = @HAVE_MC19_FALSE@
     158HAVE_MC19_TRUE = @HAVE_MC19_TRUE@
    155159HAVE_PARDISO_FALSE = @HAVE_PARDISO_FALSE@
    156160HAVE_PARDISO_TRUE = @HAVE_PARDISO_TRUE@
  • branches/dev/LinAlg/TMatrices/Makefile.in

    r438 r465  
    129129FFLAGS = @FFLAGS@
    130130FLIBS = @FLIBS@
     131HAVE_MA27_FALSE = @HAVE_MA27_FALSE@
     132HAVE_MA27_TRUE = @HAVE_MA27_TRUE@
     133HAVE_MC19_FALSE = @HAVE_MC19_FALSE@
     134HAVE_MC19_TRUE = @HAVE_MC19_TRUE@
    131135HAVE_PARDISO_FALSE = @HAVE_PARDISO_FALSE@
    132136HAVE_PARDISO_TRUE = @HAVE_PARDISO_TRUE@
  • branches/dev/Makefile.am

    r455 r465  
    1818        Examples/Cpp_example/MyNLP.hpp \
    1919        Examples/Fortran_example/example.f \
     20        Examples/hs071_c/hs071_c.c \
    2021        Examples/hs071_cpp/hs071_main.cpp \
    2122        Examples/hs071_cpp/hs071_nlp.cpp \
     
    5960        cd Algorithm/LinearSolvers; $(MAKE) astyle
    6061        cd Apps/AmplSolver; $(MAKE) astyle
    61         cd Apps/CompositeInterface; $(MAKE) astyle
    6262        cd Common; $(MAKE) astyle
    6363        cd LinAlg; $(MAKE) astyle
  • branches/dev/Makefile.in

    r462 r465  
    136136FFLAGS = @FFLAGS@
    137137FLIBS = @FLIBS@
     138HAVE_MA27_FALSE = @HAVE_MA27_FALSE@
     139HAVE_MA27_TRUE = @HAVE_MA27_TRUE@
     140HAVE_MC19_FALSE = @HAVE_MC19_FALSE@
     141HAVE_MC19_TRUE = @HAVE_MC19_TRUE@
    138142HAVE_PARDISO_FALSE = @HAVE_PARDISO_FALSE@
    139143HAVE_PARDISO_TRUE = @HAVE_PARDISO_TRUE@
     
    215219        Examples/Cpp_example/MyNLP.hpp \
    216220        Examples/Fortran_example/example.f \
     221        Examples/hs071_c/hs071_c.c \
    217222        Examples/hs071_cpp/hs071_main.cpp \
    218223        Examples/hs071_cpp/hs071_nlp.cpp \
     
    687692        cd Algorithm/LinearSolvers; $(MAKE) astyle
    688693        cd Apps/AmplSolver; $(MAKE) astyle
    689         cd Apps/CompositeInterface; $(MAKE) astyle
    690694        cd Common; $(MAKE) astyle
    691695        cd LinAlg; $(MAKE) astyle
  • branches/dev/configure

    r462 r465  
    22# From configure.ac beta.
    33# Guess values for system-dependent variables and create Makefiles.
    4 # Generated by GNU Autoconf 2.59 for ipopt 3.0beta.
     4# Generated by GNU Autoconf 2.59 for Ipopt 3.0beta.
    55#
    66# Report bugs to <coin-ipopt@www-124.ibm.com>.
     
    275275
    276276# Identity of this package.
    277 PACKAGE_NAME='ipopt'
     277PACKAGE_NAME='Ipopt'
    278278PACKAGE_TARNAME='ipopt'
    279279PACKAGE_VERSION='3.0beta'
    280 PACKAGE_STRING='ipopt 3.0beta'
     280PACKAGE_STRING='Ipopt 3.0beta'
    281281PACKAGE_BUGREPORT='coin-ipopt@www-124.ibm.com'
    282282
     
    320320#endif"
    321321
    322 ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os AR ARFLAGS AR_X CXX CXXFLAGS LDFLAGS CPPFLAGS ac_ct_CXX EXEEXT OBJEXT CXXLIBS CC CFLAGS ac_ct_CC F77 FFLAGS ac_ct_F77 FLIBS RANLIB ac_ct_RANLIB LN_S INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT CXXCPP EGREP IPADDLIBS TAUCS_INCFLAGS ASLMAKEFLAGS ASLMAKEFILECMDS ASTYLE ASTYLEFLAGS ipoptlib AMPL_CPPFLAGS IPALLLIBS BUILDBLAS_TRUE BUILDBLAS_FALSE BUILDHSL_TRUE BUILDHSL_FALSE BUILDMA27_TRUE BUILDMA27_FALSE BUILDMC19_TRUE BUILDMC19_FALSE BUILDBLASDIR_TRUE BUILDBLASDIR_FALSE BUILDHSLDIR_TRUE BUILDHSLDIR_FALSE HAVE_PARDISO_TRUE HAVE_PARDISO_FALSE HAVE_TAUCS_TRUE HAVE_TAUCS_FALSE BUILDASLDIR_TRUE BUILDASLDIR_FALSE BUILDAMPLINTERFACE_TRUE BUILDAMPLINTERFACE_FALSE ASLLIB LIBOBJS LTLIBOBJS'
     322ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os CXX CXXFLAGS LDFLAGS CPPFLAGS ac_ct_CXX EXEEXT OBJEXT CXXLIBS AR ARFLAGS AR_X CC CFLAGS ac_ct_CC F77 FFLAGS ac_ct_F77 FLIBS RANLIB ac_ct_RANLIB LN_S INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT CXXCPP EGREP IPADDLIBS TAUCS_INCFLAGS ASLMAKEFLAGS ASLMAKEFILECMDS ASTYLE ASTYLEFLAGS ipoptlib AMPL_CPPFLAGS IPALLLIBS BUILDBLAS_TRUE BUILDBLAS_FALSE BUILDHSL_TRUE BUILDHSL_FALSE BUILDMA27_TRUE BUILDMA27_FALSE BUILDMC19_TRUE BUILDMC19_FALSE BUILDBLASDIR_TRUE BUILDBLASDIR_FALSE BUILDHSLDIR_TRUE BUILDHSLDIR_FALSE HAVE_MA27_TRUE HAVE_MA27_FALSE HAVE_MC19_TRUE HAVE_MC19_FALSE HAVE_PARDISO_TRUE HAVE_PARDISO_FALSE HAVE_TAUCS_TRUE HAVE_TAUCS_FALSE BUILDASLDIR_TRUE BUILDASLDIR_FALSE BUILDAMPLINTERFACE_TRUE BUILDAMPLINTERFACE_FALSE ASLLIB LIBOBJS LTLIBOBJS'
    323323ac_subst_files=''
    324324
     
    761761ac_cv_env_target_alias_set=${target_alias+set}
    762762ac_cv_env_target_alias_value=$target_alias
    763 ac_env_AR_set=${AR+set}
    764 ac_env_AR_value=$AR
    765 ac_cv_env_AR_set=${AR+set}
    766 ac_cv_env_AR_value=$AR
    767 ac_env_ARFLAGS_set=${ARFLAGS+set}
    768 ac_env_ARFLAGS_value=$ARFLAGS
    769 ac_cv_env_ARFLAGS_set=${ARFLAGS+set}
    770 ac_cv_env_ARFLAGS_value=$ARFLAGS
    771 ac_env_AR_X_set=${AR_X+set}
    772 ac_env_AR_X_value=$AR_X
    773 ac_cv_env_AR_X_set=${AR_X+set}
    774 ac_cv_env_AR_X_value=$AR_X
    775763ac_env_CXX_set=${CXX+set}
    776764ac_env_CXX_value=$CXX
     
    793781ac_cv_env_CXXLIBS_set=${CXXLIBS+set}
    794782ac_cv_env_CXXLIBS_value=$CXXLIBS
     783ac_env_AR_set=${AR+set}
     784ac_env_AR_value=$AR
     785ac_cv_env_AR_set=${AR+set}
     786ac_cv_env_AR_value=$AR
     787ac_env_ARFLAGS_set=${ARFLAGS+set}
     788ac_env_ARFLAGS_value=$ARFLAGS
     789ac_cv_env_ARFLAGS_set=${ARFLAGS+set}
     790ac_cv_env_ARFLAGS_value=$ARFLAGS
     791ac_env_AR_X_set=${AR_X+set}
     792ac_env_AR_X_value=$AR_X
     793ac_cv_env_AR_X_set=${AR_X+set}
     794ac_cv_env_AR_X_value=$AR_X
    795795ac_env_CC_set=${CC+set}
    796796ac_env_CC_value=$CC
     
    829829  # This message is too long to be a string in the A/UX 3.1 sh.
    830830  cat <<_ACEOF
    831 \`configure' configures ipopt 3.0beta to adapt to many kinds of systems.
     831\`configure' configures Ipopt 3.0beta to adapt to many kinds of systems.
    832832
    833833Usage: $0 [OPTION]... [VAR=VALUE]...
     
    894894if test -n "$ac_init_help"; then
    895895  case $ac_init_help in
    896      short | recursive ) echo "Configuration of ipopt 3.0beta:";;
     896     short | recursive ) echo "Configuration of Ipopt 3.0beta:";;
    897897   esac
    898898  cat <<\_ACEOF
     
    907907                          (and sometimes confusing) to the casual installer
    908908
     909
    909910Optional Packages:
    910911  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
     
    912913  --with-blas             specify BLAS library (or BUILD for compilation)
    913914  --with-hsl              specify Harwell library (or BUILD for compilation)
    914   --with-pardiso          specify Pardiso library
    915   --with-taucs            specify TAUCS library and dependencies
     915  --with-pardiso          specify Pardiso library (unsupported)
     916  --with-taucs            specify TAUCS library and dependencies (unsupported)
    916917  --with-asldir           specify absolute path to AMPL solver directory (or
    917918                          BUILD for compilation, or "no" for disabling AMPL)
    918919
    919920Some influential environment variables:
    920   AR          Command for handling archives (default is `ar')
    921   ARFLAGS     Flags for adding file for archive command (default is `crv')
    922   AR_X        Command for extracing an archive (default is `ar x')
    923921  CXX         C++ compiler command
    924922  CXXFLAGS    C++ compiler flags
     
    928926              headers in a nonstandard directory <include dir>
    929927  CXXLIBS     Libraries necessary for linking C++ code with Fortran compiler
     928  AR          Command for handling archives (default is `ar')
     929  ARFLAGS     Flags for adding file for archive command (default is `crv')
     930  AR_X        Command for extracing an archive (default is `ar x')
    930931  CC          C compiler command
    931932  CFLAGS      C compiler flags
     
    10381039if $ac_init_version; then
    10391040  cat <<\_ACEOF
    1040 ipopt configure 3.0beta
     1041Ipopt configure 3.0beta
    10411042generated by GNU Autoconf 2.59
    10421043
     
    10581059running configure, to aid debugging if configure makes a mistake.
    10591060
    1060 It was created by ipopt $as_me 3.0beta, which was
     1061It was created by Ipopt $as_me 3.0beta, which was
    10611062generated by GNU Autoconf 2.59.  Invocation command line was
    10621063
     
    14601461
    14611462
    1462 ##########################################
    1463 # Set variables for the archiver         #
    1464 # (for AIX in 64bit mode also on SGI...) #
    1465 ##########################################
    1466 if test -z "$AR"; then
    1467   AR="ar"
    1468 fi
    1469 
    1470 if test -z "$ARFLAGS"; then
    1471   ARFLAGS="cru"
    1472 fi
    1473 
    1474 if test -z "$AR_X"; then
    1475   AR_X="ar x"
    1476 fi
    1477 
    1478 
    14791463# Check if user wants to produce debugging code
    14801464# Check whether --enable-debug or --disable-debug was given.
     
    15151499ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
    15161500if test -n "$ac_tool_prefix"; then
    1517   for ac_prog in $CCC icpc cl xlC aCC CC g++
     1501  for ac_prog in $CCC cl xlC aCC CC g++ icpc
    15181502  do
    15191503    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
     
    15571541if test -z "$CXX"; then
    15581542  ac_ct_CXX=$CXX
    1559   for ac_prog in $CCC icpc cl xlC aCC CC g++
     1543  for ac_prog in $CCC cl xlC aCC CC g++ icpc
    15601544do
    15611545  # Extract the first word of "$ac_prog", so it can be a program name with args.
     
    20802064        opt_cxxflags="-O3 -funroll-loops"
    20812065        case $build in
    2082           i686-* )
    2083             CXXFLAGS="-march=i686 -mfpmath=sse -msse"
    2084             echo "$as_me:$LINENO: checking whether flags \"$CXXFLAGS\" work" >&5
    2085 echo $ECHO_N "checking whether flags \"$CXXFLAGS\" work... $ECHO_C" >&6
     2066          x86_64-* | i686-* | i586-* )
     2067            # Check for enabling special instructions
     2068            myflags=`grep flags /proc/cpuinfo | tail -1 | cut -d: -f2-`
     2069            have_sse=no
     2070            for i in $myflags; do
     2071              case $i in
     2072                sse3) CXXFLAGS="-mfpmath=sse -msse3"
     2073                     echo "$as_me:$LINENO: checking whether flag \"$CXXFLAGS\" works" >&5
     2074echo $ECHO_N "checking whether flag \"$CXXFLAGS\" works... $ECHO_C" >&6
    20862075
    20872076cat >conftest.$ac_ext <<_ACEOF
     
    21232112  (exit $ac_status); }; }; then
    21242113  echo "$as_me:$LINENO: result: yes" >&5
    2125 echo "${ECHO_T}yes" >&6; opt_cxxflags="$opt_cxxflags $CXXFLAGS"
     2114echo "${ECHO_T}yes" >&6
     2115                         opt_cxxflags="$opt_cxxflags $CXXFLAGS"
    21262116else
    21272117  echo "$as_me: failed program was:" >&5
     
    21332123rm -f conftest.err conftest.$ac_objext \
    21342124      conftest$ac_exeext conftest.$ac_ext
    2135             CXXFLAGS=
     2125                     have_sse=yes;
     2126                     CXXFLAGS=
     2127                     ;;
     2128                sse2)
     2129                     CXXFLAGS="-mfpmath=sse -msse2"
     2130                     echo "$as_me:$LINENO: checking whether flag \"$CXXFLAGS\" works" >&5
     2131echo $ECHO_N "checking whether flag \"$CXXFLAGS\" works... $ECHO_C" >&6
     2132                     cat >conftest.$ac_ext <<_ACEOF
     2133/* confdefs.h.  */
     2134_ACEOF
     2135cat confdefs.h >>conftest.$ac_ext
     2136cat >>conftest.$ac_ext <<_ACEOF
     2137/* end confdefs.h.  */
     2138#include <cmath>
     2139int
     2140main ()
     2141{
     2142double s = sin(1.0);
     2143  ;
     2144  return 0;
     2145}
     2146_ACEOF
     2147rm -f conftest.$ac_objext conftest$ac_exeext
     2148if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
     2149  (eval $ac_link) 2>conftest.er1
     2150  ac_status=$?
     2151  grep -v '^ *+' conftest.er1 >conftest.err
     2152  rm -f conftest.er1
     2153  cat conftest.err >&5
     2154  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     2155  (exit $ac_status); } &&
     2156         { ac_try='test -z "$ac_cxx_werror_flag"
     2157                         || test ! -s conftest.err'
     2158  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     2159  (eval $ac_try) 2>&5
     2160  ac_status=$?
     2161  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     2162  (exit $ac_status); }; } &&
     2163         { ac_try='test -s conftest$ac_exeext'
     2164  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     2165  (eval $ac_try) 2>&5
     2166  ac_status=$?
     2167  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     2168  (exit $ac_status); }; }; then
     2169  echo "$as_me:$LINENO: result: yes" >&5
     2170echo "${ECHO_T}yes" >&6
     2171                         if test $have_sse = no; then
     2172                           opt_cxxflags="$opt_cxxflags $CXXFLAGS"
     2173                         else
     2174                           opt_cxxflags="$opt_cxxflags -msse2"
     2175                         fi
     2176else
     2177  echo "$as_me: failed program was:" >&5
     2178sed 's/^/| /' conftest.$ac_ext >&5
     2179
     2180echo "$as_me:$LINENO: result: no" >&5
     2181echo "${ECHO_T}no" >&6
     2182fi
     2183rm -f conftest.err conftest.$ac_objext \
     2184      conftest$ac_exeext conftest.$ac_ext
     2185                     have_sse=yes;
     2186                     CXXFLAGS=
     2187                     ;;
     2188                sse)
     2189                     CXXFLAGS="-mfpmath=sse -msse"
     2190                     echo "$as_me:$LINENO: checking whether flag \"$CXXFLAGS\" works" >&5
     2191echo $ECHO_N "checking whether flag \"$CXXFLAGS\" works... $ECHO_C" >&6
     2192                     cat >conftest.$ac_ext <<_ACEOF
     2193/* confdefs.h.  */
     2194_ACEOF
     2195cat confdefs.h >>conftest.$ac_ext
     2196cat >>conftest.$ac_ext <<_ACEOF
     2197/* end confdefs.h.  */
     2198#include <cmath>
     2199int
     2200main ()
     2201{
     2202double s = sin(1.0);
     2203  ;
     2204  return 0;
     2205}
     2206_ACEOF
     2207rm -f conftest.$ac_objext conftest$ac_exeext
     2208if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
     2209  (eval $ac_link) 2>conftest.er1
     2210  ac_status=$?
     2211  grep -v '^ *+' conftest.er1 >conftest.err
     2212  rm -f conftest.er1
     2213  cat conftest.err >&5
     2214  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     2215  (exit $ac_status); } &&
     2216         { ac_try='test -z "$ac_cxx_werror_flag"
     2217                         || test ! -s conftest.err'
     2218  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     2219  (eval $ac_try) 2>&5
     2220  ac_status=$?
     2221  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     2222  (exit $ac_status); }; } &&
     2223         { ac_try='test -s conftest$ac_exeext'
     2224  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     2225  (eval $ac_try) 2>&5
     2226  ac_status=$?
     2227  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     2228  (exit $ac_status); }; }; then
     2229  echo "$as_me:$LINENO: result: yes" >&5
     2230echo "${ECHO_T}yes" >&6
     2231                         if test $have_sse = no; then
     2232                           opt_cxxflags="$opt_cxxflags $CXXFLAGS"
     2233                         else
     2234                           opt_cxxflags="$opt_cxxflags -msse"
     2235                         fi
     2236else
     2237  echo "$as_me: failed program was:" >&5
     2238sed 's/^/| /' conftest.$ac_ext >&5
     2239
     2240echo "$as_me:$LINENO: result: no" >&5
     2241echo "${ECHO_T}no" >&6
     2242fi
     2243rm -f conftest.err conftest.$ac_objext \
     2244      conftest$ac_exeext conftest.$ac_ext
     2245                     have_sse=yes;
     2246                     CXXFLAGS=
     2247                     ;;
     2248                mmx) CXXFLAGS="-mmmx"
     2249                     echo "$as_me:$LINENO: checking whether flag \"$CXXFLAGS\" works" >&5
     2250echo $ECHO_N "checking whether flag \"$CXXFLAGS\" works... $ECHO_C" >&6
     2251                     cat >conftest.$ac_ext <<_ACEOF
     2252/* confdefs.h.  */
     2253_ACEOF
     2254cat confdefs.h >>conftest.$ac_ext
     2255cat >>conftest.$ac_ext <<_ACEOF
     2256/* end confdefs.h.  */
     2257#include <cmath>
     2258int
     2259main ()
     2260{
     2261double s = sin(1.0);
     2262  ;
     2263  return 0;
     2264}
     2265_ACEOF
     2266rm -f conftest.$ac_objext conftest$ac_exeext
     2267if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
     2268  (eval $ac_link) 2>conftest.er1
     2269  ac_status=$?
     2270  grep -v '^ *+' conftest.er1 >conftest.err
     2271  rm -f conftest.er1
     2272  cat conftest.err >&5
     2273  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     2274  (exit $ac_status); } &&
     2275         { ac_try='test -z "$ac_cxx_werror_flag"
     2276                         || test ! -s conftest.err'
     2277  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     2278  (eval $ac_try) 2>&5
     2279  ac_status=$?
     2280  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     2281  (exit $ac_status); }; } &&
     2282         { ac_try='test -s conftest$ac_exeext'
     2283  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     2284  (eval $ac_try) 2>&5
     2285  ac_status=$?
     2286  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     2287  (exit $ac_status); }; }; then
     2288  echo "$as_me:$LINENO: result: yes" >&5
     2289echo "${ECHO_T}yes" >&6
     2290                         opt_cxxflags="$opt_cxxflags $CXXFLAGS"
     2291else
     2292  echo "$as_me: failed program was:" >&5
     2293sed 's/^/| /' conftest.$ac_ext >&5
     2294
     2295echo "$as_me:$LINENO: result: no" >&5
     2296echo "${ECHO_T}no" >&6
     2297fi
     2298rm -f conftest.err conftest.$ac_objext \
     2299      conftest$ac_exeext conftest.$ac_ext
     2300                     CXXFLAGS= ;;
     2301                3dnow) CXXFLAGS="-m3dnow"
     2302                     echo "$as_me:$LINENO: checking whether flag \"$CXXFLAGS\" works" >&5
     2303echo $ECHO_N "checking whether flag \"$CXXFLAGS\" works... $ECHO_C" >&6
     2304                     cat >conftest.$ac_ext <<_ACEOF
     2305/* confdefs.h.  */
     2306_ACEOF
     2307cat confdefs.h >>conftest.$ac_ext
     2308cat >>conftest.$ac_ext <<_ACEOF
     2309/* end confdefs.h.  */
     2310#include <cmath>
     2311int
     2312main ()
     2313{
     2314double s = sin(1.0);
     2315  ;
     2316  return 0;
     2317}
     2318_ACEOF
     2319rm -f conftest.$ac_objext conftest$ac_exeext
     2320if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
     2321  (eval $ac_link) 2>conftest.er1
     2322  ac_status=$?
     2323  grep -v '^ *+' conftest.er1 >conftest.err
     2324  rm -f conftest.er1
     2325  cat conftest.err >&5
     2326  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     2327  (exit $ac_status); } &&
     2328         { ac_try='test -z "$ac_cxx_werror_flag"
     2329                         || test ! -s conftest.err'
     2330  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     2331  (eval $ac_try) 2>&5
     2332  ac_status=$?
     2333  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     2334  (exit $ac_status); }; } &&
     2335         { ac_try='test -s conftest$ac_exeext'
     2336  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     2337  (eval $ac_try) 2>&5
     2338  ac_status=$?
     2339  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     2340  (exit $ac_status); }; }; then
     2341  echo "$as_me:$LINENO: result: yes" >&5
     2342echo "${ECHO_T}yes" >&6
     2343                         opt_cxxflags="$opt_cxxflags $CXXFLAGS"
     2344else
     2345  echo "$as_me: failed program was:" >&5
     2346sed 's/^/| /' conftest.$ac_ext >&5
     2347
     2348echo "$as_me:$LINENO: result: no" >&5
     2349echo "${ECHO_T}no" >&6
     2350fi
     2351rm -f conftest.err conftest.$ac_objext \
     2352      conftest$ac_exeext conftest.$ac_ext
     2353                     CXXFLAGS= ;;
     2354              esac
     2355            done
    21362356          ;;
    21372357        esac
     
    25082728
    25092729
     2730###############################################
     2731# Set variables for the archiver              #
     2732# (for AIX in 64bit mode also on SGI, SUN...) #
     2733###############################################
     2734if test -z "$AR"; then
     2735  if test ! "$GXX" = "yes"; then
     2736    case $build in
     2737      *-sun-*)
     2738        AR="CC -xar"
     2739        ;;
     2740      *-sgi-*)
     2741        AR="CC -ar"
     2742        ;;
     2743    esac
     2744  fi
     2745  if test -z "$AR"; then
     2746    AR="ar"
     2747  fi
     2748fi
     2749
     2750{ echo "$as_me:$LINENO: Using AR=\"$AR\"." >&5
     2751echo "$as_me: Using AR=\"$AR\"." >&6;}
     2752
     2753if test -z "$ARFLAGS"; then
     2754  if test ! "$GXX" = "yes"; then
     2755    case $build in
     2756      *-sun-*)
     2757        ARFLAGS="-o"
     2758        ;;
     2759      *-sgi-*)
     2760        ARFLAGS="-o"
     2761        ;;
     2762    esac
     2763  fi
     2764  if test -z "$ARFLAGS"; then
     2765    ARFLAGS="crv"
     2766  fi
     2767fi
     2768
     2769{ echo "$as_me:$LINENO: Using ARFLAGS=\"$ARFLAGS\"." >&5
     2770echo "$as_me: Using ARFLAGS=\"$ARFLAGS\"." >&6;}
     2771
     2772if test -z "$AR_X"; then
     2773  AR_X="ar x"
     2774fi
     2775
     2776{ echo "$as_me:$LINENO: Using AR_X=\"$AR_X\"." >&5
     2777echo "$as_me: Using AR_X=\"$AR_X\"." >&6;}
     2778
    25102779######################
    25112780# C Compiler Options #
    25122781######################
     2782
     2783ac_ext=c
     2784ac_cpp='$CPP $CPPFLAGS'
     2785ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
     2786ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
     2787ac_compiler_gnu=$ac_cv_c_compiler_gnu
    25132788
    25142789SAVE_CFLAGS="$CFLAGS"
     
    25192794ac_compiler_gnu=$ac_cv_c_compiler_gnu
    25202795if test -n "$ac_tool_prefix"; then
    2521   for ac_prog in icc cl pgcc xlc cc gcc cl
     2796  for ac_prog in cl pgcc xlc cc gcc icc
    25222797  do
    25232798    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
     
    25612836if test -z "$CC"; then
    25622837  ac_ct_CC=$CC
    2563   for ac_prog in icc cl pgcc xlc cc gcc cl
     2838  for ac_prog in cl pgcc xlc cc gcc icc
    25642839do
    25652840  # Extract the first word of "$ac_prog", so it can be a program name with args.
     
    30403315        opt_cflags="-O3 -funroll-loops"
    30413316        case $build in
    3042           i686-* )
    3043             myCFLAGS="-march=i686 -mfpmath=sse -msse"
    3044             echo "$as_me:$LINENO: checking whether  flags \"$myCFLAGS\" work" >&5
    3045 echo $ECHO_N "checking whether  flags \"$myCFLAGS\" work... $ECHO_C" >&6
    3046 # This is a trick to make sure that the math library is included
    3047             CFLAGS="$myCFLAGS -lm"
     3317          x86_64-* | i686-* | i586-* )
     3318            # Check for enabling special instructions
     3319            myflags=`grep flags /proc/cpuinfo | tail -1 | cut -d: -f2-`
     3320            have_sse=no
     3321            SAVE_LIBS="$LIBS"
     3322            LIBS="$LIBS -lm"
     3323            for i in $myflags; do
     3324              case $i in
     3325                sse3) CFLAGS="-mfpmath=sse -msse3"
     3326                     echo "$as_me:$LINENO: checking whether flag \"$CFLAGS\" works" >&5
     3327echo $ECHO_N "checking whether flag \"$CFLAGS\" works... $ECHO_C" >&6
    30483328
    30493329cat >conftest.$ac_ext <<_ACEOF
     
    30853365  (exit $ac_status); }; }; then
    30863366  echo "$as_me:$LINENO: result: yes" >&5
    3087 echo "${ECHO_T}yes" >&6; opt_cflags="$opt_cflags $myCFLAGS"
     3367echo "${ECHO_T}yes" >&6
     3368                         opt_cflags="$opt_cflags $CFLAGS"
    30883369else
    30893370  echo "$as_me: failed program was:" >&5
     
    30953376rm -f conftest.err conftest.$ac_objext \
    30963377      conftest$ac_exeext conftest.$ac_ext
    3097             CFLAGS=
     3378                     have_sse=yes;
     3379                     CFLAGS=
     3380                     ;;
     3381                sse2)
     3382                     CFLAGS="-mfpmath=sse -msse2"
     3383                     echo "$as_me:$LINENO: checking whether flag \"$CFLAGS\" works" >&5
     3384echo $ECHO_N "checking whether flag \"$CFLAGS\" works... $ECHO_C" >&6
     3385                     cat >conftest.$ac_ext <<_ACEOF
     3386/* confdefs.h.  */
     3387_ACEOF
     3388cat confdefs.h >>conftest.$ac_ext
     3389cat >>conftest.$ac_ext <<_ACEOF
     3390/* end confdefs.h.  */
     3391#include <math.h>
     3392int
     3393main ()
     3394{
     3395double s = sin(1.0);
     3396  ;
     3397  return 0;
     3398}
     3399_ACEOF
     3400rm -f conftest.$ac_objext conftest$ac_exeext
     3401if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
     3402  (eval $ac_link) 2>conftest.er1
     3403  ac_status=$?
     3404  grep -v '^ *+' conftest.er1 >conftest.err
     3405  rm -f conftest.er1
     3406  cat conftest.err >&5
     3407  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     3408  (exit $ac_status); } &&
     3409         { ac_try='test -z "$ac_c_werror_flag"
     3410                         || test ! -s conftest.err'
     3411  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     3412  (eval $ac_try) 2>&5
     3413  ac_status=$?
     3414  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     3415  (exit $ac_status); }; } &&
     3416         { ac_try='test -s conftest$ac_exeext'
     3417  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     3418  (eval $ac_try) 2>&5
     3419  ac_status=$?
     3420  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     3421  (exit $ac_status); }; }; then
     3422  echo "$as_me:$LINENO: result: yes" >&5
     3423echo "${ECHO_T}yes" >&6
     3424                         if test $have_sse = no; then
     3425                           opt_cflags="$opt_cflags $CFLAGS"
     3426                         else
     3427                           opt_cflags="$opt_cflags -msse2"
     3428                         fi
     3429else
     3430  echo "$as_me: failed program was:" >&5
     3431sed 's/^/| /' conftest.$ac_ext >&5
     3432
     3433echo "$as_me:$LINENO: result: no" >&5
     3434echo "${ECHO_T}no" >&6
     3435fi
     3436rm -f conftest.err conftest.$ac_objext \
     3437      conftest$ac_exeext conftest.$ac_ext
     3438                     have_sse=yes;
     3439                     CFLAGS=
     3440                     ;;
     3441                sse)
     3442                     CFLAGS="-mfpmath=sse -msse"
     3443                     echo "$as_me:$LINENO: checking whether flag \"$CFLAGS\" works" >&5
     3444echo $ECHO_N "checking whether flag \"$CFLAGS\" works... $ECHO_C" >&6
     3445                     cat >conftest.$ac_ext <<_ACEOF
     3446/* confdefs.h.  */
     3447_ACEOF
     3448cat confdefs.h >>conftest.$ac_ext
     3449cat >>conftest.$ac_ext <<_ACEOF
     3450/* end confdefs.h.  */
     3451#include <math.h>
     3452int
     3453main ()
     3454{
     3455double s = sin(1.0);
     3456  ;
     3457  return 0;
     3458}
     3459_ACEOF
     3460rm -f conftest.$ac_objext conftest$ac_exeext
     3461if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
     3462  (eval $ac_link) 2>conftest.er1
     3463  ac_status=$?
     3464  grep -v '^ *+' conftest.er1 >conftest.err
     3465  rm -f conftest.er1
     3466  cat conftest.err >&5
     3467  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     3468  (exit $ac_status); } &&
     3469         { ac_try='test -z "$ac_c_werror_flag"
     3470                         || test ! -s conftest.err'
     3471  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     3472  (eval $ac_try) 2>&5
     3473  ac_status=$?
     3474  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     3475  (exit $ac_status); }; } &&
     3476         { ac_try='test -s conftest$ac_exeext'
     3477  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     3478  (eval $ac_try) 2>&5
     3479  ac_status=$?
     3480  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     3481  (exit $ac_status); }; }; then
     3482  echo "$as_me:$LINENO: result: yes" >&5
     3483echo "${ECHO_T}yes" >&6
     3484                         if test $have_sse = no; then
     3485                           opt_cflags="$opt_cflags $CFLAGS"
     3486                         else
     3487                           opt_cflags="$opt_cflags -msse"
     3488                         fi
     3489else
     3490  echo "$as_me: failed program was:" >&5
     3491sed 's/^/| /' conftest.$ac_ext >&5
     3492
     3493echo "$as_me:$LINENO: result: no" >&5
     3494echo "${ECHO_T}no" >&6
     3495fi
     3496rm -f conftest.err conftest.$ac_objext \
     3497      conftest$ac_exeext conftest.$ac_ext
     3498                     have_sse=yes;
     3499                     CFLAGS=
     3500                     ;;
     3501                mmx) CFLAGS="-mmmx"
     3502                     echo "$as_me:$LINENO: checking whether flag \"$CFLAGS\" works" >&5
     3503echo $ECHO_N "checking whether flag \"$CFLAGS\" works... $ECHO_C" >&6
     3504                     cat >conftest.$ac_ext <<_ACEOF
     3505/* confdefs.h.  */
     3506_ACEOF
     3507cat confdefs.h >>conftest.$ac_ext
     3508cat >>conftest.$ac_ext <<_ACEOF
     3509/* end confdefs.h.  */
     3510#include <math.h>
     3511int
     3512main ()
     3513{
     3514double s = sin(1.0);
     3515  ;
     3516  return 0;
     3517}
     3518_ACEOF
     3519rm -f conftest.$ac_objext conftest$ac_exeext
     3520if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
     3521  (eval $ac_link) 2>conftest.er1
     3522  ac_status=$?
     3523  grep -v '^ *+' conftest.er1 >conftest.err
     3524  rm -f conftest.er1
     3525  cat conftest.err >&5
     3526  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     3527  (exit $ac_status); } &&
     3528         { ac_try='test -z "$ac_c_werror_flag"
     3529                         || test ! -s conftest.err'
     3530  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     3531  (eval $ac_try) 2>&5
     3532  ac_status=$?
     3533  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     3534  (exit $ac_status); }; } &&
     3535         { ac_try='test -s conftest$ac_exeext'
     3536  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     3537  (eval $ac_try) 2>&5
     3538  ac_status=$?
     3539  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     3540  (exit $ac_status); }; }; then
     3541  echo "$as_me:$LINENO: result: yes" >&5
     3542echo "${ECHO_T}yes" >&6
     3543                         opt_cflags="$opt_cflags $CFLAGS"
     3544else
     3545  echo "$as_me: failed program was:" >&5
     3546sed 's/^/| /' conftest.$ac_ext >&5
     3547
     3548echo "$as_me:$LINENO: result: no" >&5
     3549echo "${ECHO_T}no" >&6
     3550fi
     3551rm -f conftest.err conftest.$ac_objext \
     3552      conftest$ac_exeext conftest.$ac_ext
     3553                     CFLAGS= ;;
     3554                3dnow) CFLAGS="-m3dnow"
     3555                     echo "$as_me:$LINENO: checking whether flag \"$CFLAGS\" works" >&5
     3556echo $ECHO_N "checking whether flag \"$CFLAGS\" works... $ECHO_C" >&6
     3557                     cat >conftest.$ac_ext <<_ACEOF
     3558/* confdefs.h.  */
     3559_ACEOF
     3560cat confdefs.h >>conftest.$ac_ext
     3561cat >>conftest.$ac_ext <<_ACEOF
     3562/* end confdefs.h.  */
     3563#include <math.h>
     3564int
     3565main ()
     3566{
     3567double s = sin(1.0);
     3568  ;
     3569  return 0;
     3570}
     3571_ACEOF
     3572rm -f conftest.$ac_objext conftest$ac_exeext
     3573if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
     3574  (eval $ac_link) 2>conftest.er1
     3575  ac_status=$?
     3576  grep -v '^ *+' conftest.er1 >conftest.err
     3577  rm -f conftest.er1
     3578  cat conftest.err >&5
     3579  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     3580  (exit $ac_status); } &&
     3581         { ac_try='test -z "$ac_c_werror_flag"
     3582                         || test ! -s conftest.err'
     3583  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     3584  (eval $ac_try) 2>&5
     3585  ac_status=$?
     3586  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     3587  (exit $ac_status); }; } &&
     3588         { ac_try='test -s conftest$ac_exeext'
     3589  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     3590  (eval $ac_try) 2>&5
     3591  ac_status=$?
     3592  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     3593  (exit $ac_status); }; }; then
     3594  echo "$as_me:$LINENO: result: yes" >&5
     3595echo "${ECHO_T}yes" >&6
     3596                         opt_cflags="$opt_cflags $CFLAGS"
     3597else
     3598  echo "$as_me: failed program was:" >&5
     3599sed 's/^/| /' conftest.$ac_ext >&5
     3600
     3601echo "$as_me:$LINENO: result: no" >&5
     3602echo "${ECHO_T}no" >&6
     3603fi
     3604rm -f conftest.err conftest.$ac_objext \
     3605      conftest$ac_exeext conftest.$ac_ext
     3606                     CFLAGS= ;;
     3607              esac
     3608            done
     3609            LIBS="$SAVE_LIBS"
    30983610          ;;
    30993611        esac
     
    34283940echo "${ECHO_T}yes" >&6
    34293941fi
     3942ac_ext=c
     3943ac_cpp='$CPP $CPPFLAGS'
     3944ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
     3945ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
     3946ac_compiler_gnu=$ac_cv_c_compiler_gnu
     3947
    34303948
    34313949###################################
     
    34443962ac_compiler_gnu=$ac_cv_f77_compiler_gnu
    34453963if test -n "$ac_tool_prefix"; then
    3446   for ac_prog in ifort ifc pgf77 xlf fort77 f77 g77 df
     3964  for ac_prog in ifort pgf77 xlf fort77 f77 g77 df ifc
    34473965  do
    34483966    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
     
    34864004if test -z "$F77"; then
    34874005  ac_ct_F77=$F77
    3488   for ac_prog in ifort ifc pgf77 xlf fort77 f77 g77 df
     4006  for ac_prog in ifort pgf77 xlf fort77 f77 g77 df ifc
    34894007do
    34904008  # Extract the first word of "$ac_prog", so it can be a program name with args.
     
    35314049
    35324050# Provide some information about the compiler.
    3533 echo "$as_me:3533:" \
     4051echo "$as_me:4051:" \
    35344052     "checking for Fortran 77 compiler version" >&5
    35354053ac_compiler=`set X $ac_compile; echo $2`
     
    36834201  if test "$G77" = "yes"; then
    36844202    opt_fflags="-O3 -funroll-loops"
    3685     case $build in
    3686       i686-* )
    3687         FFLAGS="-march=i686 -mfpmath=sse -msse"
    3688         echo "$as_me:$LINENO: checking whether flags \"$FFLAGS\" work" >&5
    3689 echo $ECHO_N "checking whether flags \"$FFLAGS\" work... $ECHO_C" >&6
     4203        case $build in
     4204          x86_64-* | i686-* | i586-* )
     4205            # Check for enabling special instructions
     4206            myflags=`grep flags /proc/cpuinfo | tail -1 | cut -d: -f2-`
     4207            have_sse=no
     4208            for i in $myflags; do
     4209              case $i in
     4210                sse3) FFLAGS="-mfpmath=sse -msse3"
     4211                     echo "$as_me:$LINENO: checking whether flag \"$FFLAGS\" works" >&5
     4212echo $ECHO_N "checking whether flag \"$FFLAGS\" works... $ECHO_C" >&6
    36904213
    36914214cat >conftest.$ac_ext <<_ACEOF
    36924215      program main
    3693 
    36944216      double precision x
    36954217      x = sin(1.d0)
     
    37194241  (exit $ac_status); }; }; then
    37204242  echo "$as_me:$LINENO: result: yes" >&5
    3721 echo "${ECHO_T}yes" >&6; opt_fflags="$opt_fflags $FFLAGS"
     4243echo "${ECHO_T}yes" >&6
     4244                         opt_fflags="$opt_fflags $FFLAGS"
    37224245else
    37234246  echo "$as_me: failed program was:" >&5
     
    37294252rm -f conftest.err conftest.$ac_objext \
    37304253      conftest$ac_exeext conftest.$ac_ext
    3731         FFLAGS=
    3732       ;;
    3733     esac
     4254                     have_sse=yes;
     4255                     FFLAGS=
     4256                     ;;
     4257                sse2)
     4258                     FFLAGS="-mfpmath=sse -msse2"
     4259                     echo "$as_me:$LINENO: checking whether flag \"$FFLAGS\" works" >&5
     4260echo $ECHO_N "checking whether flag \"$FFLAGS\" works... $ECHO_C" >&6
     4261                     cat >conftest.$ac_ext <<_ACEOF
     4262      program main
     4263      double precision x
     4264      x = sin(1.d0)
     4265      end
     4266_ACEOF
     4267rm -f conftest.$ac_objext conftest$ac_exeext
     4268if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
     4269  (eval $ac_link) 2>conftest.er1
     4270  ac_status=$?
     4271  grep -v '^ *+' conftest.er1 >conftest.err
     4272  rm -f conftest.er1
     4273  cat conftest.err >&5
     4274  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     4275  (exit $ac_status); } &&
     4276         { ac_try='test -z "$ac_f77_werror_flag"
     4277                         || test ! -s conftest.err'
     4278  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     4279  (eval $ac_try) 2>&5
     4280  ac_status=$?
     4281  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     4282  (exit $ac_status); }; } &&
     4283         { ac_try='test -s conftest$ac_exeext'
     4284  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     4285  (eval $ac_try) 2>&5
     4286  ac_status=$?
     4287  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     4288  (exit $ac_status); }; }; then
     4289  echo "$as_me:$LINENO: result: yes" >&5
     4290echo "${ECHO_T}yes" >&6
     4291                         if test $have_sse = no; then
     4292                           opt_fflags="$opt_fflags $FFLAGS"
     4293                         else
     4294                           opt_fflags="$opt_fflags -msse2"
     4295                         fi
     4296else
     4297  echo "$as_me: failed program was:" >&5
     4298sed 's/^/| /' conftest.$ac_ext >&5
     4299
     4300echo "$as_me:$LINENO: result: no" >&5
     4301echo "${ECHO_T}no" >&6
     4302fi
     4303rm -f conftest.err conftest.$ac_objext \
     4304      conftest$ac_exeext conftest.$ac_ext
     4305                     have_sse=yes;
     4306                     FFLAGS=
     4307                     ;;
     4308                sse)
     4309                     FFLAGS="-mfpmath=sse -msse"
     4310                     echo "$as_me:$LINENO: checking whether flag \"$FFLAGS\" works" >&5
     4311echo $ECHO_N "checking whether flag \"$FFLAGS\" works... $ECHO_C" >&6
     4312                     cat >conftest.$ac_ext <<_ACEOF
     4313      program main
     4314      double precision x
     4315      x = sin(1.d0)
     4316      end
     4317_ACEOF
     4318rm -f conftest.$ac_objext conftest$ac_exeext
     4319if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
     4320  (eval $ac_link) 2>conftest.er1
     4321  ac_status=$?
     4322  grep -v '^ *+' conftest.er1 >conftest.err
     4323  rm -f conftest.er1
     4324  cat conftest.err >&5
     4325  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     4326  (exit $ac_status); } &&
     4327         { ac_try='test -z "$ac_f77_werror_flag"
     4328                         || test ! -s conftest.err'
     4329  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     4330  (eval $ac_try) 2>&5
     4331  ac_status=$?
     4332  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     4333  (exit $ac_status); }; } &&
     4334         { ac_try='test -s conftest$ac_exeext'
     4335  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     4336  (eval $ac_try) 2>&5
     4337  ac_status=$?
     4338  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     4339  (exit $ac_status); }; }; then
     4340  echo "$as_me:$LINENO: result: yes" >&5
     4341echo "${ECHO_T}yes" >&6
     4342                         if test $have_sse = no; then
     4343                           opt_fflags="$opt_fflags $FFLAGS"
     4344                         else
     4345                           opt_fflags="$opt_fflags -msse"
     4346                         fi
     4347else
     4348  echo "$as_me: failed program was:" >&5
     4349sed 's/^/| /' conftest.$ac_ext >&5
     4350
     4351echo "$as_me:$LINENO: result: no" >&5
     4352echo "${ECHO_T}no" >&6
     4353fi
     4354rm -f conftest.err conftest.$ac_objext \
     4355      conftest$ac_exeext conftest.$ac_ext
     4356                     have_sse=yes;
     4357                     FFLAGS=
     4358                     ;;
     4359                mmx) FFLAGS="-mmmx"
     4360                     echo "$as_me:$LINENO: checking whether flag \"$FFLAGS\" works" >&5
     4361echo $ECHO_N "checking whether flag \"$FFLAGS\" works... $ECHO_C" >&6
     4362                     cat >conftest.$ac_ext <<_ACEOF
     4363      program main
     4364      double precision x
     4365      x = sin(1.d0)
     4366      end
     4367_ACEOF
     4368rm -f conftest.$ac_objext conftest$ac_exeext
     4369if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
     4370  (eval $ac_link) 2>conftest.er1
     4371  ac_status=$?
     4372  grep -v '^ *+' conftest.er1 >conftest.err
     4373  rm -f conftest.er1
     4374  cat conftest.err >&5
     4375  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     4376  (exit $ac_status); } &&
     4377         { ac_try='test -z "$ac_f77_werror_flag"
     4378                         || test ! -s conftest.err'
     4379  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     4380  (eval $ac_try) 2>&5
     4381  ac_status=$?
     4382  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     4383  (exit $ac_status); }; } &&
     4384         { ac_try='test -s conftest$ac_exeext'
     4385  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     4386  (eval $ac_try) 2>&5
     4387  ac_status=$?
     4388  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     4389  (exit $ac_status); }; }; then
     4390  echo "$as_me:$LINENO: result: yes" >&5
     4391echo "${ECHO_T}yes" >&6
     4392                         opt_fflags="$opt_fflags $FFLAGS"
     4393else
     4394  echo "$as_me: failed program was:" >&5
     4395sed 's/^/| /' conftest.$ac_ext >&5
     4396
     4397echo "$as_me:$LINENO: result: no" >&5
     4398echo "${ECHO_T}no" >&6
     4399fi
     4400rm -f conftest.err conftest.$ac_objext \
     4401      conftest$ac_exeext conftest.$ac_ext
     4402                     FFLAGS= ;;
     4403                3dnow) FFLAGS="-m3dnow"
     4404                     echo "$as_me:$LINENO: checking whether flag \"$FFLAGS\" works" >&5
     4405echo $ECHO_N "checking whether flag \"$FFLAGS\" works... $ECHO_C" >&6
     4406                     cat >conftest.$ac_ext <<_ACEOF
     4407      program main
     4408      double precision x
     4409      x = sin(1.d0)
     4410      end
     4411_ACEOF
     4412rm -f conftest.$ac_objext conftest$ac_exeext
     4413if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
     4414  (eval $ac_link) 2>conftest.er1
     4415  ac_status=$?
     4416  grep -v '^ *+' conftest.er1 >conftest.err
     4417  rm -f conftest.er1
     4418  cat conftest.err >&5
     4419  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     4420  (exit $ac_status); } &&
     4421         { ac_try='test -z "$ac_f77_werror_flag"
     4422                         || test ! -s conftest.err'
     4423  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     4424  (eval $ac_try) 2>&5
     4425  ac_status=$?
     4426  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     4427  (exit $ac_status); }; } &&
     4428         { ac_try='test -s conftest$ac_exeext'
     4429  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     4430  (eval $ac_try) 2>&5
     4431  ac_status=$?
     4432  echo "$as_me:$LINENO: \$? = $ac_status" >&5
     4433  (exit $ac_status); }; }; then
     4434  echo "$as_me:$LINENO: result: yes" >&5
     4435echo "${ECHO_T}yes" >&6
     4436                         opt_fflags="$opt_fflags $FFLAGS"
     4437else
     4438  echo "$as_me: failed program was:" >&5
     4439sed 's/^/| /' conftest.$ac_ext >&5
     4440
     4441echo "$as_me:$LINENO: result: no" >&5
     4442echo "${ECHO_T}no" >&6
     4443fi
     4444rm -f conftest.err conftest.$ac_objext \
     4445      conftest$ac_exeext conftest.$ac_ext
     4446                     FFLAGS= ;;
     4447              esac
     4448            done
     4449          ;;
     4450        esac
     4451
     4452#    case $build in
     4453#      i686-* )
     4454#        FFLAGS="-march=i686 -mfpmath=sse -msse"
     4455#        AC_MSG_CHECKING([whether flags \"$FFLAGS\" work])
     4456#        AC_TRY_LINK(,[
     4457#      double precision x
     4458#      x = sin(1.d0)],
     4459#                       [AC_MSG_RESULT([yes]); opt_fflags="$opt_fflags $FFLAGS"],
     4460#                       [AC_MSG_RESULT([no])])
     4461#        FFLAGS=
     4462#      ;;
     4463#    esac
    37344464    add_fflags="-pipe"
    37354465    dbg_fflags="-g"
     
    40664796ac_save_FFLAGS=$FFLAGS
    40674797FFLAGS="$FFLAGS $ac_verb"
    4068 (eval echo $as_me:4068: \"$ac_link\") >&5
     4798(eval echo $as_me:4798: \"$ac_link\") >&5
    40694799ac_f77_v_output=`eval $ac_link 5>&1 2>&1 | grep -v 'Driving:'`
    40704800echo "$ac_f77_v_output" >&5
     
    41444874ac_save_FFLAGS=$FFLAGS
    41454875FFLAGS="$FFLAGS $ac_cv_prog_f77_v"
    4146 (eval echo $as_me:4146: \"$ac_link\") >&5
     4876(eval echo $as_me:4876: \"$ac_link\") >&5
    41474877ac_f77_v_output=`eval $ac_link 5>&1 2>&1 | grep -v 'Driving:'`
    41484878echo "$ac_f77_v_output" >&5
     
    48395569       FLIBS=`echo $FLIBS | sed 's/-lc)/-lc/g'` ;;
    48405570esac
     5571
     5572ac_ext=c
     5573ac_cpp='$CPP $CPPFLAGS'
     5574ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
     5575ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
     5576ac_compiler_gnu=$ac_cv_c_compiler_gnu
     5577
    48415578
    48425579if test -n "$ac_tool_prefix"; then
     
    56736410################
    56746411
     6412
     6413
    56756414ac_ext=cc
    56766415ac_cpp='$CXXCPP $CPPFLAGS'
     
    63157054done
    63167055
     7056          if test ! "$ac_cv_header_cmath" = "yes"; then
    63177057
    63187058for ac_header in math.h
     
    64657205done
    64667206
     7207          fi
    64677208
    64687209for ac_header in cctype
     
    66157356done
    66167357
     7358          if test ! "$ac_cv_header_cctype" = "yes"; then
    66177359
    66187360for ac_header in ctype.h
     
    67657507done
    67667508
     7509          fi
    67677510
    67687511for ac_header in cassert
     
    69157658done
    69167659
     7660          if test ! "$ac_cv_header_cassert" = "yes"; then
    69177661
    69187662for ac_header in assert.h
     
    70657809done
    70667810
     7811          fi
    70677812
    70687813for ac_header in cstdio
     
    72157960done
    72167961
     7962          if test ! "$ac_cv_header_cstdio" = "yes"; then
    72177963
    72187964for ac_header in stdio.h
     
    73658111done
    73668112
     8113          fi
    73678114
    73688115for ac_header in cstdarg
     
    75158262done
    75168263
     8264          if test ! "$ac_cv_header_cstdarg" = "yes"; then
    75178265
    75188266for ac_header in stdarg.h
     
    76658413done
    76668414
     8415          fi
    76678416
    76688417for ac_header in cfloat
     
    78158564done
    78168565
     8566          if test ! "$ac_cv_header_cfloat" = "yes"; then
    78178567
    78188568for ac_header in float.h
     
    79658715done
    79668716
     8717          fi
    79678718
    79688719###################
     
    79758726  *-cygwin*) ;;
    79768727  *)
    7977 for ac_header in ieeefp.h
     8728for ac_header in cieeefp
    79788729do
    79798730as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
     
    81248875done
    81258876
    8126 
    8127 for ac_header in cieeefp
     8877          if test ! "$ac_cv_header_cieeefp" = "yes"; then
     8878
     8879for ac_header in ieeefp.h
    81288880do
    81298881as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
     
    82739025
    82749026done
    8275  ;;
     9027
     9028          fi ;;
    82769029esac
    82779030
     
    86499402
    86509403
    8651 ac_ext=f
    8652 ac_compile='$F77 -c $FFLAGS conftest.$ac_ext >&5'
    8653 ac_link='$F77 -o conftest$ac_exeext $FFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
    8654 ac_compiler_gnu=$ac_cv_f77_compiler_gnu
    8655 
    8656 
    86579404##########################################################################
    86589405
     
    87119458    IPADDLIBS="$use_blas $IPADDLIBS"
    87129459    cat >conftest.$ac_ext <<_ACEOF
    8713       program main
     9460/* confdefs.h.  */
     9461_ACEOF
     9462cat confdefs.h >>conftest.$ac_ext
     9463cat >>conftest.$ac_ext <<_ACEOF
     9464/* end confdefs.h.  */
     9465
     9466#ifdef F77_DUMMY_MAIN
     9467
     9468#  ifdef __cplusplus
     9469     extern "C"
     9470#  endif
     9471   int F77_DUMMY_MAIN() { return 1; }
     9472
     9473#endif
     9474int
     9475main ()
     9476{
    87149477      call dgemm
    8715       end
     9478  ;
     9479  return 0;
     9480}
    87169481_ACEOF
    87179482rm -f conftest.$ac_objext conftest$ac_exeext
     
    87249489  echo "$as_me:$LINENO: \$? = $ac_status" >&5
    87259490  (exit $ac_status); } &&
    8726          { ac_try='test -z "$ac_f77_werror_flag"
     9491         { ac_try='test -z "$ac_cxx_werror_flag"
    87279492                         || test ! -s conftest.err'
    87289493  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     
    87629527LIBS="-lcomplib.sgimath  $LIBS"
    87639528cat >conftest.$ac_ext <<_ACEOF
    8764       program main
    8765       call dgemm
    8766       end
     9529/* confdefs.h.  */
     9530_ACEOF
     9531cat confdefs.h >>conftest.$ac_ext
     9532cat >>conftest.$ac_ext <<_ACEOF
     9533/* end confdefs.h.  */
     9534
     9535/* Override any gcc2 internal prototype to avoid an error.  */
     9536#ifdef __cplusplus
     9537extern "C"
     9538#endif
     9539/* We use char because int might match the return type of a gcc2
     9540   builtin and then its argument prototype would still apply.  */
     9541char dgemm ();
     9542#ifdef F77_DUMMY_MAIN
     9543
     9544#  ifdef __cplusplus
     9545     extern "C"
     9546#  endif
     9547   int F77_DUMMY_MAIN() { return 1; }
     9548
     9549#endif
     9550int
     9551main ()
     9552{
     9553dgemm ();
     9554  ;
     9555  return 0;
     9556}
    87679557_ACEOF
    87689558rm -f conftest.$ac_objext conftest$ac_exeext
     
    87759565  echo "$as_me:$LINENO: \$? = $ac_status" >&5
    87769566  (exit $ac_status); } &&
    8777          { ac_try='test -z "$ac_f77_werror_flag"
     9567         { ac_try='test -z "$ac_cxx_werror_flag"
    87789568                         || test ! -s conftest.err'
    87799569  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     
    88129602             LDFLAGS="-xlic_lib=sunperf $LDFLAGS"
    88139603             cat >conftest.$ac_ext <<_ACEOF
    8814       program main
     9604/* confdefs.h.  */
     9605_ACEOF
     9606cat confdefs.h >>conftest.$ac_ext
     9607cat >>conftest.$ac_ext <<_ACEOF
     9608/* end confdefs.h.  */
     9609
     9610#ifdef F77_DUMMY_MAIN
     9611
     9612#  ifdef __cplusplus
     9613     extern "C"
     9614#  endif
     9615   int F77_DUMMY_MAIN() { return 1; }
     9616
     9617#endif
     9618int
     9619main ()
     9620{
    88159621      call dgemm
    8816       end
     9622  ;
     9623  return 0;
     9624}
    88179625_ACEOF
    88189626rm -f conftest.$ac_objext conftest$ac_exeext
     
    88259633  echo "$as_me:$LINENO: \$? = $ac_status" >&5
    88269634  (exit $ac_status); } &&
    8827          { ac_try='test -z "$ac_f77_werror_flag"
     9635         { ac_try='test -z "$ac_cxx_werror_flag"
    88289636                         || test ! -s conftest.err'
    88299637  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     
    88519659  esac
    88529660  if test -z "$use_blas"; then
    8853     echo "$as_me:$LINENO: checking for dgemm in -lblas" >&5
    8854 echo $ECHO_N "checking for dgemm in -lblas... $ECHO_C" >&6
    8855 if test "${ac_cv_lib_blas_dgemm+set}" = set; then
     9661    # Probably the blas library requires the Fortran libraries, so add
     9662    # them for this test.  They are added at the end anyway
     9663    ac_ext=f
     9664ac_compile='$F77 -c $FFLAGS conftest.$ac_ext >&5'
     9665ac_link='$F77 -o conftest$ac_exeext $FFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
     9666ac_compiler_gnu=$ac_cv_f77_compiler_gnu
     9667case $ac_cv_f77_mangling in
     9668  upper*) ac_val="DAXPY" ;;
     9669  lower*) ac_val="daxpy" ;;
     9670  *)      ac_val="unknown" ;;
     9671esac
     9672case $ac_cv_f77_mangling in *," underscore"*) ac_val="$ac_val"_ ;; esac
     9673
     9674cdaxpy="$ac_val"
     9675
     9676ac_ext=cc
     9677ac_cpp='$CXXCPP $CPPFLAGS'
     9678ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
     9679ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
     9680ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
     9681
     9682    SAVE_LIBS="$LIBS"
     9683    LIBS="$LIBS $FLIBS"
     9684    as_ac_Lib=`echo "ac_cv_lib_blas_$cdaxpy" | $as_tr_sh`
     9685echo "$as_me:$LINENO: checking for $cdaxpy in -lblas" >&5
     9686echo $ECHO_N "checking for $cdaxpy in -lblas... $ECHO_C" >&6
     9687if eval "test \"\${$as_ac_Lib+set}\" = set"; then
    88569688  echo $ECHO_N "(cached) $ECHO_C" >&6
    88579689else
     
    88599691LIBS="-lblas  $LIBS"
    88609692cat >conftest.$ac_ext <<_ACEOF
    8861       program main
    8862       call dgemm
    8863       end
     9693/* confdefs.h.  */
     9694_ACEOF
     9695cat confdefs.h >>conftest.$ac_ext
     9696cat >>conftest.$ac_ext <<_ACEOF
     9697/* end confdefs.h.  */
     9698
     9699/* Override any gcc2 internal prototype to avoid an error.  */
     9700#ifdef __cplusplus
     9701extern "C"
     9702#endif
     9703/* We use char because int might match the return type of a gcc2
     9704   builtin and then its argument prototype would still apply.  */
     9705char $cdaxpy ();
     9706#ifdef F77_DUMMY_MAIN
     9707
     9708#  ifdef __cplusplus
     9709     extern "C"
     9710#  endif
     9711   int F77_DUMMY_MAIN() { return 1; }
     9712
     9713#endif
     9714int
     9715main ()
     9716{
     9717$cdaxpy ();
     9718  ;
     9719  return 0;
     9720}
    88649721_ACEOF
    88659722rm -f conftest.$ac_objext conftest$ac_exeext
     
    88729729  echo "$as_me:$LINENO: \$? = $ac_status" >&5
    88739730  (exit $ac_status); } &&
    8874          { ac_try='test -z "$ac_f77_werror_flag"
     9731         { ac_try='test -z "$ac_cxx_werror_flag"
    88759732                         || test ! -s conftest.err'
    88769733  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     
    88859742  echo "$as_me:$LINENO: \$? = $ac_status" >&5
    88869743  (exit $ac_status); }; }; then
    8887   ac_cv_lib_blas_dgemm=yes
     9744  eval "$as_ac_Lib=yes"
    88889745else
    88899746  echo "$as_me: failed program was:" >&5
    88909747sed 's/^/| /' conftest.$ac_ext >&5
    88919748
    8892 ac_cv_lib_blas_dgemm=no
     9749eval "$as_ac_Lib=no"
    88939750fi
    88949751rm -f conftest.err conftest.$ac_objext \
     
    88969753LIBS=$ac_check_lib_save_LIBS
    88979754fi
    8898 echo "$as_me:$LINENO: result: $ac_cv_lib_blas_dgemm" >&5
    8899 echo "${ECHO_T}$ac_cv_lib_blas_dgemm" >&6
    8900 if test $ac_cv_lib_blas_dgemm = yes; then
     9755echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Lib'}'`" >&5
     9756echo "${ECHO_T}`eval echo '${'$as_ac_Lib'}'`" >&6
     9757if test `eval echo '${'$as_ac_Lib'}'` = yes; then
    89019758  use_blas=-lblas;
    8902                              LIBS="-lblas $LIBS";
    8903                              IPADDLIBS="-lblas $IPADDLIBS"
     9759                               LIBS="-lblas $SAVE_LIBS";
     9760                               IPADDLIBS="-lblas $IPADDLIBS"
     9761else
     9762  LIBS="$SAVE_LIBS"
    89049763fi
    89059764
     
    90029861
    90039862
     9863
    90049864{ echo "$as_me:$LINENO: Checking for Harwell subroutine library" >&5
    90059865echo "$as_me: Checking for Harwell subroutine library" >&6;}
     
    90419901 use_MA27=BUILD
    90429902else
    9043   use_MA27=
     9903  use_MA27=no
    90449904fi
    90459905
     
    90539913      echo "$as_me:$LINENO: result: no" >&5
    90549914echo "${ECHO_T}no" >&6
    9055 
    9056 cat >>confdefs.h <<\_ACEOF
    9057 #define OLD_MA27
    9058 _ACEOF
    9059 
     9915      { { echo "$as_me:$LINENO: error: Please obtain the threadsafe (newer) version of MA27" >&5
     9916echo "$as_me: error: Please obtain the threadsafe (newer) version of MA27" >&2;}
     9917   { (exit 1); exit 1; }; }
    90609918    fi
    90619919  fi
     
    90859943 use_MC19=BUILD
    90869944else
    9087   use_MC19=
    9088 fi
    9089 
    9090 else
    9091   LIBS="$use_hsl $LIBS"
     9945  use_MC19=no
     9946fi
     9947
     9948else
     9949  SAVE_LIBS="$LIBS"
     9950  LIBS="$use_hsl $LIBS $FLIBS"
    90929951  IPADDLIBS="$use_hsl $IPADDLIBS"
    90939952  echo "$as_me:$LINENO: checking for ma27ad in $use_hsl" >&5
    90949953echo $ECHO_N "checking for ma27ad in $use_hsl... $ECHO_C" >&6
    90959954          use_MA27=
     9955          ac_ext=f
     9956ac_compile='$F77 -c $FFLAGS conftest.$ac_ext >&5'
     9957ac_link='$F77 -o conftest$ac_exeext $FFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
     9958ac_compiler_gnu=$ac_cv_f77_compiler_gnu
     9959case $ac_cv_f77_mangling in
     9960  upper*) ac_val="MA27AD" ;;
     9961  lower*) ac_val="ma27ad" ;;
     9962  *)      ac_val="unknown" ;;
     9963esac
     9964case $ac_cv_f77_mangling in *," underscore"*) ac_val="$ac_val"_ ;; esac
     9965
     9966cfunc="$ac_val"
     9967
     9968ac_ext=cc
     9969ac_cpp='$CXXCPP $CPPFLAGS'
     9970ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
     9971ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
     9972ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
     9973
    90969974          cat >conftest.$ac_ext <<_ACEOF
    9097       program main
    9098       call ma27ad()
    9099       end
     9975/* confdefs.h.  */
     9976_ACEOF
     9977cat confdefs.h >>conftest.$ac_ext
     9978cat >>conftest.$ac_ext <<_ACEOF
     9979/* end confdefs.h.  */
     9980extern "C" {void $cfunc();}
     9981#ifdef F77_DUMMY_MAIN
     9982
     9983#  ifdef __cplusplus
     9984     extern "C"
     9985#  endif
     9986   int F77_DUMMY_MAIN() { return 1; }
     9987
     9988#endif
     9989int
     9990main ()
     9991{
     9992$cfunc()
     9993  ;
     9994  return 0;
     9995}
    91009996_ACEOF
    91019997rm -f conftest.$ac_objext conftest$ac_exeext
     
    910810004  echo "$as_me:$LINENO: \$? = $ac_status" >&5
    910910005  (exit $ac_status); } &&
    9110          { ac_try='test -z "$ac_f77_werror_flag"
     10006         { ac_try='test -z "$ac_cxx_werror_flag"
    911110007                         || test ! -s conftest.err'
    911210008  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     
    912510021#define HAVE_MA27 1
    912610022_ACEOF
    9127  echo "$as_me:$LINENO: result: yes" >&5
     10023
     10024                       echo "$as_me:$LINENO: result: yes" >&5
    912810025echo "${ECHO_T}yes" >&6; use_MA27=yes
    912910026else
     
    913210029
    913310030echo "$as_me:$LINENO: result: no" >&5
    9134 echo "${ECHO_T}no" >&6
     10031echo "${ECHO_T}no" >&6; use_MA27=no
    913510032fi
    913610033rm -f conftest.err conftest.$ac_objext \
     
    913910036    echo "$as_me:$LINENO: checking whether MA27 is threadsafe" >&5
    914010037echo $ECHO_N "checking whether MA27 is threadsafe... $ECHO_C" >&6
     10038    ac_ext=f
     10039ac_compile='$F77 -c $FFLAGS conftest.$ac_ext >&5'
     10040ac_link='$F77 -o conftest$ac_exeext $FFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
     10041ac_compiler_gnu=$ac_cv_f77_compiler_gnu
     10042case $ac_cv_f77_mangling in
     10043  upper*) ac_val="MA27UD" ;;
     10044  lower*) ac_val="ma27ud" ;;
     10045  *)      ac_val="unknown" ;;
     10046esac
     10047case $ac_cv_f77_mangling in *," underscore"*) ac_val="$ac_val"_ ;; esac
     10048
     10049cfunc="$ac_val"
     10050
     10051ac_ext=cc
     10052ac_cpp='$CXXCPP $CPPFLAGS'
     10053ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
     10054ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
     10055ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
     10056
    914110057    cat >conftest.$ac_ext <<_ACEOF
    9142       program main
    9143       call MA27UD()
    9144       end
     10058/* confdefs.h.  */
     10059_ACEOF
     10060cat confdefs.h >>conftest.$ac_ext
     10061cat >>conftest.$ac_ext <<_ACEOF
     10062/* end confdefs.h.  */
     10063extern "C" {void $cfunc();}
     10064#ifdef F77_DUMMY_MAIN
     10065
     10066#  ifdef __cplusplus
     10067     extern "C"
     10068#  endif
     10069   int F77_DUMMY_MAIN() { return 1; }
     10070
     10071#endif
     10072int
     10073main ()
     10074{
     10075$cfunc
     10076  ;
     10077  return 0;
     10078}
    914510079_ACEOF
    914610080rm -f conftest.$ac_objext conftest$ac_exeext
     
    915310087  echo "$as_me:$LINENO: \$? = $ac_status" >&5
    915410088  (exit $ac_status); } &&
    9155          { ac_try='test -z "$ac_f77_werror_flag"
     10089         { ac_try='test -z "$ac_cxx_werror_flag"
    915610090                         || test ! -s conftest.err'
    915710091  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     
    917410108echo "$as_me:$LINENO: result: no" >&5
    917510109echo "${ECHO_T}no" >&6
    9176                     { { echo "$as_me:$LINENO: error: Please obtain the threadsafe (newer) version of MA27" >&5
     10110                 { { echo "$as_me:$LINENO: error: Please obtain the threadsafe (newer) version of MA27" >&5
    917710111echo "$as_me: error: Please obtain the threadsafe (newer) version of MA27" >&2;}
    917810112   { (exit 1); exit 1; }; }
     
    918410118echo $ECHO_N "checking for mc19ad in $use_hsl... $ECHO_C" >&6
    918510119          use_MC19=
     10120          ac_ext=f
     10121ac_compile='$F77 -c $FFLAGS conftest.$ac_ext >&5'
     10122ac_link='$F77 -o conftest$ac_exeext $FFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
     10123ac_compiler_gnu=$ac_cv_f77_compiler_gnu
     10124case $ac_cv_f77_mangling in
     10125  upper*) ac_val="MC19AD" ;;
     10126  lower*) ac_val="mc19ad" ;;
     10127  *)      ac_val="unknown" ;;
     10128esac
     10129case $ac_cv_f77_mangling in *," underscore"*) ac_val="$ac_val"_ ;; esac
     10130
     10131cfunc="$ac_val"
     10132
     10133ac_ext=cc
     10134ac_cpp='$CXXCPP $CPPFLAGS'
     10135ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
     10136ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
     10137ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
     10138
    918610139          cat >conftest.$ac_ext <<_ACEOF
    9187       program main
    9188       call mc19ad()
    9189       end
     10140/* confdefs.h.  */
     10141_ACEOF
     10142cat confdefs.h >>conftest.$ac_ext
     10143cat >>conftest.$ac_ext <<_ACEOF
     10144/* end confdefs.h.  */
     10145extern "C" {void $cfunc();}
     10146#ifdef F77_DUMMY_MAIN
     10147
     10148#  ifdef __cplusplus
     10149     extern "C"
     10150#  endif
     10151   int F77_DUMMY_MAIN() { return 1; }
     10152
     10153#endif
     10154int
     10155main ()
     10156{
     10157$cfunc()
     10158  ;
     10159  return 0;
     10160}
    919010161_ACEOF
    919110162rm -f conftest.$ac_objext conftest$ac_exeext
     
    919810169  echo "$as_me:$LINENO: \$? = $ac_status" >&5
    919910170  (exit $ac_status); } &&
    9200          { ac_try='test -z "$ac_f77_werror_flag"
     10171         { ac_try='test -z "$ac_cxx_werror_flag"
    920110172                         || test ! -s conftest.err'
    920210173  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     
    921510186#define HAVE_MC19 1
    921610187_ACEOF
    9217  echo "$as_me:$LINENO: result: yes" >&5
     10188
     10189                       echo "$as_me:$LINENO: result: yes" >&5
    921810190echo "${ECHO_T}yes" >&6; use_MC19=yes
    921910191else
     
    922210194
    922310195echo "$as_me:$LINENO: result: no" >&5
    9224 echo "${ECHO_T}no" >&6
     10196echo "${ECHO_T}no" >&6; use_MC19=no
    922510197fi
    922610198rm -f conftest.err conftest.$ac_objext \
    922710199      conftest$ac_exeext conftest.$ac_ext
    9228 fi
    9229 
    9230 # Try to make sure the correct FD05 routine is there (if needed)
    9231 if test "$use_MA48" = BUILD || test "$use_MA57" = BUILD; then
    9232   as_ac_File=`echo "ac_cv_file_$hslsrcdir/fd05ad.f" | $as_tr_sh`
    9233 echo "$as_me:$LINENO: checking for $hslsrcdir/fd05ad.f" >&5
    9234 echo $ECHO_N "checking for $hslsrcdir/fd05ad.f... $ECHO_C" >&6
    9235 if eval "test \"\${$as_ac_File+set}\" = set"; then
    9236   echo $ECHO_N "(cached) $ECHO_C" >&6
    9237 else
    9238   test "$cross_compiling" = yes &&
    9239   { { echo "$as_me:$LINENO: error: cannot check for file existence when cross compiling" >&5
    9240 echo "$as_me: error: cannot check for file existence when cross compiling" >&2;}
    9241    { (exit 1); exit 1; }; }
    9242 if test -r "$hslsrcdir/fd05ad.f"; then
    9243   eval "$as_ac_File=yes"
    9244 else
    9245   eval "$as_ac_File=no"
    9246 fi
    9247 fi
    9248 echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_File'}'`" >&5
    9249 echo "${ECHO_T}`eval echo '${'$as_ac_File'}'`" >&6
    9250 if test `eval echo '${'$as_ac_File'}'` = yes; then
    9251   use_FD05="fd05ad.f"
    9252 else
    9253   use_FD05=
    9254 fi
    9255 
    9256   if test -z "$use_FD05"; then
    9257     case $build in
    9258       rs6000-* | powerpc*)
    9259                 use_FD05="fd05adj.f";;
    9260       vax-*)    use_FD05="fd05adv.f";;
    9261       hp*)      use_FD05="fd05adh.f";;
    9262       *-osf*)   use_FD05="fd05ada.f";;
    9263       *ymp*)    use_FD05="fd05adc.f";;
    9264       *)        use_FD05="fd05ads.f";;
    9265     esac
    9266     { echo "$as_me:$LINENO: WARNING: The file \`fd05ad.f' is not provided.  My guess for this system is that you should use \`$use_FD05', but you better verify this!!!" >&5
    9267 echo "$as_me: WARNING: The file \`fd05ad.f' is not provided.  My guess for this system is that you should use \`$use_FD05', but you better verify this!!!" >&2;}
    9268     as_ac_File=`echo "ac_cv_file_$hslsrcdir/$use_FD05" | $as_tr_sh`
    9269 echo "$as_me:$LINENO: checking for $hslsrcdir/$use_FD05" >&5
    9270 echo $ECHO_N "checking for $hslsrcdir/$use_FD05... $ECHO_C" >&6
    9271 if eval "test \"\${$as_ac_File+set}\" = set"; then
    9272   echo $ECHO_N "(cached) $ECHO_C" >&6
    9273 else
    9274   test "$cross_compiling" = yes &&
    9275   { { echo "$as_me:$LINENO: error: cannot check for file existence when cross compiling" >&5
    9276 echo "$as_me: error: cannot check for file existence when cross compiling" >&2;}
    9277    { (exit 1); exit 1; }; }
    9278 if test -r "$hslsrcdir/$use_FD05"; then
    9279   eval "$as_ac_File=yes"
    9280 else
    9281   eval "$as_ac_File=no"
    9282 fi
    9283 fi
    9284 echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_File'}'`" >&5
    9285 echo "${ECHO_T}`eval echo '${'$as_ac_File'}'`" >&6
    9286 if test `eval echo '${'$as_ac_File'}'` = yes; then
    9287   :
    9288 else
    9289   { { echo "$as_me:$LINENO: error: File $use_FD05 not found" >&5
    9290 echo "$as_me: error: File $use_FD05 not found" >&2;}
    9291    { (exit 1); exit 1; }; }
    9292 fi
    9293 
    9294               ac_config_links="$ac_config_links Extern/HSL/fd05ad.f:Extern/HSL/$use_FD05"
    9295 
    9296   fi
     10200  LIBS="$use_hsl $SAVE_LIBS"
    929710201fi
    929810202
     
    935410258fi
    935510259
    9356 ac_ext=c
    9357 ac_cpp='$CPP $CPPFLAGS'
    9358 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
    9359 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
    9360 ac_compiler_gnu=$ac_cv_c_compiler_gnu
    9361 
     10260# Check if at least one linear solver was found
     10261
     10262# Check whether --enable-distconf or --disable-distconf was given.
     10263if test "${enable_distconf+set}" = set; then
     10264  enableval="$enable_distconf"
     10265  case "${enableval}" in
     10266    yes) distconf=true ;;
     10267    no)  distconf=false ;;
     10268    *) { { echo "$as_me:$LINENO: error: bad value ${enableval} for --enable-distconf" >&5
     10269echo "$as_me: error: bad value ${enableval} for --enable-distconf" >&2;}
     10270   { (exit 1); exit 1; }; } ;;
     10271  esac
     10272else
     10273  distconf=false
     10274fi;
     10275
     10276if test "$use_MA27" = "no" -a "$use_pardiso" = "no" -a "$use_taucs" = no; then
     10277  if test "$distconf" = false; then
     10278    { { echo "$as_me:$LINENO: error: \"No linear solver (such as MA27) available\"" >&5
     10279echo "$as_me: error: \"No linear solver (such as MA27) available\"" >&2;}
     10280   { (exit 1); exit 1; }; }
     10281  fi
     10282fi
    936210283
    936310284# For the remaining tests we need to include FLIBS into LIBS, so that
     
    936810289# AMPL SOLVER LIBRARY #
    936910290#######################
    9370 
    9371 ac_ext=c
    9372 ac_cpp='$CPP $CPPFLAGS'
    9373 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
    9374 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
    9375 ac_compiler_gnu=$ac_cv_c_compiler_gnu
    9376 
    937710291
    937810292asldir=Extern/ASL/solvers
     
    952710441    ASLMAKEFLAGS="CFLAGS=\"$bla $asladdcflags\""
    952810442
    9529     if test $USE_MAINTAINER_MODE = 'yes'; then
    9530       { echo "$as_me:$LINENO: WARNING: Assuming that maintainer mode is only used for GNU make" >&5
    9531 echo "$as_me: WARNING: Assuming that maintainer mode is only used for GNU make" >&2;}
     10443    echo "$as_me:$LINENO: checking whether $am_make is the GNU make" >&5
     10444echo $ECHO_N "checking whether $am_make is the GNU make... $ECHO_C" >&6
     10445    if $am_make -v | grep GNU >&5 ; then
     10446      echo "$as_me:$LINENO: result: yes" >&5
     10447echo "${ECHO_T}yes" >&6
    953210448      ASLMAKEFLAGS="-j 1 $ASLMAKEFLAGS"
    953310449    else
    9534       echo "$as_me:$LINENO: checking whether $am_make understands the \`-j 1' flag" >&5
    9535 echo $ECHO_N "checking whether $am_make understands the \`-j 1' flag... $ECHO_C" >&6
    9536       cat >conftest.$ac_ext <<_ACEOF
    9537 bladfaoekja:
    9538 _ACEOF
    9539       if ($am_make -f conftest.c -j 1 bladfaoekja >&5) 2>&5 ; then
    9540         echo "$as_me:$LINENO: result: yes" >&5
     10450      echo "$as_me:$LINENO: result: yes" >&5
    954110451echo "${ECHO_T}yes" >&6
    9542         ASLMAKEFLAGS="-j 1 $ASLMAKEFLAGS"
    9543       else
    9544         echo "$as_me:$LINENO: result: no" >&5
    9545 echo "${ECHO_T}no" >&6
    9546         echo "$as_me:$LINENO: checking whether $am_make understands the \`-J 1' flag" >&5
    9547 echo $ECHO_N "checking whether $am_make understands the \`-J 1' flag... $ECHO_C" >&6
    9548         if ($am_make -f conftest.c -J 1 bladfaoekja >&5) 2>&5 ; then
    9549           echo "$as_me:$LINENO: result: yes" >&5
    9550 echo "${ECHO_T}yes" >&6
    9551           ASLMAKEFLAGS="-J 1 $ASLMAKEFLAGS"
    9552         else
    9553           echo "$as_me:$LINENO: result: no" >&5
    9554 echo "${ECHO_T}no" >&6
    9555         fi
    9556       fi
    955710452    fi
     10453
     10454#    if test $USE_MAINTAINER_MODE = 'yes'; then
     10455#      AC_MSG_WARN([Assuming that maintainer mode is only used for GNU make])
     10456#      ASLMAKEFLAGS="-j 1 $ASLMAKEFLAGS"
     10457#    else
     10458#      AC_LANG_PUSH(Fortran 77)
     10459#      AC_MSG_CHECKING([whether $am_make understands the `-j 1' flag])
     10460#      AC_LANG_CONFTEST([[bladfaoekja:]])
     10461#      if ($am_make -f conftest.c -j 1 bladfaoekja >&5) 2>&5 ; then
     10462#        AC_MSG_RESULT([yes])
     10463#        ASLMAKEFLAGS="-j 1 $ASLMAKEFLAGS"
     10464#      else
     10465#        AC_MSG_RESULT([no])
     10466#        AC_MSG_CHECKING([whether $am_make understands the `-J 1' flag])
     10467#        if ($am_make -f conftest.c -J 1 bladfaoekja >&5) 2>&5 ; then
     10468#          AC_MSG_RESULT([yes])
     10469#          ASLMAKEFLAGS="-J 1 $ASLMAKEFLAGS"
     10470#        else
     10471#          AC_MSG_RESULT([no])
     10472#        fi
     10473#      fi
     10474#      AC_LANG_POP(Fortran 77)
     10475#    fi
    955810476  fi
    955910477  ASLMAKEFILECMDS="sed 's/ar \$\$(ARFLAGS)/$AR $ARFLAGS/' makefile.u | sed 's/ar ruv/$AR $ARFLAGS/' "
     
    961610534  echo "$as_me:$LINENO: \$? = $ac_status" >&5
    961710535  (exit $ac_status); } &&
    9618          { ac_try='test -z "$ac_c_werror_flag"
     10536         { ac_try='test -z "$ac_cxx_werror_flag"
    961910537                         || test ! -s conftest.err'
    962010538  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
     
    979310711fi
    979410712
     10713
     10714
     10715
     10716if test ! "$use_MA27" = no; then
     10717  HAVE_MA27_TRUE=
     10718  HAVE_MA27_FALSE='#'
     10719else
     10720  HAVE_MA27_TRUE='#'
     10721  HAVE_MA27_FALSE=
     10722fi
     10723
     10724
     10725
     10726if test ! "$use_MC19" = no; then
     10727  HAVE_MC19_TRUE=
     10728  HAVE_MC19_FALSE='#'
     10729else
     10730  HAVE_MC19_TRUE='#'
     10731  HAVE_MC19_FALSE=
     10732fi
    979510733
    979610734
     
    1001610954Usually this means the macro was only invoked conditionally." >&5
    1001710955echo "$as_me: error: conditional \"BUILDHSLDIR\" was never defined.
     10956Usually this means the macro was only invoked conditionally." >&2;}
     10957   { (exit 1); exit 1; }; }
     10958fi
     10959if test -z "${HAVE_MA27_TRUE}" && test -z "${HAVE_MA27_FALSE}"; then
     10960  { { echo "$as_me:$LINENO: error: conditional \"HAVE_MA27\" was never defined.
     10961Usually this means the macro was only invoked conditionally." >&5
     10962echo "$as_me: error: conditional \"HAVE_MA27\" was never defined.
     10963Usually this means the macro was only invoked conditionally." >&2;}
     10964   { (exit 1); exit 1; }; }
     10965fi
     10966if test -z "${HAVE_MC19_TRUE}" && test -z "${HAVE_MC19_FALSE}"; then
     10967  { { echo "$as_me:$LINENO: error: conditional \"HAVE_MC19\" was never defined.
     10968Usually this means the macro was only invoked conditionally." >&5
     10969echo "$as_me: error: conditional \"HAVE_MC19\" was never defined.
    1001810970Usually this means the macro was only invoked conditionally." >&2;}
    1001910971   { (exit 1); exit 1; }; }
     
    1031811270cat >&5 <<_CSEOF
    1031911271
    10320 This file was extended by ipopt $as_me 3.0beta, which was
     11272This file was extended by Ipopt $as_me 3.0beta, which was
    1032111273generated by GNU Autoconf 2.59.  Invocation command line was
    1032211274
     
    1038411336cat >>$CONFIG_STATUS <<_ACEOF
    1038511337ac_cs_version="\\
    10386 ipopt config.status 3.0beta
     11338Ipopt config.status 3.0beta
    1038711339configured by $0, generated by GNU Autoconf 2.59,
    1038811340  with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
     
    1051211464  "Extern/HSL/Makefile" ) CONFIG_FILES="$CONFIG_FILES Extern/HSL/Makefile" ;;
    1051311465  "Extern/ASL/Makefile" ) CONFIG_FILES="$CONFIG_FILES Extern/ASL/Makefile" ;;
    10514   "Extern/HSL/fd05ad.f" ) CONFIG_LINKS="$CONFIG_LINKS Extern/HSL/fd05ad.f:Extern/HSL/$use_FD05" ;;
    1051511466  "Extern/ASL/ASLsolvers" ) CONFIG_LINKS="$CONFIG_LINKS Extern/ASL/ASLsolvers:$asldir" ;;
    1051611467  "depfiles" ) CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
     
    1060611557s,@build_vendor@,$build_vendor,;t t
    1060711558s,@build_os@,$build_os,;t t
    10608 s,@AR@,$AR,;t t
    10609 s,@ARFLAGS@,$ARFLAGS,;t t
    10610 s,@AR_X@,$AR_X,;t t
    1061111559s,@CXX@,$CXX,;t t
    1061211560s,@CXXFLAGS@,$CXXFLAGS,;t t
     
    1061711565s,@OBJEXT@,$OBJEXT,;t t
    1061811566s,@CXXLIBS@,$CXXLIBS,;t t
     11567s,@AR@,$AR,;t t
     11568s,@ARFLAGS@,$ARFLAGS,;t t
     11569s,@AR_X@,$AR_X,;t t
    1061911570s,@CC@,$CC,;t t
    1062011571s,@CFLAGS@,$CFLAGS,;t t
     
    1068711638s,@BUILDHSLDIR_TRUE@,$BUILDHSLDIR_TRUE,;t t
    1068811639s,@BUILDHSLDIR_FALSE@,$BUILDHSLDIR_FALSE,;t t
     11640s,@HAVE_MA27_TRUE@,$HAVE_MA27_TRUE,;t t
     11641s,@HAVE_MA27_FALSE@,$HAVE_MA27_FALSE,;t t
     11642s,@HAVE_MC19_TRUE@,$HAVE_MC19_TRUE,;t t
     11643s,@HAVE_MC19_FALSE@,$HAVE_MC19_FALSE,;t t
    1068911644s,@HAVE_PARDISO_TRUE@,$HAVE_PARDISO_TRUE,;t t
    1069011645s,@HAVE_PARDISO_FALSE@,$HAVE_PARDISO_FALSE,;t t
  • branches/dev/configure.ac

    r462 r465  
    1414AC_PREREQ(2.59)
    1515
    16 AC_INIT([ipopt],[3.0beta],[coin-ipopt@www-124.ibm.com])
     16AC_INIT([Ipopt],[3.0beta],[coin-ipopt@www-124.ibm.com])
    1717
    1818AC_COPYRIGHT([
     
    2828# Get the system type
    2929AC_CANONICAL_BUILD
    30 
    31 ##########################################
    32 # Set variables for the archiver         #
    33 # (for AIX in 64bit mode also on SGI...) #
    34 ##########################################
    35 if test -z "$AR"; then
    36   AR="ar"
    37 fi
    38 AC_ARG_VAR(AR,[Command for handling archives (default is `ar')])
    39 if test -z "$ARFLAGS"; then
    40   ARFLAGS="cru"
    41 fi
    42 AC_ARG_VAR(ARFLAGS,[Flags for adding file for archive command (default is `crv')])
    43 if test -z "$AR_X"; then
    44   AR_X="ar x"
    45 fi
    46 AC_ARG_VAR(AR_X,[Command for extracing an archive (default is `ar x')])
    4730
    4831# Check if user wants to produce debugging code
     
    6447AC_LANG_PUSH(C++)
    6548SAVE_CXXFLAGS="$CXXFLAGS"
    66 AC_PROG_CXX([icpc cl xlC aCC CC g++])
     49AC_PROG_CXX([cl xlC aCC CC g++ icpc])
    6750CXXFLAGS="$SAVE_CXXFLAGS"
    6851
     
    8063        opt_cxxflags="-O3 -funroll-loops"
    8164        case $build in
    82           i686-* )
    83             CXXFLAGS="-march=i686 -mfpmath=sse -msse"
    84             AC_MSG_CHECKING([whether flags \"$CXXFLAGS\" work])
    85             AC_TRY_LINK([#include <cmath>],[double s = sin(1.0);],
    86                            [AC_MSG_RESULT([yes]); opt_cxxflags="$opt_cxxflags $CXXFLAGS"],
    87                            [AC_MSG_RESULT([no])])
    88             CXXFLAGS=
     65          x86_64-* | i686-* | i586-* )
     66            # Check for enabling special instructions
     67            myflags=`grep flags /proc/cpuinfo | tail -1 | cut -d: -f2-`
     68            have_sse=no
     69            for i in $myflags; do
     70              case $i in
     71                sse3) CXXFLAGS="-mfpmath=sse -msse3"
     72                     AC_MSG_CHECKING([whether flag \"$CXXFLAGS\" works])
     73                     AC_TRY_LINK([#include <cmath>],[double s = sin(1.0);],
     74                        [AC_MSG_RESULT([yes])
     75                         opt_cxxflags="$opt_cxxflags $CXXFLAGS"],
     76                        [AC_MSG_RESULT([no])])
     77                     have_sse=yes;
     78                     CXXFLAGS=
     79                     ;;
     80                sse2)
     81                     CXXFLAGS="-mfpmath=sse -msse2"
     82                     AC_MSG_CHECKING([whether flag \"$CXXFLAGS\" works])
     83                     AC_TRY_LINK([#include <cmath>],[double s = sin(1.0);],
     84                        [AC_MSG_RESULT([yes])
     85                         if test $have_sse = no; then
     86                           opt_cxxflags="$opt_cxxflags $CXXFLAGS"
     87                         else
     88                           opt_cxxflags="$opt_cxxflags -msse2"
     89                         fi],
     90                        [AC_MSG_RESULT([no])])
     91                     have_sse=yes;
     92                     CXXFLAGS=
     93                     ;;
     94                sse)
     95                     CXXFLAGS="-mfpmath=sse -msse"
     96                     AC_MSG_CHECKING([whether flag \"$CXXFLAGS\" works])
     97                     AC_TRY_LINK([#include <cmath>],[double s = sin(1.0);],
     98                        [AC_MSG_RESULT([yes])
     99                         if test $have_sse = no; then
     100                           opt_cxxflags="$opt_cxxflags $CXXFLAGS"
     101                         else
     102                           opt_cxxflags="$opt_cxxflags -msse"
     103                         fi],
     104                        [AC_MSG_RESULT([no])])
     105                     have_sse=yes;
     106                     CXXFLAGS=
     107                     ;;
     108                mmx) CXXFLAGS="-mmmx"
     109                     AC_MSG_CHECKING([whether flag \"$CXXFLAGS\" works])
     110                     AC_TRY_LINK([#include <cmath>],[double s = sin(1.0);],
     111                        [AC_MSG_RESULT([yes])
     112                         opt_cxxflags="$opt_cxxflags $CXXFLAGS"],
     113                        [AC_MSG_RESULT([no])])
     114                     CXXFLAGS= ;;
     115                3dnow) CXXFLAGS="-m3dnow"
     116                     AC_MSG_CHECKING([whether flag \"$CXXFLAGS\" works])
     117                     AC_TRY_LINK([#include <cmath>],[double s = sin(1.0);],
     118                        [AC_MSG_RESULT([yes])
     119                         opt_cxxflags="$opt_cxxflags $CXXFLAGS"],
     120                        [AC_MSG_RESULT([no])])
     121                     CXXFLAGS= ;;
     122              esac
     123            done
    89124          ;;
    90125        esac
     
    222257AC_LANG_POP(C++)
    223258
     259###############################################
     260# Set variables for the archiver              #
     261# (for AIX in 64bit mode also on SGI, SUN...) #
     262###############################################
     263if test -z "$AR"; then
     264  if test ! "$GXX" = "yes"; then
     265    case $build in
     266      *-sun-*)
     267        AR="CC -xar"
     268        ;;
     269      *-sgi-*)
     270        AR="CC -ar"
     271        ;;
     272    esac
     273  fi
     274  if test -z "$AR"; then
     275    AR="ar"
     276  fi
     277fi
     278AC_ARG_VAR(AR,[Command for handling archives (default is `ar')])
     279AC_MSG_NOTICE([Using AR=\"$AR\".])
     280
     281if test -z "$ARFLAGS"; then
     282  if test ! "$GXX" = "yes"; then
     283    case $build in
     284      *-sun-*)
     285        ARFLAGS="-o"
     286        ;;
     287      *-sgi-*)
     288        ARFLAGS="-o"
     289        ;;
     290    esac
     291  fi
     292  if test -z "$ARFLAGS"; then
     293    ARFLAGS="crv"
     294  fi
     295fi
     296AC_ARG_VAR(ARFLAGS,[Flags for adding file for archive command (default is `crv')])
     297AC_MSG_NOTICE([Using ARFLAGS=\"$ARFLAGS\".])
     298
     299if test -z "$AR_X"; then
     300  AR_X="ar x"
     301fi
     302AC_ARG_VAR(AR_X,[Command for extracing an archive (default is `ar x')])
     303AC_MSG_NOTICE([Using AR_X=\"$AR_X\".])
     304
    224305######################
    225306# C Compiler Options #
    226307######################
    227308
     309AC_LANG_PUSH(C)
    228310SAVE_CFLAGS="$CFLAGS"
    229 AC_PROG_CC([icc cl pgcc xlc cc gcc cl])
     311AC_PROG_CC([cl pgcc xlc cc gcc icc])
    230312CFLAGS="$SAVE_CFLAGS"
    231313
     
    243325        opt_cflags="-O3 -funroll-loops"
    244326        case $build in
    245           i686-* )
    246             myCFLAGS="-march=i686 -mfpmath=sse -msse"
    247             AC_MSG_CHECKING([whether  flags \"$myCFLAGS\" work])
    248 # This is a trick to make sure that the math library is included
    249             CFLAGS="$myCFLAGS -lm"
    250             AC_TRY_LINK([#include <math.h>],[double s = sin(1.0);],
    251                            [AC_MSG_RESULT([yes]); opt_cflags="$opt_cflags $myCFLAGS"],
    252                            [AC_MSG_RESULT([no])])
    253             CFLAGS=
     327          x86_64-* | i686-* | i586-* )
     328            # Check for enabling special instructions
     329            myflags=`grep flags /proc/cpuinfo | tail -1 | cut -d: -f2-`
     330            have_sse=no
     331            SAVE_LIBS="$LIBS"
     332            LIBS="$LIBS -lm"
     333            for i in $myflags; do
     334              case $i in
     335                sse3) CFLAGS="-mfpmath=sse -msse3"
     336                     AC_MSG_CHECKING([whether flag \"$CFLAGS\" works])
     337                     AC_TRY_LINK([#include <math.h>],[double s = sin(1.0);],
     338                        [AC_MSG_RESULT([yes])
     339                         opt_cflags="$opt_cflags $CFLAGS"],
     340                        [AC_MSG_RESULT([no])])
     341                     have_sse=yes;
     342                     CFLAGS=
     343                     ;;
     344                sse2)
     345                     CFLAGS="-mfpmath=sse -msse2"
     346                     AC_MSG_CHECKING([whether flag \"$CFLAGS\" works])
     347                     AC_TRY_LINK([#include <math.h>],[double s = sin(1.0);],
     348                        [AC_MSG_RESULT([yes])
     349                         if test $have_sse = no; then
     350                           opt_cflags="$opt_cflags $CFLAGS"
     351                         else
     352                           opt_cflags="$opt_cflags -msse2"
     353                         fi],
     354                        [AC_MSG_RESULT([no])])
     355                     have_sse=yes;
     356                     CFLAGS=
     357                     ;;
     358                sse)
     359                     CFLAGS="-mfpmath=sse -msse"
     360                     AC_MSG_CHECKING([whether flag \"$CFLAGS\" works])
     361                     AC_TRY_LINK([#include <math.h>],[double s = sin(1.0);],
     362                        [AC_MSG_RESULT([yes])
     363                         if test $have_sse = no; then
     364                           opt_cflags="$opt_cflags $CFLAGS"
     365                         else
     366                           opt_cflags="$opt_cflags -msse"
     367                         fi],
     368                        [AC_MSG_RESULT([no])])
     369                     have_sse=yes;
     370                     CFLAGS=
     371                     ;;
     372                mmx) CFLAGS="-mmmx"
     373                     AC_MSG_CHECKING([whether flag \"$CFLAGS\" works])
     374                     AC_TRY_LINK([#include <math.h>],[double s = sin(1.0);],
     375                        [AC_MSG_RESULT([yes])
     376                         opt_cflags="$opt_cflags $CFLAGS"],
     377                        [AC_MSG_RESULT([no])])
     378                     CFLAGS= ;;
     379                3dnow) CFLAGS="-m3dnow"
     380                     AC_MSG_CHECKING([whether flag \"$CFLAGS\" works])
     381                     AC_TRY_LINK([#include <math.h>],[double s = sin(1.0);],
     382                        [AC_MSG_RESULT([yes])
     383                         opt_cflags="$opt_cflags $CFLAGS"],
     384                        [AC_MSG_RESULT([no])])
     385                     CFLAGS= ;;
     386              esac
     387            done
     388            LIBS="$SAVE_LIBS"
    254389          ;;
    255390        esac
     
    352487  AC_MSG_RESULT([yes])
    353488fi
     489AC_LANG_POP(C)
    354490
    355491###################################
     
    359495AC_LANG_PUSH(Fortran 77)
    360496SAVE_FFLAGS="$FFLAGS"
    361 AC_PROG_F77(ifort ifc pgf77 xlf fort77 f77 g77 df)
     497AC_PROG_F77(ifort pgf77 xlf fort77 f77 g77 df ifc)
    362498FFLAGS="$SAVE_FFLAGS"
    363499
     
    369505  if test "$G77" = "yes"; then
    370506    opt_fflags="-O3 -funroll-loops"
    371     case $build in
    372       i686-* )
    373         FFLAGS="-march=i686 -mfpmath=sse -msse"
    374         AC_MSG_CHECKING([whether flags \"$FFLAGS\" work])
    375         AC_TRY_LINK(,[
    376       double precision x
     507        case $build in
     508          x86_64-* | i686-* | i586-* )
     509            # Check for enabling special instructions
     510            myflags=`grep flags /proc/cpuinfo | tail -1 | cut -d: -f2-`
     511            have_sse=no
     512            for i in $myflags; do
     513              case $i in
     514                sse3) FFLAGS="-mfpmath=sse -msse3"
     515                     AC_MSG_CHECKING([whether flag \"$FFLAGS\" works])
     516                     AC_TRY_LINK(,[      double precision x
    377517      x = sin(1.d0)],
    378                        [AC_MSG_RESULT([yes]); opt_fflags="$opt_fflags $FFLAGS"],
    379                        [AC_MSG_RESULT([no])])
    380         FFLAGS=
    381       ;;
    382     esac
     518                        [AC_MSG_RESULT([yes])
     519                         opt_fflags="$opt_fflags $FFLAGS"],
     520                        [AC_MSG_RESULT([no])])
     521                     have_sse=yes;
     522                     FFLAGS=
     523                     ;;
     524                sse2)
     525                     FFLAGS="-mfpmath=sse -msse2"
     526                     AC_MSG_CHECKING([whether flag \"$FFLAGS\" works])
     527                     AC_TRY_LINK(,[      double precision x
     528      x = sin(1.d0)],
     529                        [AC_MSG_RESULT([yes])
     530                         if test $have_sse = no; then
     531                           opt_fflags="$opt_fflags $FFLAGS"
     532                         else
     533                           opt_fflags="$opt_fflags -msse2"
     534                         fi],
     535                        [AC_MSG_RESULT([no])])
     536                     have_sse=yes;
     537                     FFLAGS=
     538                     ;;
     539                sse)
     540                     FFLAGS="-mfpmath=sse -msse"
     541                     AC_MSG_CHECKING([whether flag \"$FFLAGS\" works])
     542                     AC_TRY_LINK(,[      double precision x
     543      x = sin(1.d0)],
     544                        [AC_MSG_RESULT([yes])
     545                         if test $have_sse = no; then
     546                           opt_fflags="$opt_fflags $FFLAGS"
     547                         else
     548                           opt_fflags="$opt_fflags -msse"
     549                         fi],
     550                        [AC_MSG_RESULT([no])])
     551                     have_sse=yes;
     552                     FFLAGS=
     553                     ;;
     554                mmx) FFLAGS="-mmmx"
     555                     AC_MSG_CHECKING([whether flag \"$FFLAGS\" works])
     556                     AC_TRY_LINK(,[      double precision x
     557      x = sin(1.d0)],
     558                        [AC_MSG_RESULT([yes])
     559                         opt_fflags="$opt_fflags $FFLAGS"],
     560                        [AC_MSG_RESULT([no])])
     561                     FFLAGS= ;;
     562                3dnow) FFLAGS="-m3dnow"
     563                     AC_MSG_CHECKING([whether flag \"$FFLAGS\" works])
     564                     AC_TRY_LINK(,[      double precision x
     565      x = sin(1.d0)],
     566                        [AC_MSG_RESULT([yes])
     567                         opt_fflags="$opt_fflags $FFLAGS"],
     568                        [AC_MSG_RESULT([no])])
     569                     FFLAGS= ;;
     570              esac
     571            done
     572          ;;
     573        esac
     574
     575#    case $build in
     576#      i686-* )
     577#        FFLAGS="-march=i686 -mfpmath=sse -msse"
     578#        AC_MSG_CHECKING([whether flags \"$FFLAGS\" work])
     579#        AC_TRY_LINK(,[
     580#      double precision x
     581#      x = sin(1.d0)],
     582#                       [AC_MSG_RESULT([yes]); opt_fflags="$opt_fflags $FFLAGS"],
     583#                       [AC_MSG_RESULT([no])])
     584#        FFLAGS=
     585#      ;;
     586#    esac
    383587    add_fflags="-pipe"
    384588    dbg_fflags="-g"
     
    493697esac
    494698
     699AC_LANG_POP(Fortran 77)
     700
    495701AC_PROG_RANLIB
    496702
     
    515721################
    516722
    517 AC_CHECK_HEADERS([cmath])
    518 AC_CHECK_HEADERS([math.h])
    519 AC_CHECK_HEADERS([cctype])
    520 AC_CHECK_HEADERS([ctype.h])
    521 AC_CHECK_HEADERS([cassert])
    522 AC_CHECK_HEADERS([assert.h])
    523 AC_CHECK_HEADERS([cstdio])
    524 AC_CHECK_HEADERS([stdio.h])
    525 AC_CHECK_HEADERS([cstdarg])
    526 AC_CHECK_HEADERS([stdarg.h])
    527 AC_CHECK_HEADERS([cfloat])
    528 AC_CHECK_HEADERS([float.h])
     723AC_DEFUN([MY_CHECK_CXX_HEADER],
     724         [AC_CHECK_HEADERS([c$1])
     725          if test ! "$ac_cv_header_c$1" = "yes"; then
     726            AC_CHECK_HEADERS([$1.h])
     727          fi])
     728
     729MY_CHECK_CXX_HEADER(math)
     730MY_CHECK_CXX_HEADER(ctype)
     731MY_CHECK_CXX_HEADER(assert)
     732MY_CHECK_CXX_HEADER(stdio)
     733MY_CHECK_CXX_HEADER(stdarg)
     734MY_CHECK_CXX_HEADER(float)
    529735
    530736###################
     
    536742case $build in
    537743  *-cygwin*) ;;
    538   *) AC_CHECK_HEADERS([ieeefp.h])
    539      AC_CHECK_HEADERS([cieeefp]) ;;
     744  *) MY_CHECK_CXX_HEADER([ieeefp]) ;;
    540745esac
    541746
     
    634839#endif])
    635840
    636 AC_LANG_POP(C++)
    637 
    638841##########################################################################
    639842
     
    680883  esac
    681884  if test -z "$use_blas"; then
    682     AC_CHECK_LIB(blas,dgemm,[use_blas=-lblas;
    683                              LIBS="-lblas $LIBS";
    684                              IPADDLIBS="-lblas $IPADDLIBS"],[])
     885    # Probably the blas library requires the Fortran libraries, so add
     886    # them for this test.  They are added at the end anyway
     887    AC_F77_FUNC(daxpy,cdaxpy)
     888    SAVE_LIBS="$LIBS"
     889    LIBS="$LIBS $FLIBS"
     890    AC_CHECK_LIB(blas,$cdaxpy,[use_blas=-lblas;
     891                               LIBS="-lblas $SAVE_LIBS";
     892                               IPADDLIBS="-lblas $IPADDLIBS"],
     893                              [LIBS="$SAVE_LIBS"])
    685894  fi
    686895  if test -z "$use_blas"; then
     
    757966         [AC_MSG_CHECKING([for $1 in $use_hsl])
    758967          use_$2=
    759           AC_TRY_LINK([],[      call $1()],
    760                          [AC_DEFINE(HAVE_$2,1,[Define to 1 if $2 is available]) AC_MSG_RESULT([yes]); use_$2=yes],
    761                          [AC_MSG_RESULT([no])])])
     968          AC_F77_FUNC($1,cfunc)
     969          AC_TRY_LINK([extern "C" {void $cfunc();}],[$cfunc()],
     970                      [AC_DEFINE(HAVE_$2,1,[Define to 1 if $2 is available])
     971                       AC_MSG_RESULT([yes]); use_$2=yes],
     972                      [AC_MSG_RESULT([no]); use_$2=no])])
     973
    762974AC_DEFUN([MY_CHECK_HSLFILE],
    763975         [AC_CHECK_FILE([$hslsrcdir/$1.f],
    764976                        [AC_DEFINE(HAVE_$2,1,[Define to 1 if $2 is available]) use_$2=BUILD],
    765                         [use_$2=])])
     977                        [use_$2=no])])
    766978
    767979AC_MSG_NOTICE([Checking for Harwell subroutine library])
     
    781993    else
    782994      AC_MSG_RESULT(no)
    783       AC_DEFINE(OLD_MA27,[],
    784                 [Define to 1 if MA27 is given in the old, non-threadsafe version])
     995      AC_MSG_ERROR([Please obtain the threadsafe (newer) version of MA27])
    785996    fi
    786997  fi
    787998  MY_CHECK_HSLFILE(mc19ad,MC19)
    788999else
    789   LIBS="$use_hsl $LIBS"
     1000  SAVE_LIBS="$LIBS"
     1001  LIBS="$use_hsl $LIBS $FLIBS"
    7901002  IPADDLIBS="$use_hsl $IPADDLIBS"
    7911003  MY_CHECK_HSL([ma27ad],[MA27])
    7921004  if test "$use_MA27" = "yes"; then
    7931005    AC_MSG_CHECKING([whether MA27 is threadsafe])
    794     AC_TRY_LINK([],[      call MA27UD()],
    795                    [AC_MSG_RESULT(yes)],
    796                    [AC_MSG_RESULT(no)
    797                     AC_MSG_ERROR([Please obtain the threadsafe (newer) version of MA27])])
     1006    AC_F77_FUNC(ma27ud, cfunc)
     1007    AC_TRY_LINK([extern "C" {void $cfunc();}],[$cfunc],
     1008                [AC_MSG_RESULT(yes)],
     1009                [AC_MSG_RESULT(no)
     1010                 AC_MSG_ERROR([Please obtain the threadsafe (newer) version of MA27])])
    7981011  fi
    7991012  MY_CHECK_HSL([mc19ad],[MC19])
    800 fi
    801 
    802 # Try to make sure the correct FD05 routine is there (if needed)
    803 if test "$use_MA48" = BUILD || test "$use_MA57" = BUILD; then
    804   AC_CHECK_FILE([$hslsrcdir/fd05ad.f],[use_FD05="fd05ad.f"],[use_FD05=])
    805   if test -z "$use_FD05"; then
    806     case $build in
    807       rs6000-* | powerpc*)
    808                 use_FD05="fd05adj.f";;
    809       vax-*)    use_FD05="fd05adv.f";;
    810       hp*)      use_FD05="fd05adh.f";;
    811       *-osf*)   use_FD05="fd05ada.f";;
    812       *ymp*)    use_FD05="fd05adc.f";;
    813       *)        use_FD05="fd05ads.f";;
    814     esac
    815     AC_MSG_WARN([The file `fd05ad.f' is not provided.  My guess for this system is that you should use `$use_FD05', but you better verify this!!!])
    816     AC_CHECK_FILE([$hslsrcdir/$use_FD05],
    817                   [],[AC_MSG_ERROR([File $use_FD05 not found])])
    818     AC_CONFIG_LINKS([Extern/HSL/fd05ad.f:Extern/HSL/$use_FD05])
    819   fi
     1013  LIBS="$use_hsl $SAVE_LIBS"
    8201014fi
    8211015
     
    8261020AC_ARG_WITH([pardiso],
    8271021            AC_HELP_STRING([--with-pardiso],
    828                            [specify Pardiso library]),
     1022                           [specify Pardiso library (unsupported)]),
    8291023            [use_pardiso=$withval], [use_pardiso=no])
    8301024
     
    8401034
    8411035  AC_DEFINE(HAVE_PARDISO,1,
    842             [Define to 1 if Pardiso is available])
     1036            [Define to 1 if Pardiso is available (unsupported)])
    8431037fi
    8441038
     
    8491043AC_ARG_WITH([taucs],
    8501044            AC_HELP_STRING([--with-taucs],
    851                            [specify TAUCS library and dependencies]),
     1045                           [specify TAUCS library and dependencies (unsupported)]),
    8521046            [use_taucs=$withval], [use_taucs=no])
    8531047
     
    8571051
    8581052  AC_DEFINE(HAVE_TAUCS,1,
    859             [Define to 1 if TAUCS is available])
     1053            [Define to 1 if TAUCS is available (unsupported)])
    8601054
    8611055  AC_ARG_VAR(TAUCS_INCFLAGS,[Flags for including taucs header files])
     
    8631057fi
    8641058
    865 AC_LANG_POP(Fortran 77)
     1059# Check if at least one linear solver was found
     1060
     1061AC_ARG_ENABLE([distconf],,
     1062  [case "${enableval}" in
     1063    yes) distconf=true ;;
     1064    no)  distconf=false ;;
     1065    *) AC_MSG_ERROR(bad value ${enableval} for --enable-distconf) ;;
     1066  esac],[distconf=false])
     1067
     1068if test "$use_MA27" = "no" -a "$use_pardiso" = "no" -a "$use_taucs" = no; then
     1069  if test "$distconf" = false; then
     1070    AC_MSG_ERROR("No linear solver (such as MA27) available")
     1071  fi
     1072fi
    8661073
    8671074# For the remaining tests we need to include FLIBS into LIBS, so that
     
    8721079# AMPL SOLVER LIBRARY #
    8731080#######################
    874 
    875 AC_LANG_PUSH(C)
    8761081
    8771082asldir=Extern/ASL/solvers
     
    9251130    ASLMAKEFLAGS="CFLAGS=\"$bla $asladdcflags\""
    9261131
    927     if test $USE_MAINTAINER_MODE = 'yes'; then
    928       AC_MSG_WARN([Assuming that maintainer mode is only used for GNU make])
     1132    AC_MSG_CHECKING([whether $am_make is the GNU make])
     1133    if $am_make -v | grep GNU >&5 ; then
     1134      AC_MSG_RESULT([yes])
    9291135      ASLMAKEFLAGS="-j 1 $ASLMAKEFLAGS"
    9301136    else
    931       AC_MSG_CHECKING([whether $am_make understands the `-j 1' flag])
    932       AC_LANG_CONFTEST([[bladfaoekja:]])
    933       if ($am_make -f conftest.c -j 1 bladfaoekja >&5) 2>&5 ; then
    934         AC_MSG_RESULT([yes])
    935         ASLMAKEFLAGS="-j 1 $ASLMAKEFLAGS"
    936       else
    937         AC_MSG_RESULT([no])
    938         AC_MSG_CHECKING([whether $am_make understands the `-J 1' flag])
    939         if ($am_make -f conftest.c -J 1 bladfaoekja >&5) 2>&5 ; then
    940           AC_MSG_RESULT([yes])
    941           ASLMAKEFLAGS="-J 1 $ASLMAKEFLAGS"
    942         else
    943           AC_MSG_RESULT([no])
    944         fi
    945       fi
     1137      AC_MSG_RESULT([yes])
    9461138    fi
     1139
     1140#    if test $USE_MAINTAINER_MODE = 'yes'; then
     1141#      AC_MSG_WARN([Assuming that maintainer mode is only used for GNU make])
     1142#      ASLMAKEFLAGS="-j 1 $ASLMAKEFLAGS"
     1143#    else
     1144#      AC_LANG_PUSH(Fortran 77)
     1145#      AC_MSG_CHECKING([whether $am_make understands the `-j 1' flag])
     1146#      AC_LANG_CONFTEST([[bladfaoekja:]])
     1147#      if ($am_make -f conftest.c -j 1 bladfaoekja >&5) 2>&5 ; then
     1148#        AC_MSG_RESULT([yes])
     1149#        ASLMAKEFLAGS="-j 1 $ASLMAKEFLAGS"
     1150#      else
     1151#        AC_MSG_RESULT([no])
     1152#        AC_MSG_CHECKING([whether $am_make understands the `-J 1' flag])
     1153#        if ($am_make -f conftest.c -J 1 bladfaoekja >&5) 2>&5 ; then
     1154#          AC_MSG_RESULT([yes])
     1155#          ASLMAKEFLAGS="-J 1 $ASLMAKEFLAGS"
     1156#        else
     1157#          AC_MSG_RESULT([no])
     1158#        fi
     1159#      fi
     1160#      AC_LANG_POP(Fortran 77)
     1161#    fi
    9471162  fi
    9481163  ASLMAKEFILECMDS="sed 's/ar \$\$(ARFLAGS)/$AR $ARFLAGS/' makefile.u | sed 's/ar ruv/$AR $ARFLAGS/' "
     
    9621177fi
    9631178
    964 AC_LANG_POP(C)
     1179AC_LANG_POP(C++)
    9651180
    9661181######################################
     
    10451260AM_CONDITIONAL([BUILDHSLDIR],[test "$use_hsl" = BUILD])
    10461261
     1262AM_CONDITIONAL([HAVE_MA27],[test ! "$use_MA27" = no])
     1263AM_CONDITIONAL([HAVE_MC19],[test ! "$use_MC19" = no])
    10471264AM_CONDITIONAL([HAVE_PARDISO],[test ! "$use_pardiso" = no])
    10481265AM_CONDITIONAL([HAVE_TAUCS],[test ! "$use_taucs" = no])
  • branches/dev/inc/config.h.in

    r438 r465  
    6666#undef HAVE_MEMORY_H
    6767
    68 /* Define to 1 if Pardiso is available */
     68/* Define to 1 if Pardiso is available (unsupported) */
    6969#undef HAVE_PARDISO
    7070
     
    9393#undef HAVE_SYS_TYPES_H
    9494
    95 /* Define to 1 if TAUCS is available */
     95/* Define to 1 if TAUCS is available (unsupported) */
    9696#undef HAVE_TAUCS
    9797
     
    107107/* Define to be the name of C-function for NaNInf check */
    108108#undef MY_C_FINITE
    109 
    110 /* Define to 1 if MA27 is given in the old, non-threadsafe version */
    111 #undef OLD_MA27
    112109
    113110/* Name of package */
Note: See TracChangeset for help on using the changeset viewer.