summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorNick Papior Andersen <nickpapior@gmail.com>2015-02-24 13:29:38 +0000
committerNick Papior Andersen <nickpapior@gmail.com>2015-02-24 13:29:38 +0000
commite87ad6eb8ff7d7705abb20d523e21c67e508b0e6 (patch)
treef7984e54c6c5d857a658d6a736ab8d7c83fa4226 /doc
parent63e0f6ac81b8bfabc74a441dbf08eeaead091fbb (diff)
downloadnumpy-e87ad6eb8ff7d7705abb20d523e21c67e508b0e6.tar.gz
ENH: Added tests to the extra options read in
A simple test (distutils/testing/test_system_info.py) to check that the options are read in correctly has been added. This test has a few faults: A) It does not allow strict library checks as that can be _very_ system dependent. B) It compiles some simple C-programs but does currently not link them to a shared library. C) As such the test does not check that the flags are actually used. To circumvent this one should: A) Make a library of the compiled sources. B) Check that a runtime_library_dirs is working by checking with ldd C) Make a preprocessor flag to check the output of two commands which should differ according to the flags in each block I am not too much into the distutils compiler suite. So I have not endeavoured on this path. - The current test shows that the flags are read in by the standard system_info object and can thus be considered a "stable" solution. - Added note of the 1.10 release schedule. - Corrected the site.cfg.example, added runtime_library_dirs to the OpenBLAS example where it seems appropriate. - Bugfix for the site.cfg.example (the [DEFAULT] block should be name [ALL]) This might have lead to some confusion, but many of the libraries are linked explicitly by their own sections, hence it might not have been caught.
Diffstat (limited to 'doc')
-rw-r--r--doc/release/1.10.0-notes.rst15
1 files changed, 15 insertions, 0 deletions
diff --git a/doc/release/1.10.0-notes.rst b/doc/release/1.10.0-notes.rst
index f9d202ec3..c0645cfe2 100644
--- a/doc/release/1.10.0-notes.rst
+++ b/doc/release/1.10.0-notes.rst
@@ -8,6 +8,9 @@ Highlights
==========
* numpy.distutils now supports parallel compilation via the --jobs/-j argument
passed to setup.py build
+* numpy.distutils now supports additional customization via site.cfg to
+ control compilation parameters, i.e. runtime libraries, extra
+ linking/compilation flags.
* Addition of *np.linalg.multi_dot*: compute the dot product of two or more
arrays in a single function call, while automatically selecting the fastest
evaluation order.
@@ -74,6 +77,18 @@ Also, the dtype.type of nested structured fields is now inherited.
New Features
============
+Reading extra flags from site.cfg
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Previously customization of compilation of dependency libraries and numpy
+itself was only accomblishable via code changes in the distutils package.
+Now numpy.distutils reads in the following extra flags from each group of the
+site.cfg:
+ runtime_library_dirs (sets the runtime library directories to override
+ LD_LIBRARY_PATH)
+ extra_compile_args (add extra flags to the compilation of sources)
+ extra_link_args (add extra flags when linking libraries)
+This should, at least partially, complete user customization.
+
*np.cbrt* to compute cube root for real floats
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*np.cbrt* wraps the C99 cube root function *cbrt*.