diff options
author | David Cournapeau <cournape@gmail.com> | 2009-07-26 11:14:30 +0000 |
---|---|---|
committer | David Cournapeau <cournape@gmail.com> | 2009-07-26 11:14:30 +0000 |
commit | 4b34188cb87b08549f2daca956482d45ad046e07 (patch) | |
tree | a7670b55d0399f218c90ed124360e265661a8649 /numpy/distutils/command/build_ext.py | |
parent | 0407363fe009c004da0e2c2bbbaa421cb64e160d (diff) | |
download | numpy-4b34188cb87b08549f2daca956482d45ad046e07.tar.gz |
When built in-place, make sure build_clib is built inplace too.
If numpy is built in-place and used by a third-party, we need to make
sure installable libraries are put in the source directory, to mimic an
install. Whenever build_ext is called with -i option, we call build_clib
with the -i option as well.
Diffstat (limited to 'numpy/distutils/command/build_ext.py')
-rw-r--r-- | numpy/distutils/command/build_ext.py | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/numpy/distutils/command/build_ext.py b/numpy/distutils/command/build_ext.py index 2b114d4a7..4d11d033d 100644 --- a/numpy/distutils/command/build_ext.py +++ b/numpy/distutils/command/build_ext.py @@ -57,8 +57,20 @@ class build_ext (old_build_ext): self.run_command('build_src') if self.distribution.has_c_libraries(): - self.run_command('build_clib') - build_clib = self.get_finalized_command('build_clib') + if self.inplace: + if self.distribution.have_run.get('build_clib'): + log.warn('build_clib already run, it is too late to ' \ + 'ensure in-place build of build_clib') + else: + build_clib = self.distribution.get_command_obj('build_clib') + build_clib.inplace = 1 + build_clib.ensure_finalized() + build_clib.run() + self.distribution.have_run['build_clib'] = 1 + + else: + self.run_command('build_clib') + build_clib = self.get_finalized_command('build_clib') self.library_dirs.append(build_clib.build_clib) else: build_clib = None |