diff options
author | David Robillard <d@drobilla.net> | 2016-07-11 18:12:43 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2016-07-11 18:12:43 +0000 |
commit | f2f69d6d18e240931ba825633108107e948c1984 (patch) | |
tree | f0b7fe820f84532437977667380fbfd3c68a82b1 | |
parent | cc4c8641bdd2d60864e6a4236539a7013eb00ad7 (diff) | |
download | zix-f2f69d6d18e240931ba825633108107e948c1984.tar.gz zix-f2f69d6d18e240931ba825633108107e948c1984.tar.bz2 zix-f2f69d6d18e240931ba825633108107e948c1984.zip |
Add page size configuration option
git-svn-id: http://svn.drobilla.net/zix/trunk@107 df6676b4-ccc9-40e5-b5d6-7c4628a128e3
-rw-r--r-- | wscript | 3 | ||||
-rw-r--r-- | zix/btree.c | 5 |
2 files changed, 7 insertions, 1 deletions
@@ -36,6 +36,8 @@ def options(opt): help='Build benchmarks') opt.add_option('--static', action='store_true', dest='static', help='Build static library') + opt.add_option('--page-size', type='int', default=4096, dest='page_size', + help='Page size for B-tree') def configure(conf): conf.load('compiler_c') @@ -66,6 +68,7 @@ def configure(conf): conf.fatal('Glib is required to build benchmarks') autowaf.define(conf, 'ZIX_VERSION', ZIX_VERSION) + autowaf.define(conf, 'ZIX_BTREE_PAGE_SIZE', Options.options.page_size) conf.write_config_header('zix-config.h', remove=False) autowaf.display_msg(conf, 'Unit tests', str(conf.env.BUILD_TESTS)) diff --git a/zix/btree.c b/zix/btree.c index 4557ad4..d28f6c2 100644 --- a/zix/btree.c +++ b/zix/btree.c @@ -24,7 +24,10 @@ // #define ZIX_BTREE_DEBUG 1 -#define ZIX_BTREE_PAGE_SIZE 4096 +#ifndef ZIX_BTREE_PAGE_SIZE +# define ZIX_BTREE_PAGE_SIZE 4096 +#endif + #define ZIX_BTREE_NODE_SPACE (ZIX_BTREE_PAGE_SIZE - 2 * sizeof(uint16_t)) #define ZIX_BTREE_LEAF_VALS ((ZIX_BTREE_NODE_SPACE / sizeof(void*)) - 1) #define ZIX_BTREE_INODE_VALS (ZIX_BTREE_LEAF_VALS / 2) |