ReactOS
0.4.16-dev-336-gb667d82
ftstdlib.h
Go to the documentation of this file.
1
/***************************************************************************/
2
/* */
3
/* ftstdlib.h */
4
/* */
5
/* ANSI-specific library and header configuration file (specification */
6
/* only). */
7
/* */
8
/* Copyright 2002-2018 by */
9
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
10
/* */
11
/* This file is part of the FreeType project, and may only be used, */
12
/* modified, and distributed under the terms of the FreeType project */
13
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
14
/* this file you indicate that you have read the license and */
15
/* understand and accept it fully. */
16
/* */
17
/***************************************************************************/
18
19
20
/*************************************************************************/
21
/* */
22
/* This file is used to group all #includes to the ANSI C library that */
23
/* FreeType normally requires. It also defines macros to rename the */
24
/* standard functions within the FreeType source code. */
25
/* */
26
/* Load a file which defines FTSTDLIB_H_ before this one to override it. */
27
/* */
28
/*************************************************************************/
29
30
31
#ifndef FTSTDLIB_H_
32
#define FTSTDLIB_H_
33
34
35
#include <stddef.h>
36
37
#define ft_ptrdiff_t ptrdiff_t
38
39
40
/**********************************************************************/
41
/* */
42
/* integer limits */
43
/* */
44
/* UINT_MAX and ULONG_MAX are used to automatically compute the size */
45
/* of `int' and `long' in bytes at compile-time. So far, this works */
46
/* for all platforms the library has been tested on. */
47
/* */
48
/* Note that on the extremely rare platforms that do not provide */
49
/* integer types that are _exactly_ 16 and 32 bits wide (e.g. some */
50
/* old Crays where `int' is 36 bits), we do not make any guarantee */
51
/* about the correct behaviour of FT2 with all fonts. */
52
/* */
53
/* In these case, `ftconfig.h' will refuse to compile anyway with a */
54
/* message like `couldn't find 32-bit type' or something similar. */
55
/* */
56
/**********************************************************************/
57
58
59
#include <limits.h>
60
61
#define FT_CHAR_BIT CHAR_BIT
62
#define FT_USHORT_MAX USHRT_MAX
63
#define FT_INT_MAX INT_MAX
64
#define FT_INT_MIN INT_MIN
65
#define FT_UINT_MAX UINT_MAX
66
#define FT_LONG_MIN LONG_MIN
67
#define FT_LONG_MAX LONG_MAX
68
#define FT_ULONG_MAX ULONG_MAX
69
70
71
/**********************************************************************/
72
/* */
73
/* character and string processing */
74
/* */
75
/**********************************************************************/
76
77
78
#include <string.h>
79
80
#define ft_memchr memchr
81
#define ft_memcmp memcmp
82
#define ft_memcpy memcpy
83
#define ft_memmove memmove
84
#define ft_memset memset
85
#define ft_strcat strcat
86
#define ft_strcmp strcmp
87
#define ft_strcpy strcpy
88
#define ft_strlen strlen
89
#define ft_strncmp strncmp
90
#define ft_strncpy strncpy
91
#define ft_strrchr strrchr
92
#define ft_strstr strstr
93
94
95
/**********************************************************************/
96
/* */
97
/* file handling */
98
/* */
99
/**********************************************************************/
100
101
102
#include <stdio.h>
103
104
#define FT_FILE FILE
105
#define ft_fclose fclose
106
#define ft_fopen fopen
107
#define ft_fread fread
108
#define ft_fseek fseek
109
#define ft_ftell ftell
110
#define ft_sprintf sprintf
111
112
113
/**********************************************************************/
114
/* */
115
/* sorting */
116
/* */
117
/**********************************************************************/
118
119
120
#include <stdlib.h>
121
122
#define ft_qsort qsort
123
124
125
/**********************************************************************/
126
/* */
127
/* memory allocation */
128
/* */
129
/**********************************************************************/
130
131
132
#define ft_scalloc calloc
133
#define ft_sfree free
134
#define ft_smalloc malloc
135
#define ft_srealloc realloc
136
137
138
/**********************************************************************/
139
/* */
140
/* miscellaneous */
141
/* */
142
/**********************************************************************/
143
144
145
#define ft_strtol strtol
146
#define ft_getenv getenv
147
148
149
/**********************************************************************/
150
/* */
151
/* execution control */
152
/* */
153
/**********************************************************************/
154
155
156
#include <setjmp.h>
157
158
#define ft_jmp_buf jmp_buf
/* note: this cannot be a typedef since */
159
/* jmp_buf is defined as a macro */
160
/* on certain platforms */
161
162
#define ft_longjmp longjmp
163
#define ft_setjmp( b ) setjmp( *(ft_jmp_buf*) &(b) )
/* same thing here */
164
165
166
/* the following is only used for debugging purposes, i.e., if */
167
/* FT_DEBUG_LEVEL_ERROR or FT_DEBUG_LEVEL_TRACE are defined */
168
169
#include <stdarg.h>
170
171
172
#endif
/* FTSTDLIB_H_ */
173
174
175
/* END */
sdk
lib
3rdparty
freetype
include
freetype
config
ftstdlib.h
Generated on Tue Dec 10 2024 06:12:53 for ReactOS by
1.9.6