aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/a_embedfilesdir.c
blob: d07bb8722d8c04b900eb4747783115be2a588f73 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
#include <stddef.h>

#define S(s) s"\0\0\0\0\0", (sizeof s) - 1

struct EmbedFile {
   const char *name;
   const char *s;
   size_t len;
} embedfilesdir[] = {
{"stddef.h", S("\
#pragma once\n\
typedef __PTRDIFF_TYPE__ ptrdiff_t;\n\
typedef __SIZE_TYPE__ size_t;\n\
typedef __WCHAR_TYPE__ wchar_t;\n\
#undef NULL\n\
#define NULL ((void*)0)\n\
#undef offsetof\n\
#define offsetof(type, memb) ((size_t)((char *)&((type *)0)->memb - (char *)0))\n\
")},

{"stdarg.h", S("\
#pragma once\n\
typedef __builtin_va_list va_list;\n\
#ifndef __GNUC_VA_LIST\n\
#define __GNUC_VA_LIST\n\
typedef __builtin_va_list __gnuc_va_list;\n\
#endif\n\
#define va_start(ap,n)   __builtin_va_start(ap)\n\
#define va_arg(ap,type)  __builtin_va_arg(ap, type)\n\
#define va_copy(dst,src) __builtin_va_copy(dst, src)\n\
#define va_end(ap)       __builtin_va_end(ap)\n\
")},

{"stdbool.h", S("\
#pragma once\n\
#if __STDC_VERSION__ < 202311L /* in C23 they are keywords */\n\
#define bool _Bool \n\
#define true 1\n\
#define false 0\n\
#endif\n\
#define __bool_true_false_are_defined 1\n\
")},

{"float.h", S("\
#pragma once\n\
#define FLT_ROUNDS       (-1)\n\
#define FLT_EVAL_METHOD  (-1)\n\
#define FLT_HAS_SUBNORM  (-1)\n\
#define DBL_HAS_SUBNORM  (-1)\n\
#define LDBL_HAS_SUBNORM (-1)\n\
#define FLT_RADIX        2\n\
#define FLT_MANT_DIG     24\n\
#define DBL_MANT_DIG     53\n\
#define LDBL_MANT_DIG    53\n\
#define FLT_DECIMAL_DIG  9\n\
#define DBL_DECIMAL_DIG  17\n\
#define LDBL_DECIMAL_DIG 17\n\
#define DECIMAL_DIG      17\n\
#define FLT_DIG          6\n\
#define DBL_DIG          15\n\
#define LDBL_DIG         15\n\
#define FLT_MIN_EXP      (-125)\n\
#define DBL_MIN_EXP      (-1021)\n\
#define LDBL_MIN_EXP     (-1021)\n\
#define FLT_MIN_10_EXP   (-37)\n\
#define DBL_MIN_10_EXP   (-307)\n\
#define LDBL_MIN_10_EXP  (-307)\n\
#define FLT_MAX_EXP      128\n\
#define DBL_MAX_EXP      1024\n\
#define LDBL_MAX_EXP     1024\n\
#define FLT_MAX_10_EXP   38\n\
#define DBL_MAX_10_EXP   308\n\
#define LDBL_MAX_10_EXP  308\n\
#define FLT_MAX          3.40282e+38\n\
#define DBL_MAX          1.79769e+308\n\
#define LDBL_MAX         1.79769e+308\n\
#define FLT_EPSILON      1.19209e-07\n\
#define DBL_EPSILON      2.22045e-16\n\
#define LDBL_EPSILON     2.22045e-16\n\
#define FLT_MIN          1.17549e-38\n\
#define DBL_MIN          2.22507e-308\n\
#define LDBL_MIN         2.22507e-308\n\
#define FLT_TRUE_MIN     1.4013e-45\n\
#define DBL_TRUE_MIN     4.94066e-324\n\
#define LDBL_TRUE_MIN    4.94066e-324\n\
")},

{"iso646.h", S("\
#define and     &&\
#define and_eq  &=\
#define bitand  &\
#define bitor   |\
#define compl   ~\
#define not     !\
#define not_eq  !=\
#define or      ||\
#define or_eq   |=\
#define xor     ^\
#define xor_eq  ^=\
")},

{"stdnoreturn.h", S("\
#define noreturn _Noreturn\n\
")},

{"stdalign.h", S("\
#if __STDC_VERSION__ < 202311L\n\
#define alignas _Alignas\n\
#define alignof _Alignof\n\
#define __alignas_is_defined 1\n\
#define __alignof_is_defined 1\n\
#endif\n\
")},

   {NULL}
};

/* vim:set ts=3 sw=3 expandtab: */