1 /* patch-logs.h: 2 * 3 **************************************************************** 4 * Copyright (C) 2003 Tom Lord 5 * 6 * See the file "COPYING" for further information about 7 * the copyright and warranty status of this work. 8 */ 9 10 #ifndef INCLUDE__LIBARCH__PATCH_LOGS_H 11 #define INCLUDE__LIBARCH__PATCH_LOGS_H 12 13 14 #include "tla/libawk/relational.h" 15 #include "tla/libawk/associative.h" 16 17 18 19 20 enum arch_log_headers_summary 21 { 22 arch_include_date = 1, 23 arch_include_creator = 2, 24 arch_include_summary = 4, 25 arch_include_foreign_merges = 8, 26 arch_include_local_merges = 16, 27 }; 28 29 30 31 /* automatically generated __STDC__ prototypes */ 32 extern t_uchar * arch_make_log_file (const t_uchar * tree_root, 33 const t_uchar * archive, 34 const t_uchar * version); 35 extern t_uchar * arch_make_log (const t_uchar * tree_root, 36 const t_uchar * archive, 37 const t_uchar * version); 38 extern t_uchar * arch_auto_log_message (const t_uchar * tree_root, 39 const t_uchar * archive, 40 const t_uchar * version, 41 const t_uchar * summary, 42 const t_uchar * body); 43 extern t_uchar * arch_log_for_merge (const t_uchar * tree_root, 44 const t_uchar * archive, 45 const t_uchar * version, 46 int reverse); 47 extern t_uchar * arch_log_dir (const t_uchar * tree_root, 48 const t_uchar * archive, 49 const t_uchar * version); 50 extern t_uchar * arch_log_file (const t_uchar * tree_root, 51 const t_uchar * archive, 52 const t_uchar * revision); 53 extern t_uchar * arch_log_contents (const t_uchar * tree_root, 54 const t_uchar * archive, 55 const t_uchar * revision); 56 extern int arch_tree_has_log (const t_uchar * tree_root, 57 const t_uchar * archive, 58 const t_uchar * revision); 59 extern void arch_add_log_version (const t_uchar * tree_root, 60 const t_uchar * archive, 61 const t_uchar * version); 62 extern void arch_remove_log_version (const t_uchar * tree_root, 63 const t_uchar * archive, 64 const t_uchar * version); 65 extern int arch_has_patch_log (const t_uchar * tree_root, 66 const t_uchar * archive, 67 const t_uchar * version); 68 extern rel_table arch_log_versions (const t_uchar * tree_root, 69 const t_uchar * only_archive, 70 const t_uchar * only_category_param, 71 const t_uchar * only_branch_param, 72 const t_uchar * only_version_param); 73 extern t_uchar * arch_highest_patch_level (const t_uchar * tree_root, 74 const t_uchar * archive, 75 const t_uchar * version); 76 extern t_uchar * arch_latest_logged_version (const t_uchar * tree_root, 77 const t_uchar * archive, 78 const t_uchar * package); 79 extern rel_table arch_logs (const t_uchar * tree_root, 80 const t_uchar * archive, 81 const t_uchar * version, 82 int full); 83 extern int arch_valid_log_file (const t_uchar * log); 84 extern void arch_parse_log (rel_table * headers_list, 85 assoc_table * headers, 86 const t_uchar ** body, 87 const t_uchar * log); 88 extern void arch_print_headers_summary (int out_fd, 89 int indent_level, 90 assoc_table headers, 91 int summarized_headers); 92 extern void arch_print_log_list_header (int out_fd, 93 const t_uchar * header, 94 rel_table list, 95 int field); 96 extern void arch_print_log_pairs_header (int out_fd, 97 const t_uchar * header, 98 rel_table list, 99 int field_a, 100 int field_b); 101 extern void arch_copy_to_patch_log (const t_uchar * tree_root, 102 const t_uchar * archive, 103 const t_uchar * revision, 104 const t_uchar * log_file); 105 extern void arch_rename_to_patch_log (const t_uchar * tree_root, 106 const t_uchar * archive, 107 const t_uchar * revision, 108 const t_uchar * log_file); 109 extern rel_table arch_all_logs (const t_uchar * tree_root); 110 111 extern t_uchar * 112 arch_tree_latest_revision (t_uchar * base_tree_root); 113 114 115 #endif /* INCLUDE__LIBARCH__PATCH_LOGS_H */ 116 117 118 /* tag: Tom Lord Sat Jan 5 15:26:10 2002 (patch-logs.h) 119 */ 120