summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Cournapeau <cournape@gmail.com>2012-05-31 19:26:13 +0900
committerDavid Cournapeau <cournape@gmail.com>2012-06-01 03:11:14 +0900
commit7ec6cf4216abbe3539ce0cca3d53a436c1e6deb5 (patch)
tree06417f89ba3dbf0b04ec03e5d8f89428a3e7a2c1
parent87295b3e2202da7a9bfe44062c0c715b5bc08d6f (diff)
downloadnumpy-7ec6cf4216abbe3539ce0cca3d53a436c1e6deb5.tar.gz
REF: simplify extension customization.
We are using the new tweak_* bento API wherever possible.
-rw-r--r--numpy/core/bscript35
-rw-r--r--numpy/fft/bscript18
-rw-r--r--numpy/lib/bscript19
3 files changed, 21 insertions, 51 deletions
diff --git a/numpy/core/bscript b/numpy/core/bscript
index dc0b1eaab..3db659529 100644
--- a/numpy/core/bscript
+++ b/numpy/core/bscript
@@ -407,19 +407,12 @@ def pre_build(context):
numpyconfig_h = context.local_node.declare(os.path.join("include", "numpy", "_numpyconfig.h"))
context.register_outputs("numpy_gen_headers", "numpyconfig", [numpyconfig_h])
- def builder(library):
- # FIXME: hack to build static library that can be linked into a dlopen-able
- # library
- return context.default_library_builder(library,
- includes=["src/private", "src/npymath", "include"],
- use="cshlib")
- context.register_compiled_library_builder("npymath", builder)
-
- def builder_sort(library):
- return context.default_library_builder(library,
- includes=[".", "src/private", "src/npysort"],
- use="npymath")
- context.register_compiled_library_builder("npysort", builder_sort)
+ context.tweak_library("npymath",
+ includes=["src/private", "src/npymath", "include"])
+
+ context.tweak_library("npysort",
+ includes=[".", "src/private", "src/npysort"],
+ use="npymath")
def builder_multiarray(extension):
bld(name="multiarray_api",
@@ -506,19 +499,11 @@ def pre_build(context):
use="npymath")
context.register_builder("umath", build_ufunc)
- def build_scalarmath(extension):
- return context.default_builder(extension,
- use="npymath")
- context.register_builder("scalarmath", build_scalarmath)
-
- def build_multiarray_tests(extension):
- return context.default_builder(extension,
- use="npymath", includes=["src/private"])
- context.register_builder("multiarray_tests", build_multiarray_tests)
- context.register_builder("umath_tests", build_multiarray_tests)
+ context.tweak_extension("scalarmath", use="npymath")
+ context.tweak_extension("multiarray_tests", use="npymath", includes=["src/private"])
+ context.tweak_extension("umath_tests", use="npymath", includes=["src/private"])
def build_dotblas(extension):
if bld.env.HAS_CBLAS:
- return context.default_builder(extension,
- use="CBLAS")
+ return context.default_builder(extension, use="CBLAS")
context.register_builder("_dotblas", build_dotblas)
diff --git a/numpy/fft/bscript b/numpy/fft/bscript
index 165ff145d..ac1506496 100644
--- a/numpy/fft/bscript
+++ b/numpy/fft/bscript
@@ -1,15 +1,7 @@
-import os
+from bento.commands import hooks
-from bento.commands.hooks \
- import \
- pre_build
-
-@pre_build
+@hooks.pre_build
def build(context):
- bld = context.waf_context
-
- def build(extension):
- includes = ["../core/include", "../core/include/numpy", "../core",
- "../core/src/private"]
- return context.default_builder(extension, includes=includes)
- context.register_builder("fftpack_lite", build)
+ context.tweak_extension("fftpack_lite",
+ includes=["../core/include", "../core/include/numpy",
+ "../core", "../core/src/private"])
diff --git a/numpy/lib/bscript b/numpy/lib/bscript
index 8d47e1f34..a9200d043 100644
--- a/numpy/lib/bscript
+++ b/numpy/lib/bscript
@@ -1,14 +1,7 @@
-import os
+from bento.commands import hooks
-from bento.commands.hooks \
- import \
- pre_build
-
-@pre_build
-def pbuild(context):
- bld = context.waf_context
- def builder_compiled_base(extension):
- includes = ["../core/include", "../core/include/numpy", "../core",
- "../core/src/private"]
- return context.default_builder(extension, includes=includes)
- context.register_builder("_compiled_base", builder_compiled_base)
+@hooks.pre_build
+def build(context):
+ context.tweak_extension("_compiled_base",
+ includes=["../core/include", "../core/include/numpy", "../core",
+ "../core/src/private"])