ladybird/Libraries/LibC/getopt.h
Andreas Kling 56e0e6be56 LibC: Borrow a slightly more functional getopt()
We were already borrowing a getopt() from the BSD family until the day
we write our own. This patch borrows a slightly more modern one so we
also get getopt_long().

Fixes #190.

See also #91 for the desire to eventually NIH our own getopt()..
2019-09-06 20:03:16 +02:00

37 lines
669 B
C

#pragma once
#include <sys/cdefs.h>
#define no_argument 0
#define required_argument 1
#define optional_argument 2
struct option {
const char *name;
int has_arg;
int* flag;
int val;
};
__BEGIN_DECLS
int getopt_long(int, char* const*, const char*, const struct option*, int*);
int getopt_long_only(int, char* const*, const char*, const struct option*, int*);
#ifndef _GETOPT_DECLARED
#define _GETOPT_DECLARED
int getopt(int, char * const [], const char *);
extern char *optarg;
extern int optind;
extern int opterr;
extern int optopt;
#endif
#ifndef _OPTRESET_DECLARED
#define _OPTRESET_DECLARED
extern int optreset;
#endif
__END_DECLS