~ubuntu-branches/ubuntu/trusty/mariadb-5.5/trusty-proposed

« back to all changes in this revision

Viewing changes to cmd-line-utils/libedit/sys.h

  • Committer: Package Import Robot
  • Author(s): Otto Kekäläinen
  • Date: 2013-12-22 10:27:05 UTC
  • Revision ID: package-import@ubuntu.com-20131222102705-mndw7s12mz0szrcn
Tags: upstream-5.5.32
Import upstream version 5.5.32

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*      $NetBSD: sys.h,v 1.17 2011/09/28 14:08:04 christos Exp $        */
 
2
 
 
3
/*-
 
4
 * Copyright (c) 1992, 1993
 
5
 *      The Regents of the University of California.  All rights reserved.
 
6
 *
 
7
 * This code is derived from software contributed to Berkeley by
 
8
 * Christos Zoulas of Cornell University.
 
9
 *
 
10
 * Redistribution and use in source and binary forms, with or without
 
11
 * modification, are permitted provided that the following conditions
 
12
 * are met:
 
13
 * 1. Redistributions of source code must retain the above copyright
 
14
 *    notice, this list of conditions and the following disclaimer.
 
15
 * 2. Redistributions in binary form must reproduce the above copyright
 
16
 *    notice, this list of conditions and the following disclaimer in the
 
17
 *    documentation and/or other materials provided with the distribution.
 
18
 * 3. Neither the name of the University nor the names of its contributors
 
19
 *    may be used to endorse or promote products derived from this software
 
20
 *    without specific prior written permission.
 
21
 *
 
22
 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 
23
 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 
24
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 
25
 * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 
26
 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 
27
 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 
28
 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 
29
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 
30
 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 
31
 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 
32
 * SUCH DAMAGE.
 
33
 *
 
34
 *      @(#)sys.h       8.1 (Berkeley) 6/4/93
 
35
 */
 
36
 
 
37
/*
 
38
 * sys.h: Put all the stupid compiler and system dependencies here...
 
39
 */
 
40
#ifndef _h_sys
 
41
#define _h_sys
 
42
 
 
43
#ifdef __linux__
 
44
/* Apparently we need _GNU_SOURCE defined to get access to wcsdup on Linux */
 
45
#ifndef _GNU_SOURCE
 
46
#define _GNU_SOURCE
 
47
#endif
 
48
#endif
 
49
 
 
50
#ifndef __USE_XOPEN
 
51
#define __USE_XOPEN
 
52
#endif
 
53
 
 
54
#ifdef HAVE_SYS_CDEFS_H
 
55
#include <sys/cdefs.h>
 
56
#endif
 
57
 
 
58
#if !defined(__attribute__) && (defined(__cplusplus) || !defined(__GNUC__)  || __GNUC__ == 2 && __GNUC_MINOR__ < 8)
 
59
# define __attribute__(A)
 
60
#endif
 
61
 
 
62
#ifndef __BEGIN_DECLS
 
63
# ifdef  __cplusplus
 
64
#  define __BEGIN_DECLS  extern "C" {
 
65
#  define __END_DECLS    }
 
66
# else
 
67
#  define __BEGIN_DECLS
 
68
#  define __END_DECLS
 
69
# endif
 
70
#endif
 
71
 
 
72
#ifndef public
 
73
# define public         /* Externally visible functions/variables */
 
74
#endif
 
75
 
 
76
#ifndef private
 
77
# define private        static  /* Always hidden internals */
 
78
#endif
 
79
 
 
80
#ifndef protected
 
81
# define protected      /* Redefined from elsewhere to "static" */
 
82
                        /* When we want to hide everything      */
 
83
#endif
 
84
 
 
85
#ifndef __arraycount
 
86
# define __arraycount(a) (sizeof(a) / sizeof(*(a)))
 
87
#endif
 
88
 
 
89
#include <stdio.h>
 
90
 
 
91
#ifndef HAVE_STRLCAT
 
92
#define strlcat libedit_strlcat
 
93
size_t  strlcat(char *dst, const char *src, size_t size);
 
94
#endif
 
95
 
 
96
#ifndef HAVE_STRLCPY
 
97
#define strlcpy libedit_strlcpy
 
98
size_t  strlcpy(char *dst, const char *src, size_t size);
 
99
#endif
 
100
 
 
101
#ifndef HAVE_FGETLN
 
102
#define fgetln libedit_fgetln
 
103
char    *fgetln(FILE *fp, size_t *len);
 
104
#endif
 
105
 
 
106
#include <wchar.h>
 
107
#include <wctype.h>
 
108
 
 
109
#ifndef HAVE_WCSDUP
 
110
wchar_t *wcsdup(const wchar_t *);
 
111
#endif
 
112
 
 
113
#ifndef _DIAGASSERT
 
114
#define _DIAGASSERT(x)
 
115
#endif
 
116
 
 
117
#ifndef __RCSID
 
118
#define __RCSID(x)
 
119
#endif
 
120
 
 
121
#ifndef HAVE_U_INT32_T
 
122
typedef unsigned int    u_int32_t;
 
123
#endif
 
124
 
 
125
#ifndef SIZE_T_MAX
 
126
#define SIZE_T_MAX      ((size_t)-1)
 
127
#endif
 
128
 
 
129
#define REGEX           /* Use POSIX.2 regular expression functions */
 
130
#undef  REGEXP          /* Use UNIX V8 regular expression functions */
 
131
 
 
132
#if defined(__sun)
 
133
extern int tgetent(char *, const char *);
 
134
extern int tgetflag(char *);
 
135
extern int tgetnum(char *);
 
136
extern int tputs(const char *, int, int (*)(int));
 
137
extern char* tgoto(const char*, int, int);
 
138
extern char* tgetstr(char*, char**);
 
139
#endif
 
140
 
 
141
/* XXXMYSQL: Bug#10218 Command line recall rolls into segfault */
 
142
#if !HAVE_DECL_TGOTO
 
143
/*
 
144
 'tgoto' is not declared in the system header files, this causes
 
145
 problems on 64-bit systems. The function returns a 64 bit pointer
 
146
 but caller see it as "int" and it's thus truncated to 32-bit
 
147
*/
 
148
extern char* tgoto(const char*, int, int);
 
149
#endif
 
150
 
 
151
#ifdef notdef
 
152
# undef REGEX
 
153
# undef REGEXP
 
154
# include <malloc.h>
 
155
# ifdef __GNUC__
 
156
/*
 
157
 * Broken hdrs.
 
158
 */
 
159
extern int      tgetent(const char *bp, char *name);
 
160
extern int      tgetflag(const char *id);
 
161
extern int      tgetnum(const char *id);
 
162
extern char    *tgetstr(const char *id, char **area);
 
163
extern char    *tgoto(const char *cap, int col, int row);
 
164
extern int      tputs(const char *str, int affcnt, int (*putc)(int));
 
165
extern char    *getenv(const char *);
 
166
extern int      fprintf(FILE *, const char *, ...);
 
167
extern int      sigsetmask(int);
 
168
extern int      sigblock(int);
 
169
extern int      fputc(int, FILE *);
 
170
extern int      fgetc(FILE *);
 
171
extern int      fflush(FILE *);
 
172
extern int      tolower(int);
 
173
extern int      toupper(int);
 
174
extern int      errno, sys_nerr;
 
175
extern char     *sys_errlist[];
 
176
extern void     perror(const char *);
 
177
#  include <string.h>
 
178
#  define strerror(e)   sys_errlist[e]
 
179
# endif
 
180
# ifdef SABER
 
181
extern void *   memcpy(void *, const void *, size_t);
 
182
extern void *   memset(void *, int, size_t);
 
183
# endif
 
184
extern char    *fgetline(FILE *, int *);
 
185
#endif
 
186
 
 
187
#endif /* _h_sys */