xref: /aosp_15_r20/external/musl/include/getopt.h (revision c9945492fdd68bbe62686c5b452b4dc1be3f8453)
1*c9945492SAndroid Build Coastguard Worker #ifndef _GETOPT_H
2*c9945492SAndroid Build Coastguard Worker #define _GETOPT_H
3*c9945492SAndroid Build Coastguard Worker 
4*c9945492SAndroid Build Coastguard Worker #ifdef __cplusplus
5*c9945492SAndroid Build Coastguard Worker extern "C" {
6*c9945492SAndroid Build Coastguard Worker #endif
7*c9945492SAndroid Build Coastguard Worker 
8*c9945492SAndroid Build Coastguard Worker int getopt(int, char * const [], const char *);
9*c9945492SAndroid Build Coastguard Worker extern char *optarg;
10*c9945492SAndroid Build Coastguard Worker extern int optind, opterr, optopt, optreset;
11*c9945492SAndroid Build Coastguard Worker 
12*c9945492SAndroid Build Coastguard Worker struct option {
13*c9945492SAndroid Build Coastguard Worker 	const char *name;
14*c9945492SAndroid Build Coastguard Worker 	int has_arg;
15*c9945492SAndroid Build Coastguard Worker 	int *flag;
16*c9945492SAndroid Build Coastguard Worker 	int val;
17*c9945492SAndroid Build Coastguard Worker };
18*c9945492SAndroid Build Coastguard Worker 
19*c9945492SAndroid Build Coastguard Worker int getopt_long(int, char *const *, const char *, const struct option *, int *);
20*c9945492SAndroid Build Coastguard Worker int getopt_long_only(int, char *const *, const char *, const struct option *, int *);
21*c9945492SAndroid Build Coastguard Worker 
22*c9945492SAndroid Build Coastguard Worker #define no_argument        0
23*c9945492SAndroid Build Coastguard Worker #define required_argument  1
24*c9945492SAndroid Build Coastguard Worker #define optional_argument  2
25*c9945492SAndroid Build Coastguard Worker 
26*c9945492SAndroid Build Coastguard Worker #ifdef __cplusplus
27*c9945492SAndroid Build Coastguard Worker }
28*c9945492SAndroid Build Coastguard Worker #endif
29*c9945492SAndroid Build Coastguard Worker 
30*c9945492SAndroid Build Coastguard Worker #endif
31