5 %define hash-function-name confitems_hash
6 %define lookup-function-name confitems_get
7 %define initializer-suffix ,0,0,NULL,NULL,NULL
13 #define ITEM_ENTRY(name, type, verify_fn) \
14 offsetof(struct conf, name), confitem_parse_ ## type, \
15 confitem_format_ ## type, verify_fn
16 #define ITEM(name, type) \
17 ITEM_ENTRY(name, type, NULL)
18 #define ITEM_V(name, type, verification) \
19 ITEM_ENTRY(name, type, confitem_verify_ ## verification)
23 base_dir, 0, ITEM_V(base_dir, env_string, absolute_path)
24 cache_dir, 1, ITEM(cache_dir, env_string)
25 cache_dir_levels, 2, ITEM_V(cache_dir_levels, unsigned, dir_levels)
26 compiler, 3, ITEM(compiler, string)
27 compiler_check, 4, ITEM(compiler_check, string)
28 compression, 5, ITEM(compression, bool)
29 compression_level, 6, ITEM(compression_level, unsigned)
30 cpp_extension, 7, ITEM(cpp_extension, string)
31 debug, 8, ITEM(debug, bool)
32 direct_mode, 9, ITEM(direct_mode, bool)
33 disable, 10, ITEM(disable, bool)
34 extra_files_to_hash, 11, ITEM(extra_files_to_hash, env_string)
35 hard_link, 12, ITEM(hard_link, bool)
36 hash_dir, 13, ITEM(hash_dir, bool)
37 ignore_headers_in_manifest, 14, ITEM(ignore_headers_in_manifest, env_string)
38 keep_comments_cpp, 15, ITEM(keep_comments_cpp, bool)
39 limit_multiple, 16, ITEM(limit_multiple, double)
40 log_file, 17, ITEM(log_file, env_string)
41 max_files, 18, ITEM(max_files, unsigned)
42 max_size, 19, ITEM(max_size, size)
43 path, 20, ITEM(path, env_string)
44 pch_external_checksum, 21, ITEM(pch_external_checksum, bool)
45 prefix_command, 22, ITEM(prefix_command, env_string)
46 prefix_command_cpp, 23, ITEM(prefix_command_cpp, env_string)
47 read_only, 24, ITEM(read_only, bool)
48 read_only_direct, 25, ITEM(read_only_direct, bool)
49 recache, 26, ITEM(recache, bool)
50 run_second_cpp, 27, ITEM(run_second_cpp, bool)
51 sloppiness, 28, ITEM(sloppiness, sloppiness)
52 stats, 29, ITEM(stats, bool)
53 temporary_dir, 30, ITEM(temporary_dir, env_string)
54 umask, 31, ITEM(umask, umask)
55 unify, 32, ITEM(unify, bool)