From 7b179cb44f52808208b7bcf82e7b48b937beab65 Mon Sep 17 00:00:00 2001 From: Dave Goodwin Date: Mon, 18 Feb 2008 04:04:06 +0000 Subject: [PATCH] *** empty log message *** --- .cvsignore | 3 ++ CMakeLists.txt | 49 +++++++++++++----------- Cantera/.cvsignore | 2 + Cantera/CMakeLists.txt | 13 ++++++- Cantera/clib/src/CMakeLists.txt | 7 +--- Cantera/cmake_install.cmake | 4 +- Cantera/cxx/.cvsignore | 2 + Cantera/cxx/CMakeLists.txt | 2 + Cantera/cxx/cmake_install.cmake | 3 +- Cantera/cxx/demos/.cvsignore | 2 + Cantera/cxx/demos/CMakeLists.txt | 13 +++++++ Cantera/cxx/demos/flamespeed.cpp | 1 + Cantera/cxx/include/.cvsignore | 2 + Cantera/cxx/include/CMakeLists.txt | 8 ++++ Cantera/cxx/include/Cantera.h | 4 ++ Cantera/cxx/include/IdealGasMix.h | 15 +++++++- Cantera/cxx/src/.cvsignore | 2 + Cantera/cxx/src/CMakeLists.txt | 4 +- Cantera/cxx/src/importPhase.cpp | 2 + Cantera/src/.cvsignore | 2 + Cantera/src/base/.cvsignore | 2 + Cantera/src/base/CMakeLists.txt | 9 +++-- Cantera/src/equil/CMakeLists.txt | 1 + Cantera/src/kinetics/.cvsignore | 2 + Cantera/src/kinetics/CMakeLists.txt | 3 +- Cantera/src/numerics/.cvsignore | 2 + Cantera/src/numerics/CMakeLists.txt | 5 ++- Cantera/src/numerics/ODE_integrators.cpp | 1 + Cantera/src/oneD/.cvsignore | 2 + Cantera/src/oneD/CMakeLists.txt | 1 + Cantera/src/spectra/.cvsignore | 2 + Cantera/src/spectra/CMakeLists.txt | 1 + Cantera/src/thermo/.cvsignore | 2 + Cantera/src/thermo/CMakeLists.txt | 1 + Cantera/src/transport/.cvsignore | 2 + Cantera/src/transport/CMakeLists.txt | 1 + Cantera/src/zeroD/.cvsignore | 2 + Cantera/src/zeroD/CMakeLists.txt | 1 + config.cmake | 14 ++++--- config_cantera.cmake | 22 +++++++++++ ext/.cvsignore | 3 ++ ext/CMakeLists.txt | 8 ++++ ext/cvode/.cvsignore | 2 + ext/f2c_blas/.cvsignore | 1 + ext/f2c_blas/CMakeLists.txt | 1 + ext/f2c_lapack/CMakeLists.txt | 2 +- ext/f2c_libs/.cvsignore | 4 +- ext/f2c_math/.cvsignore | 2 + ext/f2c_math/CMakeLists.txt | 5 +-- 49 files changed, 191 insertions(+), 53 deletions(-) create mode 100644 Cantera/cxx/demos/CMakeLists.txt create mode 100644 Cantera/cxx/include/CMakeLists.txt create mode 100644 config_cantera.cmake diff --git a/.cvsignore b/.cvsignore index dbe9b4366..6490f3728 100644 --- a/.cvsignore +++ b/.cvsignore @@ -14,3 +14,6 @@ linux.my.32 .DS_Store win32 prepreconfig* +CMakeCache.txt +CMakeFiles +mt.mod diff --git a/CMakeLists.txt b/CMakeLists.txt index 526134c02..915661c8d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -3,46 +3,49 @@ PROJECT (Cantera) #---------------------------- # user-configurable settings #---------------------------- +INCLUDE (config_cantera.cmake) -INCLUDE (config.cmake) -#operating system -SET(os ${CMAKE_SYSTEM_NAME}) -if (os STREQUAL "Darwin") - SET(DARWIN 1) -endif (os STREQUAL "Darwin") +#---------------------------- +# Python +#---------------------------- +#if (PYTHON_CMD STREQUAL "default") +INCLUDE( FindPythonInterp ) +INCLUDE( FindPythonLibs) +SET( PYTHON_EXE ${PYTHON_EXECUTABLE} ) +#else (PYTHON_CMD STREQUAL "default") +# SET( PYTHON_EXE ${PYTHON_CMD} ) +#endif (PYTHON_CMD STREQUAL "default") -if (PYTHON_CMD STREQUAL "default") - INCLUDE( FindPythonInterp ) - SET( PYTHON_EXE ${PYTHON_EXECUTABLE} ) -else (PYTHON_CMD STREQUAL "default") - SET( PYTHON_EXE ${PYTHON_CMD} ) -endif (PYTHON_CMD STREQUAL "default") -# configuration +#--------------------------------------- +# configuration +#--------------------------------------- CONFIGURE_FILE ( ${PROJECT_SOURCE_DIR}/config.h_cmake.in ${PROJECT_BINARY_DIR}/config.h ) -INCLUDE_DIRECTORIES (${PROJECT_BINARY_DIR}/build/include/cantera) +#---------------------------------------- +# output paths +#---------------------------------------- SET (LIBRARY_OUTPUT_PATH - ${PROJECT_BINARY_DIR}/build/lib/${CMAKE_SYSTEM_PROCESSOR}-${CMAKE_SYSTEM_VERSION} CACHE PATH "Single directory for all libraries" + ${PROJECT_BINARY_DIR}/build/lib/${CMAKE_SYSTEM_PROCESSOR}-${CMAKE_SYSTEM_VERSION} CACHE PATH "Single directory for all libraries" ) SET (EXECUTABLE_OUTPUT_PATH - ${PROJECT_BINARY_DIR}/build/bin/${CMAKE_SYSTEM_PROCESSOR}-${CMAKE_SYSTEM_VERSION} CACHE PATH "Single directory for all executables" + ${PROJECT_BINARY_DIR}/build/bin/${CMAKE_SYSTEM_PROCESSOR}-${CMAKE_SYSTEM_VERSION} CACHE PATH "Single directory for all executables" ) MARK_AS_ADVANCED ( - LIBRARY_OUTPUT_PATH - EXECUTABLE_OUTPUT_PATH - ) + LIBRARY_OUTPUT_PATH + EXECUTABLE_OUTPUT_PATH + ) +INSTALL_FILES(/include/cantera/kernel FILES config.h) +INSTALL_FILES(/include/cantera FILES config.h) ADD_SUBDIRECTORY (ext) ADD_SUBDIRECTORY (Cantera) -SET ( CANTERA_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/Cantera/cxx/include ) - -#SET(CMAKE_INSTALL_PREFIX /Applications/Cantera/include ) -#INSTALL_FILES ( /cantera .h ${CANTERA_CXX_HEADERS} ) +SET(CMAKE_INSTALL_PREFIX /Applications/Cantera ) +INSTALL_FILES ( /include/cantera .h ${CANTERA_CXX_HEADERS} ) diff --git a/Cantera/.cvsignore b/Cantera/.cvsignore index b6b3514a1..1265f6661 100644 --- a/Cantera/.cvsignore +++ b/Cantera/.cvsignore @@ -1,3 +1,5 @@ Makefile cads ECR +CMakeFiles +cmake_install.cmake diff --git a/Cantera/CMakeLists.txt b/Cantera/CMakeLists.txt index 28ca2f267..82af06ff1 100644 --- a/Cantera/CMakeLists.txt +++ b/Cantera/CMakeLists.txt @@ -1,5 +1,16 @@ +#------------------------------------------------- +# Build the kernel +#------------------------------------------------- add_subdirectory(src) -add_subdirectory(cxx) + +#------------------------------------------------- +# Build clib +#------------------------------------------------- add_subdirectory(clib) +#------------------------------------------------- +# Build C++ user interface +#------------------------------------------------- +add_subdirectory(cxx) + diff --git a/Cantera/clib/src/CMakeLists.txt b/Cantera/clib/src/CMakeLists.txt index c2e797732..65db2c787 100644 --- a/Cantera/clib/src/CMakeLists.txt +++ b/Cantera/clib/src/CMakeLists.txt @@ -1,6 +1,7 @@ SET (CLIB_SRCS ct.cpp Storage.cpp ctsurf.cpp ctrpath.cpp ctreactor.cpp ctfunc.cpp ctxml.cpp ctonedim.cpp ctmultiphase.cpp ) +INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}) INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/Cantera/src/base) INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/Cantera/src/thermo) INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/Cantera/src/equil) @@ -10,12 +11,8 @@ INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/Cantera/src/transport) INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/Cantera/src/converters) INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/Cantera/src/zeroD) INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/Cantera/src/oneD) -INCLUDE_DIRECTORIES (${PROJECT_BINARY_DIR}/build/include/cantera) -#SET (LIBRARY_OUTPUT_PATH -# ${PROJECT_BINARY_DIR}/build/lib/${CMAKE_SYSTEM_PROCESSOR}-${CMAKE_SYSTEM -# VERSION} CACHE PATH "Single directory for all libraries" -# ) +# INCLUDE_DIRECTORIES (${PROJECT_BINARY_DIR}/build/include/cantera) ADD_LIBRARY ( clib ${CLIB_SRCS} ) diff --git a/Cantera/cmake_install.cmake b/Cantera/cmake_install.cmake index 3a31fd926..736794ad1 100644 --- a/Cantera/cmake_install.cmake +++ b/Cantera/cmake_install.cmake @@ -12,7 +12,7 @@ IF(NOT CMAKE_INSTALL_CONFIG_NAME) STRING(REGEX REPLACE "^[^A-Za-z0-9_]+" "" CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") ELSE(BUILD_TYPE) - SET(CMAKE_INSTALL_CONFIG_NAME "") + SET(CMAKE_INSTALL_CONFIG_NAME "Debug") ENDIF(BUILD_TYPE) MESSAGE(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") ENDIF(NOT CMAKE_INSTALL_CONFIG_NAME) @@ -30,7 +30,7 @@ ENDIF(NOT CMAKE_INSTALL_COMPONENT) IF(NOT CMAKE_INSTALL_LOCAL_ONLY) # Include the install script for each subdirectory. INCLUDE("/Users/dgg/dv/sf/cantera/Cantera/src/cmake_install.cmake") - INCLUDE("/Users/dgg/dv/sf/cantera/Cantera/cxx/cmake_install.cmake") INCLUDE("/Users/dgg/dv/sf/cantera/Cantera/clib/cmake_install.cmake") + INCLUDE("/Users/dgg/dv/sf/cantera/Cantera/cxx/cmake_install.cmake") ENDIF(NOT CMAKE_INSTALL_LOCAL_ONLY) diff --git a/Cantera/cxx/.cvsignore b/Cantera/cxx/.cvsignore index f3c7a7c5d..54fcf6a61 100644 --- a/Cantera/cxx/.cvsignore +++ b/Cantera/cxx/.cvsignore @@ -1 +1,3 @@ Makefile +CMakeFiles +cmake_install.cmake diff --git a/Cantera/cxx/CMakeLists.txt b/Cantera/cxx/CMakeLists.txt index cced027c7..32869e907 100644 --- a/Cantera/cxx/CMakeLists.txt +++ b/Cantera/cxx/CMakeLists.txt @@ -1,2 +1,4 @@ + +add_subdirectory( include ) add_subdirectory( src ) add_subdirectory( demos ) diff --git a/Cantera/cxx/cmake_install.cmake b/Cantera/cxx/cmake_install.cmake index 7bb6eb88c..53b031cef 100644 --- a/Cantera/cxx/cmake_install.cmake +++ b/Cantera/cxx/cmake_install.cmake @@ -12,7 +12,7 @@ IF(NOT CMAKE_INSTALL_CONFIG_NAME) STRING(REGEX REPLACE "^[^A-Za-z0-9_]+" "" CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") ELSE(BUILD_TYPE) - SET(CMAKE_INSTALL_CONFIG_NAME "") + SET(CMAKE_INSTALL_CONFIG_NAME "Debug") ENDIF(BUILD_TYPE) MESSAGE(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") ENDIF(NOT CMAKE_INSTALL_CONFIG_NAME) @@ -29,6 +29,7 @@ ENDIF(NOT CMAKE_INSTALL_COMPONENT) IF(NOT CMAKE_INSTALL_LOCAL_ONLY) # Include the install script for each subdirectory. + INCLUDE("/Users/dgg/dv/sf/cantera/Cantera/cxx/include/cmake_install.cmake") INCLUDE("/Users/dgg/dv/sf/cantera/Cantera/cxx/src/cmake_install.cmake") INCLUDE("/Users/dgg/dv/sf/cantera/Cantera/cxx/demos/cmake_install.cmake") diff --git a/Cantera/cxx/demos/.cvsignore b/Cantera/cxx/demos/.cvsignore index bdec01fee..2bc16f874 100644 --- a/Cantera/cxx/demos/.cvsignore +++ b/Cantera/cxx/demos/.cvsignore @@ -10,3 +10,5 @@ demos *.d .depends liquidvapor.xml +CMakeFiles +cmake_install.cmake diff --git a/Cantera/cxx/demos/CMakeLists.txt b/Cantera/cxx/demos/CMakeLists.txt new file mode 100644 index 000000000..44fce4f14 --- /dev/null +++ b/Cantera/cxx/demos/CMakeLists.txt @@ -0,0 +1,13 @@ +SET (COMBUST_SRCS combustor.cpp) + +INCLUDE_DIRECTORIES (${PROJECT_BINARY_DIR}/build/include) +INCLUDE_DIRECTORIES (${PROJECT_BINARY_DIR}) + +ADD_EXECUTABLE(combustor.x ${COMBUST_SRCS}) +TARGET_LINK_LIBRARIES ( combustor.x zeroD kinetics thermo ctbase tpx cvode ) + +ADD_EXECUTABLE(flamespeed.x flamespeed.cpp ) +TARGET_LINK_LIBRARIES ( flamespeed.x oneD equil transport kinetics numerics + thermo ctbase tpx ctmath ctlapack ctblas ctf2c ) + + diff --git a/Cantera/cxx/demos/flamespeed.cpp b/Cantera/cxx/demos/flamespeed.cpp index e11299f2d..7321ae22d 100644 --- a/Cantera/cxx/demos/flamespeed.cpp +++ b/Cantera/cxx/demos/flamespeed.cpp @@ -16,6 +16,7 @@ #include using namespace Cantera; +using namespace Cantera_CXX; int flamespeed(int np, void* p) { try { diff --git a/Cantera/cxx/include/.cvsignore b/Cantera/cxx/include/.cvsignore index 25ddf91d9..867b46681 100644 --- a/Cantera/cxx/include/.cvsignore +++ b/Cantera/cxx/include/.cvsignore @@ -1,2 +1,4 @@ Cantera_bt.mak Cantera.mak +CMakeFiles +cmake_install.cmake diff --git a/Cantera/cxx/include/CMakeLists.txt b/Cantera/cxx/include/CMakeLists.txt new file mode 100644 index 000000000..c073b848f --- /dev/null +++ b/Cantera/cxx/include/CMakeLists.txt @@ -0,0 +1,8 @@ +SET(CXX_H Cantera.h equilibrium.h IncompressibleSolid.h + kinetics.h onedim.h surface.h GRI30.h integrators.h + Metal.h PureFluid.h transport.h Edge.h + IdealGasMix.h Interface.h numerics.h + reactionpaths.h zerodim.h importPhase.h thermo.h + radiation.h spectra.h) + +INSTALL_FILES(/include/cantera FILES ${CXX_H}) diff --git a/Cantera/cxx/include/Cantera.h b/Cantera/cxx/include/Cantera.h index eec472747..8a6c95690 100755 --- a/Cantera/cxx/include/Cantera.h +++ b/Cantera/cxx/include/Cantera.h @@ -7,6 +7,10 @@ #define CANTERA_APP #endif +namespace Cantera_CXX{ } + +using namespace Cantera_CXX; + #include "kernel/ct_defs.h" // some useful functions diff --git a/Cantera/cxx/include/IdealGasMix.h b/Cantera/cxx/include/IdealGasMix.h index bd840fab7..590c18568 100644 --- a/Cantera/cxx/include/IdealGasMix.h +++ b/Cantera/cxx/include/IdealGasMix.h @@ -22,19 +22,28 @@ namespace Cantera_CXX { m_ok(false), m_r(0) { m_r = Cantera::get_XML_File(infile); + m_id = id; if (id == "-") id = ""; m_ok = Cantera::buildSolutionFromXML(*m_r, - id, "phase", this, this); + m_id, "phase", this, this); if (!m_ok) throw Cantera::CanteraError("IdealGasMix", "Cantera::buildSolutionFromXML returned false"); } IdealGasMix(Cantera::XML_Node& root, - std::string id) : m_ok(false), m_r(0) { + std::string id) : m_ok(false), m_r(&root), m_id(id) { m_ok = Cantera::buildSolutionFromXML(root, id, "phase", this, this); } + + IdealGasMix(const IdealGasMix& other) : m_ok(false), + m_r(other.m_r), + m_id(other.m_id) { + m_ok = Cantera::buildSolutionFromXML(*m_r, m_id, + "phase", this, this); + } + virtual ~IdealGasMix() {} @@ -46,9 +55,11 @@ namespace Cantera_CXX { return s; } + protected: bool m_ok; Cantera::XML_Node* m_r; + std::string m_id; private: }; diff --git a/Cantera/cxx/src/.cvsignore b/Cantera/cxx/src/.cvsignore index b431c8461..a45e62ea8 100644 --- a/Cantera/cxx/src/.cvsignore +++ b/Cantera/cxx/src/.cvsignore @@ -2,3 +2,5 @@ Makefile .depends SunWS_cache *.d +CMakeFiles +cmake_install.cmake diff --git a/Cantera/cxx/src/CMakeLists.txt b/Cantera/cxx/src/CMakeLists.txt index 5b43447fb..4f5e4bdec 100644 --- a/Cantera/cxx/src/CMakeLists.txt +++ b/Cantera/cxx/src/CMakeLists.txt @@ -1,6 +1,6 @@ SET ( CXX_SRCS importPhase.cpp ) -INCLUDE_DIRECTORIES (${PROJECT_BINARY_DIR}/build/include/cantera) -INCLUDE_DIRECTORIES (${PROJECT_BINARY_DIR}/build/include) +INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}) +INCLUDE_DIRECTORIES (${PROJECT_BINARY_DIR}/build/include/cantera/kernel) ADD_LIBRARY (ctcxx ${CXX_SRCS}) diff --git a/Cantera/cxx/src/importPhase.cpp b/Cantera/cxx/src/importPhase.cpp index 8c2afd053..3bff771bb 100644 --- a/Cantera/cxx/src/importPhase.cpp +++ b/Cantera/cxx/src/importPhase.cpp @@ -8,6 +8,8 @@ #include "ThermoFactory.h" //#include "../include/importPhase.h" +namespace Cantera {} + namespace Cantera_CXX { Cantera::ThermoPhase* importPhase(std::string infile, std::string id) { diff --git a/Cantera/src/.cvsignore b/Cantera/src/.cvsignore index 2dc2660ec..67da6443b 100644 --- a/Cantera/src/.cvsignore +++ b/Cantera/src/.cvsignore @@ -5,4 +5,6 @@ ctdir.h config.h *.d SunWS_cache +CMakeFiles +cmake_install.cmake diff --git a/Cantera/src/base/.cvsignore b/Cantera/src/base/.cvsignore index 10fd288cc..c25f986cb 100644 --- a/Cantera/src/base/.cvsignore +++ b/Cantera/src/base/.cvsignore @@ -1,3 +1,5 @@ *.d Makefile .depends +CMakeFiles +cmake_install.cmake diff --git a/Cantera/src/base/CMakeLists.txt b/Cantera/src/base/CMakeLists.txt index e6c5b8414..9e2b6d60d 100644 --- a/Cantera/src/base/CMakeLists.txt +++ b/Cantera/src/base/CMakeLists.txt @@ -1,9 +1,12 @@ + +INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}) + SET (CTBASE_SRCS misc.cpp ct2ctml.cpp ctml.cpp plots.cpp stringUtils.cpp xml.cpp clockWC.cpp) ADD_LIBRARY(ctbase ${CTBASE_SRCS}) -SET (CTBASE_H global.h ct2ctml.h ctml.h - ct_defs.h ctexceptions.h logger.h XML_Writer.h - ctml.h plots.h stringUtils.h xml.h config.h utilities.h +SET (CTBASE_H global.h ctml.h + ct_defs.h ctexceptions.h logger.h XML_Writer.h + ctml.h plots.h stringUtils.h xml.h utilities.h Array.h vec_functions.h global.h FactoryBase.h clockWC.h ) INSTALL_FILES(/include/cantera/kernel FILES ${CTBASE_H}) diff --git a/Cantera/src/equil/CMakeLists.txt b/Cantera/src/equil/CMakeLists.txt index 35d1202d6..a627c2584 100644 --- a/Cantera/src/equil/CMakeLists.txt +++ b/Cantera/src/equil/CMakeLists.txt @@ -1,6 +1,7 @@ SET (EQUIL_SRCS BasisOptimize.cpp ChemEquil.cpp MultiPhase.cpp MultiPhaseEquil.cpp equilibrate.cpp ) +INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}) INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/Cantera/src/base) INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/Cantera/src/thermo) INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/Cantera/src/numerics) diff --git a/Cantera/src/kinetics/.cvsignore b/Cantera/src/kinetics/.cvsignore index 10fd288cc..c25f986cb 100644 --- a/Cantera/src/kinetics/.cvsignore +++ b/Cantera/src/kinetics/.cvsignore @@ -1,3 +1,5 @@ *.d Makefile .depends +CMakeFiles +cmake_install.cmake diff --git a/Cantera/src/kinetics/CMakeLists.txt b/Cantera/src/kinetics/CMakeLists.txt index de00782dd..ef97e31a7 100644 --- a/Cantera/src/kinetics/CMakeLists.txt +++ b/Cantera/src/kinetics/CMakeLists.txt @@ -3,6 +3,7 @@ SET (KINETICS_SRCS importKinetics.cpp GRI_30_Kinetics.cpp KineticsFactory.cpp solveSP.cpp InterfaceKinetics.cpp ImplicitSurfChem.cpp Group.cpp ReactionPath.cpp) +INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}) INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/Cantera/src/base) INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/Cantera/src/thermo) INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/Cantera/src/numerics) @@ -18,4 +19,4 @@ SET(KINETICS_H importKinetics.h GRI_30_Kinetics.h KineticsFactory.h RxnRates.h Enhanced3BConc.h StoichManager.h solveSP.h InterfaceKinetics.h ImplicitSurfChem.h EdgeKinetics.h Group.h ReactionPath.h) -INSTALL_FILES(/include/cantera/kernel FILES ${KINETICS_H}) +INSTALL_FILES(/cantera/kernel FILES ${KINETICS_H}) diff --git a/Cantera/src/numerics/.cvsignore b/Cantera/src/numerics/.cvsignore index 756fc5489..70043a00d 100644 --- a/Cantera/src/numerics/.cvsignore +++ b/Cantera/src/numerics/.cvsignore @@ -1,3 +1,5 @@ Makefile *.d .depends +CMakeFiles +cmake_install.cmake diff --git a/Cantera/src/numerics/CMakeLists.txt b/Cantera/src/numerics/CMakeLists.txt index f1a883089..1da3015c9 100644 --- a/Cantera/src/numerics/CMakeLists.txt +++ b/Cantera/src/numerics/CMakeLists.txt @@ -2,14 +2,15 @@ SET (NUMERICS_SRCS DenseMatrix.cpp funcs.cpp Func1.cpp ODE_integrators.cpp BandMatrix.cpp DAE_solvers.cpp sort.cpp ) +INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}) INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/Cantera/src/base) ADD_LIBRARY(numerics ${NUMERICS_SRCS}) -TARGET_LINK_LIBRARIES (numerics ctbase) +TARGET_LINK_LIBRARIES (numerics ctbase cvode) SET(NUMERICS_H ArrayViewer.h CVode.h CVodesIntegrator.h DenseMatrix.h funcs.h ctlapack.h Func1.h FuncEval.h polyfit.h BandMatrix.h Integrator.h DAE_Solver.h ResidEval.h sort.h) -INSTALL_FILES(/include/cantera/kernel FILES ${NUMERICS_H}) +INSTALL_FILES( /include/cantera/kernel FILES ${NUMERICS_H}) diff --git a/Cantera/src/numerics/ODE_integrators.cpp b/Cantera/src/numerics/ODE_integrators.cpp index 8aaf4ad8b..841d57e4c 100644 --- a/Cantera/src/numerics/ODE_integrators.cpp +++ b/Cantera/src/numerics/ODE_integrators.cpp @@ -1,6 +1,7 @@ #include "ct_defs.h" #include "Integrator.h" +#define NO_SUNDIALS #ifdef NO_SUNDIALS #undef HAS_SUNDIALS #endif diff --git a/Cantera/src/oneD/.cvsignore b/Cantera/src/oneD/.cvsignore index 1e4e92b02..9f2590fd9 100644 --- a/Cantera/src/oneD/.cvsignore +++ b/Cantera/src/oneD/.cvsignore @@ -2,3 +2,5 @@ Makefile SunWS_cache *.d +CMakeFiles +cmake_install.cmake diff --git a/Cantera/src/oneD/CMakeLists.txt b/Cantera/src/oneD/CMakeLists.txt index 0d8fc6a91..63ed9d6ab 100644 --- a/Cantera/src/oneD/CMakeLists.txt +++ b/Cantera/src/oneD/CMakeLists.txt @@ -1,6 +1,7 @@ SET (ONED_SRCS MultiJac.cpp MultiNewton.cpp newton_utils.cpp OneDim.cpp StFlow.cpp boundaries1D.cpp refine.cpp Sim1D.cpp Domain1D.cpp ) +INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}) INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/Cantera/src/base) INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/Cantera/src/thermo) INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/Cantera/src/numerics) diff --git a/Cantera/src/spectra/.cvsignore b/Cantera/src/spectra/.cvsignore index 10fd288cc..c25f986cb 100644 --- a/Cantera/src/spectra/.cvsignore +++ b/Cantera/src/spectra/.cvsignore @@ -1,3 +1,5 @@ *.d Makefile .depends +CMakeFiles +cmake_install.cmake diff --git a/Cantera/src/spectra/CMakeLists.txt b/Cantera/src/spectra/CMakeLists.txt index c7cada4c7..9b8a58746 100644 --- a/Cantera/src/spectra/CMakeLists.txt +++ b/Cantera/src/spectra/CMakeLists.txt @@ -1,5 +1,6 @@ SET (SPECTRA_SRCS rotor.cpp LineBroadener.cpp spectralUtilities.cpp) +INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}) INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/Cantera/src/base) INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/Cantera/src/thermo) INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/Cantera/src/numerics) diff --git a/Cantera/src/thermo/.cvsignore b/Cantera/src/thermo/.cvsignore index 5ad47736c..a94bba261 100644 --- a/Cantera/src/thermo/.cvsignore +++ b/Cantera/src/thermo/.cvsignore @@ -7,3 +7,5 @@ PDSS_Refactor.txt WaterEps.cpp WaterEps.h .*swp +CMakeFiles +cmake_install.cmake diff --git a/Cantera/src/thermo/CMakeLists.txt b/Cantera/src/thermo/CMakeLists.txt index d5f96e269..abd385e16 100644 --- a/Cantera/src/thermo/CMakeLists.txt +++ b/Cantera/src/thermo/CMakeLists.txt @@ -7,6 +7,7 @@ SET (THERMO_SRCS State.cpp Elements.cpp Constituents.cpp Phase.cpp StoichSubstance.cpp PureFluidPhase.cpp LatticeSolidPhase.cpp LatticePhase.cpp) +INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}) INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/Cantera/src/base) ADD_LIBRARY(thermo ${THERMO_SRCS}) diff --git a/Cantera/src/transport/.cvsignore b/Cantera/src/transport/.cvsignore index b431c8461..a45e62ea8 100644 --- a/Cantera/src/transport/.cvsignore +++ b/Cantera/src/transport/.cvsignore @@ -2,3 +2,5 @@ Makefile .depends SunWS_cache *.d +CMakeFiles +cmake_install.cmake diff --git a/Cantera/src/transport/CMakeLists.txt b/Cantera/src/transport/CMakeLists.txt index e20c7273b..cfe392c18 100644 --- a/Cantera/src/transport/CMakeLists.txt +++ b/Cantera/src/transport/CMakeLists.txt @@ -1,6 +1,7 @@ SET (TRANSPORT_SRCS TransportFactory.cpp MultiTransport.cpp MixTransport.cpp MMCollisionInt.cpp SolidTransport.cpp DustyGasTransport.cpp) +INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}) INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/Cantera/src/base) INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/Cantera/src/thermo) INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/Cantera/src/numerics) diff --git a/Cantera/src/zeroD/.cvsignore b/Cantera/src/zeroD/.cvsignore index 2b86068ab..eeb7b40a7 100644 --- a/Cantera/src/zeroD/.cvsignore +++ b/Cantera/src/zeroD/.cvsignore @@ -2,3 +2,5 @@ Makefile SunWS_cache .depends *.d +CMakeFiles +cmake_install.cmake diff --git a/Cantera/src/zeroD/CMakeLists.txt b/Cantera/src/zeroD/CMakeLists.txt index 46999707c..b30aa2755 100644 --- a/Cantera/src/zeroD/CMakeLists.txt +++ b/Cantera/src/zeroD/CMakeLists.txt @@ -1,6 +1,7 @@ SET (ZEROD_SRCS Reactor.cpp ReactorBase.cpp FlowDevice.cpp Wall.cpp ReactorNet.cpp FlowReactor.cpp ConstPressureReactor.cpp ReactorFactory.cpp ) +INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}) INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/Cantera/src/base) INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/Cantera/src/thermo) INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/Cantera/src/numerics) diff --git a/config.cmake b/config.cmake index bd668a93f..e29ab0219 100755 --- a/config.cmake +++ b/config.cmake @@ -1,14 +1,16 @@ -OPTION(CANTERA_BUILD_FULL_PYTHON "Include support for using Cantera from Python?" ON) - +OPTION(CANTERA_BUILD_PYTHON_IFACE "Build the Python user interface?" ON) +OPTION(CANTERA_BUILD_CXX_IFACE "Build the C++ user interface?" ON) +OPTION(CANTERA_BUILD_F90_IFACE "Build the Fortran 90 user interface?" ON) +OPTION(CANTERA_BUILD_CXX_IFACE "Build the Matlab Toolbox?" OFF) OPTION(CANTERA_BUILD_WITH_F2C "Use f2c versions of 3rd party numerical routines" OFF) OPTION (CANTERA_BUILD_LAPACK 0) OPTION (CANTERA_HAVE_SUNDIALS 1) -SET( PYTHON_CMD ${PYTHON_EXE}) +# SET(PYTHON_CMD ${PYTHON_EXE}) -SET( CANTERA_VERSION "1.7.1") +SET(CANTERA_VERSION "1.7.1") SET( WITH_PURE_FLUIDS 1 ) @@ -18,6 +20,6 @@ SET( WITH_METAL 1 ) SET( WITH_STOICH_SUBSTANCE 1 ) -SET ( WITH_IDEAL_SOLUTIONS 1 ) +SET( WITH_IDEAL_SOLUTIONS 0 ) -SET (WITH_ELECTROLYTES 1 ) +SET(WITH_ELECTROLYTES 0 ) diff --git a/config_cantera.cmake b/config_cantera.cmake new file mode 100644 index 000000000..075d86bc3 --- /dev/null +++ b/config_cantera.cmake @@ -0,0 +1,22 @@ + +OPTION(BUILD_PYTHON_PACKAGE "Build the Python user interface?" ON) +OPTION(BUILD_CXX_INTERFACE "Build the C++ user interface?" ON) +OPTION(BUILD_F90_INTERFACE "Build the Fortran 90 user interface?" ON) +OPTION(BUILD_MATLAB_TOOLBOX "Build the Matlab Toolbox?" OFF) + +OPTION(CANTERA_BUILD_WITH_F2C "Use f2c versions of 3rd party numerical routines" ON) + +OPTION (BUILD_LAPACK "Build the lapack library?" 1) +OPTION (HAVE_SUNDIALS "Use Sundials from LLNL?" 0) + +# SET(PYTHON_CMD ${PYTHON_EXE}) + +SET(CANTERA_VERSION "1.7.2") + + +SET( WITH_PURE_FLUIDS 1 ) +SET( WITH_LATTICE_SOLID 1 ) +SET( WITH_METAL 1 ) +SET( WITH_STOICH_SUBSTANCE 1 ) +SET( WITH_IDEAL_SOLUTIONS 0 ) +SET(WITH_ELECTROLYTES 0 ) diff --git a/ext/.cvsignore b/ext/.cvsignore index f3c7a7c5d..3cc40bba2 100644 --- a/ext/.cvsignore +++ b/ext/.cvsignore @@ -1 +1,4 @@ Makefile +cmake_install.cmake +CMakeFiles +recipes diff --git a/ext/CMakeLists.txt b/ext/CMakeLists.txt index 245264987..42207b639 100644 --- a/ext/CMakeLists.txt +++ b/ext/CMakeLists.txt @@ -1,4 +1,12 @@ SET (CMAKE_C_FLAGS -DSkip_f2c_Undefs) + +INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/ext/f2c_libs ) + +add_subdirectory ( f2c_libs ) +add_subdirectory ( f2c_blas ) +add_subdirectory ( f2c_lapack ) +add_subdirectory ( f2c_math ) +add_subdirectory ( cvode ) add_subdirectory ( tpx ) diff --git a/ext/cvode/.cvsignore b/ext/cvode/.cvsignore index f3c7a7c5d..54fcf6a61 100644 --- a/ext/cvode/.cvsignore +++ b/ext/cvode/.cvsignore @@ -1 +1,3 @@ Makefile +CMakeFiles +cmake_install.cmake diff --git a/ext/f2c_blas/.cvsignore b/ext/f2c_blas/.cvsignore index 2f90591ed..bec77c334 100644 --- a/ext/f2c_blas/.cvsignore +++ b/ext/f2c_blas/.cvsignore @@ -1,3 +1,4 @@ *.d .depends Makefile +CMakeFiles diff --git a/ext/f2c_blas/CMakeLists.txt b/ext/f2c_blas/CMakeLists.txt index dca4e569e..e8b1644c7 100644 --- a/ext/f2c_blas/CMakeLists.txt +++ b/ext/f2c_blas/CMakeLists.txt @@ -5,6 +5,7 @@ dswap.c dsymm.c dsymv.c dsyr.c dsyr2.c dsyr2k.c dsyrk.c dtbmv.c dtbsv.c dtpmv.c dtpsv.c dtrmm.c dtrmv.c dtrsm.c dtrsv.c dzasum.c dznrm2.c idamax.c lsame.c xerbla.c ) +INCLUDE_DIRECTORIES ( ${PROJECT_SOURCE_DIR}/ext/f2c_libs ) ADD_LIBRARY(ctblas ${F2C_BLAS_SRCS}) diff --git a/ext/f2c_lapack/CMakeLists.txt b/ext/f2c_lapack/CMakeLists.txt index d6febc9c4..6b65c3df4 100644 --- a/ext/f2c_lapack/CMakeLists.txt +++ b/ext/f2c_lapack/CMakeLists.txt @@ -1,5 +1,5 @@ -SET (F2C_LAPACK_SRCS dgbtrf.c dgbtrs.c dgbsv.c +SET (F2C_LAPACK_SRCS dgbtrf.c dgbtrs.c dgbtf2.c dgbsv.c dgebd2.c dgebrd.c dgelq2.c dgelqf.c dgelss.c dgeqr2.c dgeqrf.c dgetf2.c dgetrf.c dgetri.c dgetrs.c dlabad.c dlabrd.c dlacpy.c dlamch.c dlange.c dlapy2.c dlarf.c dlarfb.c dlarfg.c dlarft.c dlartg.c dlas2.c dlascl.c dlaset.c diff --git a/ext/f2c_libs/.cvsignore b/ext/f2c_libs/.cvsignore index 8f6d076f4..18ca6e102 100644 --- a/ext/f2c_libs/.cvsignore +++ b/ext/f2c_libs/.cvsignore @@ -1,4 +1,4 @@ -tests +f2ctests Makefile arith.h signal1.h @@ -6,3 +6,5 @@ sysdep1.h makefile* arithchk.ilk f2c_arithchk.pdb +CMakeFiles +CMakeCache.txt diff --git a/ext/f2c_math/.cvsignore b/ext/f2c_math/.cvsignore index 67a3528c2..a21296dc2 100644 --- a/ext/f2c_math/.cvsignore +++ b/ext/f2c_math/.cvsignore @@ -1,3 +1,5 @@ Makefile .depends *.d +CMakeFiles +cmake_install.cmake diff --git a/ext/f2c_math/CMakeLists.txt b/ext/f2c_math/CMakeLists.txt index d2ad3d333..98fd72cb1 100644 --- a/ext/f2c_math/CMakeLists.txt +++ b/ext/f2c_math/CMakeLists.txt @@ -2,9 +2,8 @@ SET ( CTMATH_SRCS mach.cpp ddaspk.c dgbefa.c dgbsl.c dgefa.c dgesl.c dp1vlu.c dpcoef.c dpolft.c fdump.c j4save.c pcoef.c polfit.c pvalue.c xercnt.c xerhlt.c xermsg.c xerprn.c xersve.c xgetua.c printstring.c) -INCLUDE_DIRECTORIES ( ${PROJECT_BINARY_DIR} ) -INCLUDE_DIRECTORIES ( ${PROJECT_BINARY_DIR}/ext/f2c_libs ) -INCLUDE_DIRECTORIES ( ${PROJECT_BINARY_DIR}/build/include/cantera ) +INCLUDE_DIRECTORIES ( ${PROJECT_SOURCE_DIR} + ${PROJECT_SOURCE_DIR}/ext/f2c_libs ) ADD_LIBRARY( ctmath ${CTMATH_SRCS} )