summaryrefslogtreecommitdiff
path: root/lib/getopt1.c
diff options
context:
space:
mode:
authorJim Meyering <jim@meyering.net>2004-03-23 17:33:25 +0000
committerJim Meyering <jim@meyering.net>2004-03-23 17:33:25 +0000
commit42401183af3f2d950ef528754106c973ceb8dffd (patch)
treebc35d04dd6a31d72d64bc00851e24254d2f13fec /lib/getopt1.c
parent546413e85adb50c850fcb63bd98d30d7c420e540 (diff)
downloadcoreutils-42401183af3f2d950ef528754106c973ceb8dffd.tar.xz
Sync from gnulib.
Diffstat (limited to 'lib/getopt1.c')
-rw-r--r--lib/getopt1.c42
1 files changed, 24 insertions, 18 deletions
diff --git a/lib/getopt1.c b/lib/getopt1.c
index 3288c7261..7671eba37 100644
--- a/lib/getopt1.c
+++ b/lib/getopt1.c
@@ -1,8 +1,6 @@
/* getopt_long and getopt_long_only entry points for GNU getopt.
-
- Copyright (C) 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1996,
- 1997, 1998, 2003 Free Software Foundation, Inc.
-
+ Copyright (C) 1987,88,89,90,91,92,93,94,96,97,98,2004
+ Free Software Foundation, Inc.
This file is part of the GNU C Library.
This program is free software; you can redistribute it and/or modify
@@ -28,6 +26,7 @@
#else
# include "getopt.h"
#endif
+#include "getopt_int.h"
#include <stdio.h>
@@ -61,34 +60,41 @@
#endif
int
-getopt_long (int argc,
- char *const *argv,
- const char *options,
- const struct option *long_options,
- int *opt_index)
+getopt_long (int argc, char *const *argv, const char *options,
+ const struct option *long_options, int *opt_index)
{
return _getopt_internal (argc, argv, options, long_options, opt_index, 0);
}
+int
+_getopt_long_r (int argc, char *const *argv, const char *options,
+ const struct option *long_options, int *opt_index,
+ struct _getopt_data *d)
+{
+ return _getopt_internal_r (argc, argv, options, long_options, opt_index,
+ 0, d);
+}
+
/* Like getopt_long, but '-' as well as '--' can indicate a long option.
If an option that starts with '-' (not '--') doesn't match a long option,
but does match a short option, it is parsed as a short option
instead. */
int
-getopt_long_only (int argc,
- char *const *argv,
- const char *options,
- const struct option *long_options,
- int *opt_index)
+getopt_long_only (int argc, char *const *argv, const char *options,
+ const struct option *long_options, int *opt_index)
{
return _getopt_internal (argc, argv, options, long_options, opt_index, 1);
}
-# ifdef _LIBC
-libc_hidden_def (getopt_long)
-libc_hidden_def (getopt_long_only)
-# endif
+int
+_getopt_long_only_r (int argc, char *const *argv, const char *options,
+ const struct option *long_options, int *opt_index,
+ struct _getopt_data *d)
+{
+ return _getopt_internal_r (argc, argv, options, long_options, opt_index,
+ 1, d);
+}
#endif /* Not ELIDE_CODE. */