aboutsummaryrefslogtreecommitdiff
path: root/src/include/getopt_long.h
blob: 5b20622cee46ef2645d001871d8db48ef513155d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
/*
 * Portions Copyright (c) 1987, 1993, 1994
 * The Regents of the University of California.  All rights reserved.
 *
 * Portions Copyright (c) 2003
 * PostgreSQL Global Development Group
 *
 * $Header: /cvsroot/pgsql/src/include/getopt_long.h,v 1.1 2003/01/06 18:53:25 petere Exp $
 */

/* These are picked up from the system's getopt() facility. */
extern int opterr;
extern int optind;
extern int optopt;
extern char *optarg;

/* Some systems have this, otherwise you need to define it somewhere. */
extern int optreset;

struct option {
	const char *name;
	int has_arg;
	int *flag;
	int val;
};

#define no_argument 0
#define required_argument 1

int
getopt_long(int argc, char * const argv[],
			const char *optstring,
			const struct option *longopts, int *longindex);