diff options
author | David Cournapeau <cournape@gmail.com> | 2009-07-26 11:13:53 +0000 |
---|---|---|
committer | David Cournapeau <cournape@gmail.com> | 2009-07-26 11:13:53 +0000 |
commit | 5bedf54e48fe24c628ff33462249fe76828a713f (patch) | |
tree | c3f2a5cb69527370c996828048a6fae2b4b68d24 /numpy/distutils/command/build_clib.py | |
parent | 5c89ad2f2c40bd980f66eb0b525543c2c74931d8 (diff) | |
download | numpy-5bedf54e48fe24c628ff33462249fe76828a713f.tar.gz |
Add an inplace option to build_clib - this is necessary for using installed C libraries in in-place build.
Diffstat (limited to 'numpy/distutils/command/build_clib.py')
-rw-r--r-- | numpy/distutils/command/build_clib.py | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/numpy/distutils/command/build_clib.py b/numpy/distutils/command/build_clib.py index 9f6be52eb..88fa809c7 100644 --- a/numpy/distutils/command/build_clib.py +++ b/numpy/distutils/command/build_clib.py @@ -3,6 +3,7 @@ import os from glob import glob +import shutil from distutils.command.build_clib import build_clib as old_build_clib from distutils.errors import DistutilsSetupError, DistutilsError, \ DistutilsFileError @@ -27,11 +28,15 @@ class build_clib(old_build_clib): user_options = old_build_clib.user_options + [ ('fcompiler=', None, "specify the Fortran compiler type"), + ('inplace', 'i', 'Build in-place'), ] + boolean_options = old_build_clib.boolean_options + ['inplace'] + def initialize_options(self): old_build_clib.initialize_options(self) self.fcompiler = None + self.inplace = 0 return def have_f_sources(self): @@ -94,6 +99,14 @@ class build_clib(old_build_clib): self.build_libraries(self.libraries) + if self.inplace: + for l in self.distribution.installed_libraries: + libname = self.compiler.library_filename(l.name) + source = os.path.join(self.build_clib, libname) + target = os.path.join(l.target_dir, libname) + self.mkpath(l.target_dir) + shutil.copy(source, target) + def get_source_files(self): self.check_library_list(self.libraries) filenames = [] |