source: trunk/essentials/app-arch/tar/lib/argp-namefrob.h

Last change on this file was 3342, checked in by bird, 18 years ago

tar 1.16.1

File size: 5.5 KB
Line 
1/* Name frobnication for compiling argp outside of glibc
2 Copyright (C) 1997, 2003 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4 Written by Miles Bader <miles@gnu.ai.mit.edu>.
5
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2, or (at your option)
9 any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License along
17 with this program; if not, write to the Free Software Foundation,
18 Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */
19
20#if !_LIBC
21/* This code is written for inclusion in gnu-libc, and uses names in the
22 namespace reserved for libc. If we're not compiling in libc, define those
23 names to be the normal ones instead. */
24
25/* argp-parse functions */
26#undef __argp_parse
27#define __argp_parse argp_parse
28#undef __option_is_end
29#define __option_is_end _option_is_end
30#undef __option_is_short
31#define __option_is_short _option_is_short
32#undef __argp_input
33#define __argp_input _argp_input
34
35/* argp-help functions */
36#undef __argp_help
37#define __argp_help argp_help
38#undef __argp_error
39#define __argp_error argp_error
40#undef __argp_failure
41#define __argp_failure argp_failure
42#undef __argp_state_help
43#define __argp_state_help argp_state_help
44#undef __argp_usage
45#define __argp_usage argp_usage
46
47/* argp-fmtstream functions */
48#undef __argp_make_fmtstream
49#define __argp_make_fmtstream argp_make_fmtstream
50#undef __argp_fmtstream_free
51#define __argp_fmtstream_free argp_fmtstream_free
52#undef __argp_fmtstream_putc
53#define __argp_fmtstream_putc argp_fmtstream_putc
54#undef __argp_fmtstream_puts
55#define __argp_fmtstream_puts argp_fmtstream_puts
56#undef __argp_fmtstream_write
57#define __argp_fmtstream_write argp_fmtstream_write
58#undef __argp_fmtstream_printf
59#define __argp_fmtstream_printf argp_fmtstream_printf
60#undef __argp_fmtstream_set_lmargin
61#define __argp_fmtstream_set_lmargin argp_fmtstream_set_lmargin
62#undef __argp_fmtstream_set_rmargin
63#define __argp_fmtstream_set_rmargin argp_fmtstream_set_rmargin
64#undef __argp_fmtstream_set_wmargin
65#define __argp_fmtstream_set_wmargin argp_fmtstream_set_wmargin
66#undef __argp_fmtstream_point
67#define __argp_fmtstream_point argp_fmtstream_point
68#undef __argp_fmtstream_update
69#define __argp_fmtstream_update _argp_fmtstream_update
70#undef __argp_fmtstream_ensure
71#define __argp_fmtstream_ensure _argp_fmtstream_ensure
72#undef __argp_fmtstream_lmargin
73#define __argp_fmtstream_lmargin argp_fmtstream_lmargin
74#undef __argp_fmtstream_rmargin
75#define __argp_fmtstream_rmargin argp_fmtstream_rmargin
76#undef __argp_fmtstream_wmargin
77#define __argp_fmtstream_wmargin argp_fmtstream_wmargin
78
79#include "mempcpy.h"
80#include "strcase.h"
81#include "strchrnul.h"
82#include "strndup.h"
83
84/* normal libc functions we call */
85#undef __flockfile
86#define __flockfile flockfile
87#undef __funlockfile
88#define __funlockfile funlockfile
89#undef __mempcpy
90#define __mempcpy mempcpy
91#undef __sleep
92#define __sleep sleep
93#undef __strcasecmp
94#define __strcasecmp strcasecmp
95#undef __strchrnul
96#define __strchrnul strchrnul
97#undef __strerror_r
98#define __strerror_r strerror_r
99#undef __strndup
100#define __strndup strndup
101#undef __vsnprintf
102#define __vsnprintf vsnprintf
103
104#if defined(HAVE_DECL_CLEARERR_UNLOCKED) && !HAVE_DECL_CLEARERR_UNLOCKED
105# define clearerr_unlocked(x) clearerr (x)
106#endif
107#if defined(HAVE_DECL_FEOF_UNLOCKED) && !HAVE_DECL_FEOF_UNLOCKED
108# define feof_unlocked(x) feof (x)
109# endif
110#if defined(HAVE_DECL_FERROR_UNLOCKED) && !HAVE_DECL_FERROR_UNLOCKED
111# define ferror_unlocked(x) ferror (x)
112# endif
113#if defined(HAVE_DECL_FFLUSH_UNLOCKED) && !HAVE_DECL_FFLUSH_UNLOCKED
114# define fflush_unlocked(x) fflush (x)
115# endif
116#if defined(HAVE_DECL_FGETS_UNLOCKED) && !HAVE_DECL_FGETS_UNLOCKED
117# define fgets_unlocked(x,y,z) fgets (x,y,z)
118# endif
119#if defined(HAVE_DECL_FPUTC_UNLOCKED) && !HAVE_DECL_FPUTC_UNLOCKED
120# define fputc_unlocked(x,y) fputc (x,y)
121# endif
122#if defined(HAVE_DECL_FPUTS_UNLOCKED) && !HAVE_DECL_FPUTS_UNLOCKED
123# define fputs_unlocked(x,y) fputs (x,y)
124# endif
125#if defined(HAVE_DECL_FREAD_UNLOCKED) && !HAVE_DECL_FREAD_UNLOCKED
126# define fread_unlocked(w,x,y,z) fread (w,x,y,z)
127# endif
128#if defined(HAVE_DECL_FWRITE_UNLOCKED) && !HAVE_DECL_FWRITE_UNLOCKED
129# define fwrite_unlocked(w,x,y,z) fwrite (w,x,y,z)
130# endif
131#if defined(HAVE_DECL_GETC_UNLOCKED) && !HAVE_DECL_GETC_UNLOCKED
132# define getc_unlocked(x) getc (x)
133# endif
134#if defined(HAVE_DECL_GETCHAR_UNLOCKED) && !HAVE_DECL_GETCHAR_UNLOCKED
135# define getchar_unlocked() getchar ()
136# endif
137#if defined(HAVE_DECL_PUTC_UNLOCKED) && !HAVE_DECL_PUTC_UNLOCKED
138# define putc_unlocked(x,y) putc (x,y)
139# endif
140#if defined(HAVE_DECL_PUTCHAR_UNLOCKED) && !HAVE_DECL_PUTCHAR_UNLOCKED
141# define putchar_unlocked(x) putchar (x)
142# endif
143
144#endif /* !_LIBC */
145
146#ifndef __set_errno
147#define __set_errno(e) (errno = (e))
148#endif
149
150#if defined GNULIB_ARGP_DISABLE_DIRNAME
151# define __argp_base_name(arg) arg
152#elif defined GNULIB_ARGP_EXTERN_BASENAME
153extern char *__argp_base_name(const char *arg);
154#else
155# include "dirname.h"
156# define __argp_base_name base_name
157#endif
158
159#if defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
160# define __argp_short_program_name() (program_invocation_short_name)
161#else
162extern char *__argp_short_program_name (void);
163#endif
Note: See TracBrowser for help on using the repository browser.