diff options
author | David Cournapeau <cournape@gmail.com> | 2008-01-06 12:18:13 +0000 |
---|---|---|
committer | David Cournapeau <cournape@gmail.com> | 2008-01-06 12:18:13 +0000 |
commit | f1b0e0c887f9d584638edde22c82879b94e96bd0 (patch) | |
tree | 2a576151a2018945b91c3209cc9a86ad20def614 /numpy | |
parent | caca466400feb312ce937c58d1f8ea69f1872135 (diff) | |
download | numpy-f1b0e0c887f9d584638edde22c82879b94e96bd0.tar.gz |
Modify array api generator to be compatible with scons builder
Diffstat (limited to 'numpy')
-rw-r--r-- | numpy/core/code_generators/generate_array_api.py | 35 |
1 files changed, 20 insertions, 15 deletions
diff --git a/numpy/core/code_generators/generate_array_api.py b/numpy/core/code_generators/generate_array_api.py index c6f73c33f..94ab37fa3 100644 --- a/numpy/core/code_generators/generate_array_api.py +++ b/numpy/core/code_generators/generate_array_api.py @@ -1,9 +1,6 @@ import os import genapi -OBJECT_API_ORDER = 'array_api_order.txt' -MULTIARRAY_API_ORDER = 'multiarray_api_order.txt' - types = ['Generic','Number','Integer','SignedInteger','UnsignedInteger', 'Inexact', 'Floating', 'ComplexFloating', 'Flexible', 'Character', @@ -122,22 +119,30 @@ void *PyArray_API[] = { """ def generate_api(output_dir, force=False): - header_file = os.path.join(output_dir, '__multiarray_api.h') - c_file = os.path.join(output_dir,'__multiarray_api.c') - doc_file = os.path.join(output_dir, 'multiarray_api.txt') - - targets = (header_file, c_file, doc_file) - if (not force - and not genapi.should_rebuild(targets, - [OBJECT_API_ORDER, - MULTIARRAY_API_ORDER, - __file__])): + basename = 'multiarray_api' + + h_file = os.path.join(output_dir, '__%s.h' % basename) + c_file = os.path.join(output_dir, '__%s.c' % basename) + d_file = os.path.join(output_dir, '%s.txt' % basename) + targets = (h_file, c_file, d_file) + sources = ['array_api_order.txt', 'multiarray_api_order.txt'] + + if (not force and not genapi.should_rebuild(targets, sources + [__file__])): return targets + else: + do_generate_api(targets, sources) + + return targets + +def do_generate_api(targets, sources): + header_file = targets[0] + c_file = targets[1] + doc_file = targets[2] objectapi_list = genapi.get_api_functions('OBJECT_API', - OBJECT_API_ORDER) + sources[0]) multiapi_list = genapi.get_api_functions('MULTIARRAY_API', - MULTIARRAY_API_ORDER) + sources[1]) # API fixes for __arrayobject_api.h fixed = 10 |