summaryrefslogtreecommitdiff
path: root/lib/getopt-pfx-core.h
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2017-04-08 23:48:02 -0700
committerPaul Eggert <eggert@cs.ucla.edu>2017-04-09 00:52:20 -0700
commitffc927eef29016a5219cd969daad8928af6a1f4d (patch)
tree057a1de75bb262adaf99e10f1a5f3ea5731f0481 /lib/getopt-pfx-core.h
parent4172365d89eb1f404d43740dcbdb1aef599f8e14 (diff)
downloadgnulib-ffc927eef29016a5219cd969daad8928af6a1f4d.tar.gz
getopt: prefer - to _ in new file names
* lib/getopt-cdefs.in.h: Rename from lib/getopt_cdefs.in.h. * lib/getopt-core.h: Rename from lib/getopt_core.h. * lib/getopt-ext.h: Rename from lib/getopt_ext.h. * lib/getopt-pfx-core.h: Rename from lib/getopt_pfx_core.h. * lib/getopt-pfx-ext.h: Rename from lib/getopt_pfx_ext.h. All uses changed.
Diffstat (limited to 'lib/getopt-pfx-core.h')
-rw-r--r--lib/getopt-pfx-core.h54
1 files changed, 54 insertions, 0 deletions
diff --git a/lib/getopt-pfx-core.h b/lib/getopt-pfx-core.h
new file mode 100644
index 0000000000..155c11612d
--- /dev/null
+++ b/lib/getopt-pfx-core.h
@@ -0,0 +1,54 @@
+/* getopt (basic, portable features) gnulib wrapper header.
+ Copyright (C) 1989-2017 Free Software Foundation, Inc.
+ This file is part of gnulib.
+ Unlike most of the getopt implementation, it is NOT shared
+ with the GNU C Library.
+
+ gnulib is free software; you can redistribute it and/or modify it
+ under the terms of the GNU Lesser General Public License as
+ published by the Free Software Foundation; either version 2.1 of
+ the License, or (at your option) any later version.
+
+ gnulib is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with gnulib; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef _GETOPT_PFX_CORE_H
+#define _GETOPT_PFX_CORE_H 1
+
+/* This header should not be used directly; include getopt.h or
+ unistd.h instead. It does not have a protective #error, because
+ the guard macro for getopt.h in gnulib is not fixed. */
+
+/* Standalone applications should #define __GETOPT_PREFIX to an
+ identifier that prefixes the external functions and variables
+ defined in getopt-core.h and getopt-ext.h. Systematically
+ rename identifiers so that they do not collide with the system
+ functions and variables. Renaming avoids problems with some
+ compilers and linkers. */
+#ifdef __GETOPT_PREFIX
+# ifndef __GETOPT_ID
+# define __GETOPT_CONCAT(x, y) x ## y
+# define __GETOPT_XCONCAT(x, y) __GETOPT_CONCAT (x, y)
+# define __GETOPT_ID(y) __GETOPT_XCONCAT (__GETOPT_PREFIX, y)
+# endif
+# undef getopt
+# undef optarg
+# undef opterr
+# undef optind
+# undef optopt
+# define getopt __GETOPT_ID (getopt)
+# define optarg __GETOPT_ID (optarg)
+# define opterr __GETOPT_ID (opterr)
+# define optind __GETOPT_ID (optind)
+# define optopt __GETOPT_ID (optopt)
+#endif
+
+#include <getopt-core.h>
+
+#endif /* _GETOPT_PFX_CORE_H */