Annotation of src/usr.bin/cvs/config.h, Revision 1.10
1.10 ! joris 1: /* $OpenBSD: config.h,v 1.9 2008/02/06 22:43:22 joris Exp $ */
1.1 joris 2: /*
3: * Copyright (c) 2006 Joris Vink <joris@openbsd.org>
4: *
5: * Permission to use, copy, modify, and distribute this software for any
6: * purpose with or without fee is hereby granted, provided that the above
7: * copyright notice and this permission notice appear in all copies.
8: *
9: * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10: * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11: * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12: * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13: * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14: * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15: * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16: */
17:
18: #ifndef CONFIG_H
19: #define CONFIG_H
20:
1.9 joris 21: void cvs_modules_list(void);
22:
1.10 ! joris 23: void cvs_read_config(char *name, int (*cb)(char *, int));
1.3 joris 24:
1.1 joris 25: void cvs_parse_configfile(void);
1.3 joris 26: void cvs_parse_modules(void);
1.2 joris 27:
1.10 ! joris 28: int config_parse_line(char *, int);
! 29: int modules_parse_line(char *, int);
1.3 joris 30:
31: #include <sys/queue.h>
1.5 joris 32: #include "file.h"
1.3 joris 33:
34: /* module stuff */
35:
1.4 joris 36: #define MODULE_ALIAS 0x01
37: #define MODULE_TARGETDIR 0x02
38: #define MODULE_NORECURSE 0x04
1.5 joris 39: #define MODULE_RUN_ON_COMMIT 0x08
1.8 joris 40: #define MODULE_RUN_ON_CHECKOUT 0x10
1.4 joris 41:
42: struct module_checkout {
1.6 joris 43: char *mc_name;
1.7 joris 44: char *mc_prog;
45:
1.4 joris 46: int mc_flags;
1.7 joris 47: int mc_canfree;
1.5 joris 48:
49: struct cvs_flisthead mc_modules;
50: struct cvs_flisthead mc_ignores;
1.4 joris 51: };
1.3 joris 52:
53: struct module_info {
54: char *mi_name;
1.7 joris 55: char *mi_prog;
1.9 joris 56: char *mi_str;
1.4 joris 57: int mi_flags;
1.5 joris 58:
59: struct cvs_flisthead mi_modules;
60: struct cvs_flisthead mi_ignores;
1.3 joris 61:
1.4 joris 62: TAILQ_ENTRY(module_info) m_list;
1.3 joris 63: };
1.1 joris 64:
1.4 joris 65: struct module_checkout *cvs_module_lookup(char *);
1.1 joris 66: #endif