Commit graph

334 commits

Author SHA1 Message Date
Ray Speth
145335880f [SCons] Move PCH-related files out of include to avoid installing them 2016-11-04 11:36:13 -04:00
Ray Speth
baa0a24905 [SCons] Fix permissions error when installing to stage directory 2016-11-02 21:37:42 -04:00
Ray Speth
2a8ac43308 [SCons] Add fmt.h to system.h and improve PCH dependency handling 2016-10-28 12:40:53 -04:00
Ray Speth
e3dfc35ca1 [SCons] Use precompiled header to speed up compilation with MSVC
Update Appveyor config to turn off debug info so PCH can be used
2016-10-28 12:05:46 -04:00
Ray Speth
cbcce07981 [SCons] Use precompiled header to speed up compilation with GCC/Clang 2016-10-27 19:59:35 -04:00
Ray Speth
7724c841a1 Handle _cantera.h header file produced by newer versions of Cython 2016-10-23 17:19:11 -04:00
Ray Speth
4b57ee3d4c [SCons/Doc] Formalize dependency on Boost 2016-10-22 19:03:20 -04:00
Ray Speth
89d0c5601f [Python] Add CanteraError class for execptions
Anything that raises a CanteraError in C++ will now raise CanteraError in
Python, instead of the more generic RuntimeError.

This change increases the required Cython version to 0.23 or newer.
2016-10-18 22:58:14 -04:00
Ray Speth
ad7a02d0e9 Add support for Sundials 2.7.0 2016-10-15 20:50:15 -04:00
Ray Speth
0c1eb4cd89 [Doc] Include summaries of each example in index of Matlab examples 2016-10-14 17:06:45 -04:00
Ray Speth
a35a0cb510 [Doc] Include summaries of each example in index of Python examples 2016-10-14 17:06:45 -04:00
Bryan W. Weber
5435af2d9e
Fix configuration Fortran environment
SCons was using gfortran to build and ifort to link
when ifort was specified in cantera.conf. This ensures
the check function has the correct Fortran in the
environment to compile the test.
2016-08-15 21:40:24 -04:00
Ray Speth
e70e5bf5be [SCons] Fix default Python module installation path on Debian/Ubuntu
If Cantera is being installed to /usr/local, then on Debian-based distros, we
want the Python module to end up in /usr/local/lib/pythonX.Y/dist-packages,
which is actually the default behavior. However, /usr/local/... is *not* the
default installation prefix for Python modules on some other distros (On Fedora,
at least, it's /usr/) so using the default needs to be conditioned on the actual
distro.
2016-07-29 14:52:42 -04:00
Ray Speth
cc2725ca37 Bump version to 2.3.0a3 2016-07-27 19:00:02 -04:00
Ray Speth
feca44aa2d [SCons] Install to lib64 directory on operating systems that use this
Resolves #318.
2016-07-25 14:42:46 -04:00
Ray Speth
908e620325 [SCons] Generate versioned shared objects for cantera_shared.so
See #318.
2016-07-25 14:42:45 -04:00
Ray Speth
3261b4108a [SCons] Link Fortran sample programs to the correct standard library 2016-07-20 18:43:41 -04:00
Ray Speth
91161f0bc2 [SCons] Make check for Fortran compiler more robust
If we can compile and run an F90 program that is sufficient. The
previous test required the C compiler to be able to link to the
Fortran standard library, which isn't actually necessary, and would
fail in some cases (such as brew-installed gfortran on OS X).
2016-07-19 18:31:17 -04:00
Ray Speth
8ef4f6445f [SCons] Validate values of target_arch 2016-07-19 17:41:16 -04:00
Ray Speth
bdb088da53 [SCons] Check for numpy before deciding to build the Python3 module 2016-07-13 17:11:34 -04:00
Ray Speth
97e84aaf9b [SCons] Fix auto-update of fmt submodule 2016-07-05 14:25:28 -04:00
Ray Speth
d4ddabc76c Use system-installed version of fmt library if available
Resolves #348.
2016-07-05 14:17:01 -04:00
Ray Speth
df43a474cd [SCons] Modify build system to exclude unused Fortran and f2c code
Cantera no longer requires BLAS / LAPACK (but can use them if available), so it
is never necessary to compile any of the external Fortran or f2c-converted code.
2016-05-14 22:00:22 -04:00
Ray Speth
bf67cce25f [SCons] Make Eigen available to Cantera
Check for a system copy of Eigen, and if that is not found, install
Eigen's headers with the Cantera headers. Add the header 'eigen_dense.h'
to provide a single header to include from other locations.
2016-05-14 21:56:17 -04:00
Ray Speth
41ae065a6e Use Sundials to solve BandMatrix instead of using internal LAPACK 2016-05-14 21:56:17 -04:00
Ray Speth
4eea27b0a4 Update cppformat (now fmt)
Update to current master (pre-3.0), and change remote repository to reflect name
change from cppformat to fmt. Needed to be updated now because one of the
submodules referenced in the 1.1.0 release no longer exists due to the change in
the Github organization name from cppformat to fmtlib.
2016-05-03 15:03:52 -04:00
Ray Speth
ec38f58e73 [SCons] Install data file for LiC6 electrode example 2016-04-06 22:24:26 -04:00
Ray Speth
60eed786fa [SCons] Fix fallback behavior with explicitly-specifed Fortran compiler
If the user has explicitly specified a Fortran compiler, we shouldn't fall back
to using a different one if the specified one cannot be found.
2016-04-05 12:52:01 -04:00
Ray Speth
6d91b44ed6 [SCons] Fix setting of prefix when building Debian packages
'prefix' shouldn't be changed after it's used, but should be set by the
debian/rules script
2016-04-01 16:25:58 -04:00
Ray Speth
2e56f6dee3 [SCons] Allow compiler options which contain commas
Compiler options such as '-Wl,-z,rlero' were incorrectly being split into
multiple options by SCons. Compiler options must now be separated by spaces when
specified on the SCons command line.

Fixes #320
2016-03-27 20:21:56 -04:00
Bryan W. Weber
db769a47c7 Bump in-progress version to 2.3.0a2 2016-02-06 07:44:10 -05:00
Bryan W. Weber
5b483a8c22 The cantera_version should not be an option 2016-02-06 07:44:10 -05:00
Ray Speth
b4a1fb2db1 [SCons/Numerics] Use ext/sundials if system Sundials not installed 2015-11-23 16:53:20 -05:00
Ray Speth
4977b2773f [SCons] Fix documentation of 'optimize' option 2015-11-18 12:59:16 -05:00
Ray Speth
e58bd09859 Eliminate debug_verbose option and DEBUG_MODE macro
Vebose printing can always be enabled at runtime by setting flags on various
classes.
2015-11-18 11:02:30 -05:00
Ray Speth
592a40a1de [SCons] Remove unused configuration options 2015-10-29 22:26:52 -04:00
Ray Speth
c983d730a6 [SCons] Remove 'include/cantera/ext' when running 'scons clean' 2015-10-29 12:27:47 -04:00
Ivan Mitrichev
02fc127c13 Cython minimum version is 0.19
Also, setuptools is required to build/install the python module.

Resolves #302.
2015-10-25 14:15:45 -04:00
Ray Speth
f910f8c3ee Bump development version to 2.3.0a1 2015-10-24 20:21:32 -04:00
Ray Speth
87aaa6ad1e Use math functions from C++11 standard library 2015-10-19 13:14:40 -04:00
Ray Speth
ffab95f3ef Automatically check out cppformat submodule if needed 2015-10-18 18:54:09 -04:00
Ray Speth
4a411b76bb Use git submodule for googletest 2015-10-18 18:54:09 -04:00
Ray Speth
e094967ebb [Doc] Update version requirements 2015-10-17 22:35:37 -04:00
Ray Speth
c8e380d88c [SCons] Invalid command line arguments set a non-zero return code 2015-10-17 19:00:18 -04:00
Ray Speth
7c9bc364f5 [SCons] Add helpful error message when cppformat submodule is missing 2015-10-17 18:58:50 -04:00
Ray Speth
f9375e1a09 Use locks/mutexes from the standard library instead of Boost.Thread
This eliminates the need to link against any of the compiled Boost libraries,
and means that we can always build in thread-safe mode
2015-10-17 18:58:50 -04:00
Ray Speth
f335350c35 Always use std::shared_ptr
Since we compile as c++11, std::shared_ptr is guaranteed to exist.
2015-10-14 18:45:23 -04:00
Ray Speth
6f4c73c9d4 [SCons] Change compiler flag to work with GCC 4.6 2015-10-14 18:45:23 -04:00
Ray Speth
c88aaf9fc2 [SCons] Optionally show contents of config.log after errors
This makes it easier to debug issues that occur on automated builds where
the config.log file is hard to access directly.
2015-10-14 18:45:22 -04:00
Ray Speth
e5b5d591b0 Fix compilation errors in C++11 mode under Cygwin 2015-10-14 18:45:22 -04:00