From 5e2d8bb9f7f42bf46090e7ff4e1659280a14beaa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Axel=20D=C3=B6rfler?= Date: Tue, 14 Sep 2004 20:56:37 +0000 Subject: [PATCH] Added a BeOS compatible header for the GNU getopt() extensions. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8948 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- headers/posix/getopt.h | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 headers/posix/getopt.h diff --git a/headers/posix/getopt.h b/headers/posix/getopt.h new file mode 100644 index 0000000000..df8a3651e4 --- /dev/null +++ b/headers/posix/getopt.h @@ -0,0 +1,40 @@ +/* +** Distributed under the terms of the Haiku License. +*/ +#ifndef _GETOPT_H +#define _GETOPT_H + + +#include + + +/* This header defines the available GNU extensions to the getopt() functionality */ + +struct option { + const char *name; + int has_arg; + int *flag; + int val; +}; + +/* Options for the "has_arg" field */ + +#define no_argument 0 +#define required_argument 1 +#define optional_argument 2 + + +#ifdef __cplusplus +extern "C" { +#endif + +extern int getopt_long(int argc, char * const *argv, const char *shortOptions, + const struct option *longOptions, int *_longIndex); +extern int getopt_long_only(int argc, char * const *argv, const char *shortOptions, + const struct option *longOptions, int *_longIndex); + +#ifdef __cplusplus +} +#endif + +#endif /* _GETOPT_H */