Commit graph

263 commits

Author SHA1 Message Date
Ray Speth
fbe8a7cd3f Make common interface to shared_ptr available
Use configure-time checks to find an available implementation of shared_ptr from
the standard library (C++11), TR1 (C++03), or Boost.
2014-11-01 00:13:39 +00:00
Ray Speth
044235c065 [SCons] Remove unnecessary uses of pjoin 2014-10-08 16:54:49 +00:00
Ray Speth
c0dc7bb922 [SCons] Setting 'msvc_version' implies 'toolchain=msvc' 2014-09-29 19:13:18 +00:00
Ray Speth
dd9bb68eaf [SCons] Clean up additional data files 2014-09-23 02:20:47 +00:00
Bryan W. Weber
73fa1a17a0 Fix bdist complains about invalid version number 2014-08-28 22:06:05 +00:00
Thomas Fiala
dfab2edb3d Properly clean up after a build.
Fixes Issue 232.
2014-08-26 22:04:55 +00:00
Harry Moffat
08fe85b4cd Check for fenv.h availability. Apparently, MS visual doesn't have C99 support before 2013, so previous commit didn't compile on MSVISUAL.
If fenv.h not available, program now error exits if fenv functions are requested.
2014-08-26 17:55:44 +00:00
Ray Speth
85abe2e008 [SCons] Update documentation for SCons commands 2014-08-25 20:02:34 +00:00
Bryan W. Weber
eeab08d683 Allow auto conversion of Python examples on Windows
3to2 cannot be called as an executable on Windows, but it can be called
as a script. Assume that the 3to2 script is installed in
PYTHONROOT\Scripts, which is the default for installation by pip.
2014-08-25 18:41:56 +00:00
Ray Speth
28d389b120 [Scons] On Windows, print compilation architecture during build process
This helps in debugging certain compilation / linker issues
2014-07-30 16:59:11 +00:00
Ray Speth
6c3867ca79 [SCons] Let SCons choose the default version of MSVC
The near-requirement of using the same version of MSVC as Python was compiled
with has been relaxed by the move to compiling the Python extension in SCons
rather than letting Distutils do it.
2014-07-25 18:33:02 +00:00
Ray Speth
4f3dd0624f [SCons] Fix build errors when path to Python contains spaces 2014-07-25 18:32:54 +00:00
Bryan W. Weber
f4041d6fb2 [Doc] Add the ability to pseudo-autodocument MATLAB code to the SConscript file 2014-07-18 14:32:53 +00:00
Ray Speth
2ee3edbe39 [SCons] Move man pages to 'share'
This fixes compatibility with Homebrew. With the default prefix '/usr/local',
this puts the man pages in /usr/local/share/man/man1/, which is usually on the
man path on other OSes as well.
2014-05-29 18:34:49 +00:00
Ray Speth
75e9d10bdf [SCons] Print path to Python interpreter when building 2014-05-08 23:02:07 +00:00
Ray Speth
8cfac61a83 Use configuration checks to determine names for 'isnan' and 'finite' 2014-05-03 17:39:33 +00:00
Ray Speth
0a1909e682 [SCons] Print config.log when SCons is in verbose mode 2014-05-03 17:39:19 +00:00
Ray Speth
4e68860165 Generate cantera.pc and Cantera.mak when using MinGW 2014-04-28 18:17:46 +00:00
Ray Speth
d2ff7dbaaa [SCons] 'clean' removes auto-generated .rst files from examples 2014-04-08 16:26:11 +00:00
Ray Speth
b2c050e545 [Doc] Add FAQ on debugging compilation issues 2014-03-28 23:12:11 +00:00
Ray Speth
5c99f683df [SCons] Add 'dump' command line target, and update FAQ 2014-03-28 23:12:06 +00:00
Ray Speth
6b6ccfaf7f [SCons] Allow 'clean' to be specified along with other targets 2014-03-18 01:42:34 +00:00
Ray Speth
d501189ce9 [SCons] Allow boost_thread_lib to specify multiple libraries 2014-03-17 02:05:13 +00:00
Ray Speth
338a54f101 [SCons] Simplify implementation of changes in r2810
Use the correct platform-independent path separator instead of assuming that it
is ':'.

Determine the PYTHONPATH variable in a single place for each Python version.
2014-03-17 02:05:09 +00:00
Harry Moffat
e032e9e56b Took out a print statement that caused crashes on some systems that don't define PYTHONPATH
Thanks Ray for pointing this out.
2014-03-16 02:52:55 +00:00
Harry Moffat
3d5aa42e77 Fixed the LD_LIBRARY_PATH and PYTHONPATH specifications for scons's test suite on multiuser linux boxes.
The user's environmental variables are now passed down to the tests. Previously they had been ignored.
All of the python tests (minimal and full) had been failing for over a year or so for any installations which actually use the
LD_LIBRARY_PATH and PYTHONPATH environmental variables, which pretty much consists of all multiuser linux
machines.
2014-03-14 23:56:55 +00:00
Ray Speth
d0b3ad3d4b [SCons] Remove deprecated 'legacy_headers' option 2014-03-13 21:35:44 +00:00
Ray Speth
6266986d7b [SCons] Add specific targets for building the docs
Documentation can be built independently of the code by using the 'scons sphinx'
and 'scons doxygen' commands, as an alternative to using the options
'sphinx_docs=y' and 'doxygen_docs=y' to 'scons build'.
2014-03-13 21:35:39 +00:00
Ray Speth
b65a27e513 [SCons] Extract common default compiler flags 2014-03-13 02:19:15 +00:00
Ray Speth
94301d22ba [Scons] Use compiler-independent method for handling NDEBUG 2014-03-13 02:19:12 +00:00
Ray Speth
0ba2294af0 [SCons] Remove unnecessary compiler flags
These flags all correspond to default compiler behavior
2014-03-13 02:19:08 +00:00
Ray Speth
9b37d7d961 [SCons] Fix default compiler options with non-default compiler paths
Try to identify the compiler based on a substring match rather than the
exact string, which will still work when the full path to the compiler
is given, or a version-tagged binary is used.
2014-03-13 02:19:05 +00:00
Ray Speth
62177ebc4d [SCons] Improve detection of MinGW as the default compiler 2014-03-13 02:19:01 +00:00
Ray Speth
ea040e1a5e [SCons] Always link to static standard libraries with MinGW 2014-02-24 03:25:34 +00:00
Ray Speth
a02d3193de [SCons] Remove unused 'rpfont' configuration variable 2014-02-24 03:25:25 +00:00
Ray Speth
ae5fa4a042 [SCons] Add test for Fortran library
Check for both the Fortran compiler and the corresponding Fortran library before
deciding whether to build the F90 interface. This will automatically disable the
F90 interface on platforms that provide gfortran but don't put libgfortran in a
standard location.
2014-02-24 03:25:19 +00:00
Ray Speth
13259299ba [SCons] Correctly identify Cygwin builds
The correct preprocessor macro to use is the one provided by the
compiler, '__CYGWIN__'.
2014-02-20 03:00:52 +00:00
Ray Speth
ca0ea8bc35 [SCons] Simplify treatment of sydep1.h and signal1.h
We don't actually have system-dependent versions of these headers,
so just put the templates in place directly.
2014-02-20 03:00:45 +00:00
Ray Speth
14b1bf093b Remove option to disable 'h298modify_capability' at compile-time 2014-02-06 22:58:56 +00:00
Ray Speth
eaceaf7b86 [SCons] Use SCons to compile the Cython extension
Fixes issues with mismatched compilers between the Cython extension and the
cantera library, especially on OS X. Improves build dependency resolution to
eliminate unnecessary recompilation of _cantera.cpp.
2014-01-31 23:15:17 +00:00
Ray Speth
d9af4af88f [Fortran] Fix compiler used for building Fortran sample programs 2014-01-23 04:20:48 +00:00
Ray Speth
e51ca819fe [SCons] Fix an error when not using Sundials
'has_sundials_lapack' is only defined if we are using Sundials.
2014-01-21 18:06:47 +00:00
Ray Speth
2144738ea1 [SCons] Fix minor typo in warning message 2014-01-21 17:22:14 +00:00
Ray Speth
1ff7bc2f3b [SCons] Remove check for <tr1/tuple>
Updated gtest version makes this special case unnecessary.
2014-01-21 17:22:09 +00:00
Bryan W. Weber
4badbd1fb3 [SCons/0D] Update to enable Sundials linked with external BLAS/LAPACK.
With help from Nick Curtis and Ray Speth.
2014-01-20 15:19:53 +00:00
Ray Speth
a75a9c6e21 [SCons] Install Python 3 module to stage directory 2014-01-09 23:12:27 +00:00
Ray Speth
a8d8f3f0ca [SCons] Check for <tr1/tuple>
This header is used by GTest. If not present, define 'GTEST_USE_OWN_TR1_TUPLE'
to use an alternative version. Fixes a compilation error on OS X.
2014-01-08 17:10:34 +00:00
Ray Speth
e79e453e77 [SCons] Fix Matlab-related paths in post-install message 2014-01-02 22:23:26 +00:00
Ray Speth
59fb3ed1bc [Doc] Fix punctuation in messages in SConstruct 2013-12-18 17:47:07 +00:00
Ray Speth
a8e884d34e [SCons] Check for incompabible BLAS/LAPACK when building Matlab toolbox
Matlab's practice of substituting an "8 byte integer" BLAS/LAPACK
library for the "4 byte integer" BLAS/LAPACK libraries that Cantera is
designed to use causes Cantera to crash. This can only be avoided by
statically linking Cantera to BLAS and LAPACK, e.g. by using the
BLAS/LAPACK implementations included with Cantera.

Since the Matlab toolbox itself needs to be a shared library, it is
not usually possible to link statically link it with vendor-provided
BLAS/LAPACK libraries, since they are not compiled with the
appropriate options, i.e. '-fPIC'.

Resolves Issue 34.
2013-12-18 17:45:25 +00:00