2022-10-03 15:55:40 -07:00
|
|
|
def CpuSetT : NamedType<"cpu_set_t">;
|
|
|
|
def CpuSetPtr : PtrType<CpuSetT>;
|
|
|
|
def ConstCpuSetPtr : ConstType<CpuSetPtr>;
|
|
|
|
|
2023-06-08 14:04:55 -07:00
|
|
|
def QSortRCompareT : NamedType<"__qsortrcompare_t">;
|
2023-11-28 21:02:25 -05:00
|
|
|
def StructHsearchData : NamedType<"struct hsearch_data">;
|
|
|
|
def StructHsearchDataPtr : PtrType<StructHsearchData>;
|
2023-06-08 14:04:55 -07:00
|
|
|
|
2020-03-24 22:29:11 -07:00
|
|
|
def GnuExtensions : StandardSpec<"GNUExtensions"> {
|
2022-04-19 22:06:07 +00:00
|
|
|
NamedType CookieIOFunctionsT = NamedType<"cookie_io_functions_t">;
|
2021-01-12 22:37:56 +00:00
|
|
|
HeaderSpec CType = HeaderSpec<
|
|
|
|
"ctype.h",
|
|
|
|
[], // Macros
|
|
|
|
[], // Types
|
|
|
|
[], // Enumerations
|
|
|
|
[
|
|
|
|
FunctionSpec<
|
|
|
|
"toascii",
|
|
|
|
RetValSpec<IntType>,
|
|
|
|
[ArgSpec<IntType>]
|
|
|
|
>,
|
|
|
|
]
|
|
|
|
>;
|
|
|
|
|
2020-03-24 22:29:11 -07:00
|
|
|
HeaderSpec Math = HeaderSpec<
|
|
|
|
"math.h",
|
|
|
|
[], // Macros
|
|
|
|
[], // Types
|
|
|
|
[], // Enumerations
|
|
|
|
[
|
|
|
|
FunctionSpec<
|
|
|
|
"sincosf",
|
|
|
|
RetValSpec<VoidType>,
|
|
|
|
[ArgSpec<FloatType>, ArgSpec<FloatPtr>, ArgSpec<FloatPtr>]
|
|
|
|
>,
|
|
|
|
]
|
|
|
|
>;
|
2023-04-12 18:41:33 -05:00
|
|
|
|
2022-09-29 07:57:52 +00:00
|
|
|
HeaderSpec Sched = HeaderSpec<
|
|
|
|
"sched.h",
|
|
|
|
[], // Macros
|
|
|
|
[PidT, SizeTType, CpuSetT], // Types
|
|
|
|
[], // Enumerations
|
|
|
|
[
|
|
|
|
FunctionSpec<
|
|
|
|
"sched_getaffinity",
|
|
|
|
RetValSpec<IntType>,
|
|
|
|
[ArgSpec<PidT>, ArgSpec<SizeTType>, ArgSpec<CpuSetPtr>]
|
|
|
|
>,
|
|
|
|
FunctionSpec<
|
|
|
|
"sched_setaffinity",
|
|
|
|
RetValSpec<IntType>,
|
|
|
|
[ArgSpec<PidT>, ArgSpec<SizeTType>, ArgSpec<ConstCpuSetPtr>]
|
|
|
|
>,
|
|
|
|
]
|
|
|
|
>;
|
2020-07-24 14:31:27 -04:00
|
|
|
HeaderSpec String = HeaderSpec<
|
|
|
|
"string.h",
|
|
|
|
[], // Macros
|
|
|
|
[], // Types
|
|
|
|
[], // Enumerations
|
2023-04-07 22:16:01 +00:00
|
|
|
[
|
|
|
|
FunctionSpec<
|
|
|
|
"memmem",
|
|
|
|
RetValSpec<VoidPtr>,
|
2023-04-11 21:18:29 +00:00
|
|
|
[ArgSpec<ConstVoidPtr>, ArgSpec<SizeTType>, ArgSpec<ConstVoidPtr>, ArgSpec<SizeTType>]
|
2023-04-07 22:16:01 +00:00
|
|
|
>,
|
2020-07-24 14:31:27 -04:00
|
|
|
FunctionSpec<
|
|
|
|
"memrchr",
|
|
|
|
RetValSpec<VoidPtr>,
|
2023-09-29 18:22:00 -05:00
|
|
|
[ArgSpec<ConstVoidPtr>, ArgSpec<IntType>, ArgSpec<SizeTType>]
|
2020-07-24 14:31:27 -04:00
|
|
|
>,
|
2022-10-04 16:47:24 -07:00
|
|
|
FunctionSpec<
|
|
|
|
"strerror_r",
|
|
|
|
RetValSpec<CharPtr>,
|
|
|
|
[ArgSpec<IntType>, ArgSpec<CharPtr>, ArgSpec<SizeTType>]
|
|
|
|
>,
|
2023-01-25 17:58:13 +00:00
|
|
|
FunctionSpec<
|
|
|
|
"strcasestr",
|
|
|
|
RetValSpec<CharPtr>,
|
|
|
|
[ArgSpec<ConstCharPtr>, ArgSpec<ConstCharPtr>]
|
|
|
|
>,
|
2023-04-03 11:04:48 -07:00
|
|
|
FunctionSpec<
|
|
|
|
"strchrnul",
|
|
|
|
RetValSpec<CharPtr>,
|
|
|
|
[ArgSpec<ConstCharPtr>, ArgSpec<IntType>]
|
|
|
|
>,
|
2020-07-24 14:31:27 -04:00
|
|
|
]
|
|
|
|
>;
|
2020-03-24 22:29:11 -07:00
|
|
|
|
2023-11-28 21:02:25 -05:00
|
|
|
HeaderSpec Search = HeaderSpec<
|
|
|
|
"search.h",
|
|
|
|
[], // Macros
|
|
|
|
[
|
|
|
|
StructHsearchData
|
|
|
|
],
|
|
|
|
[], // Enumerations
|
|
|
|
[
|
|
|
|
FunctionSpec<
|
|
|
|
"hcreate_r",
|
|
|
|
RetValSpec<IntType>,
|
2024-02-23 16:34:00 -06:00
|
|
|
[
|
|
|
|
ArgSpec<SizeTType>,
|
2023-11-28 21:02:25 -05:00
|
|
|
ArgSpec<StructHsearchDataPtr>
|
|
|
|
]
|
|
|
|
>,
|
|
|
|
FunctionSpec<
|
|
|
|
"hdestroy_r",
|
|
|
|
RetValSpec<VoidType>,
|
|
|
|
[
|
|
|
|
ArgSpec<StructHsearchDataPtr>
|
|
|
|
]
|
|
|
|
>,
|
|
|
|
FunctionSpec<
|
|
|
|
"hsearch_r",
|
|
|
|
RetValSpec<IntType>,
|
|
|
|
[
|
2024-02-23 16:34:00 -06:00
|
|
|
ArgSpec<EntryType>,
|
2023-11-28 21:02:25 -05:00
|
|
|
ArgSpec<ActionType>,
|
|
|
|
ArgSpec<EntryTypePtrPtr>,
|
|
|
|
ArgSpec<StructHsearchDataPtr>
|
|
|
|
]
|
|
|
|
>,
|
|
|
|
]
|
|
|
|
>;
|
|
|
|
|
2021-09-09 19:11:54 +00:00
|
|
|
HeaderSpec FEnv = HeaderSpec<
|
|
|
|
"fenv.h",
|
|
|
|
[], // Macros
|
|
|
|
[], // Types
|
|
|
|
[], // Enumerations
|
|
|
|
[
|
|
|
|
FunctionSpec<
|
|
|
|
"fedisableexcept",
|
|
|
|
RetValSpec<IntType>,
|
|
|
|
[ArgSpec<IntType>]
|
|
|
|
>,
|
|
|
|
FunctionSpec<
|
|
|
|
"feenableexcept",
|
|
|
|
RetValSpec<IntType>,
|
|
|
|
[ArgSpec<IntType>]
|
|
|
|
>,
|
|
|
|
FunctionSpec<
|
|
|
|
"fegetexcept",
|
|
|
|
RetValSpec<IntType>,
|
|
|
|
[]
|
|
|
|
>
|
|
|
|
]
|
|
|
|
>;
|
2021-01-12 22:37:56 +00:00
|
|
|
|
2022-04-19 07:36:43 +00:00
|
|
|
HeaderSpec StdIO = HeaderSpec<
|
|
|
|
"stdio.h",
|
|
|
|
[], // Macros
|
2022-04-19 22:06:07 +00:00
|
|
|
[CookieIOFunctionsT], // Types
|
2022-04-19 07:36:43 +00:00
|
|
|
[], // Enumerations
|
|
|
|
[
|
2022-04-22 23:32:42 +00:00
|
|
|
FunctionSpec<
|
|
|
|
"clearerr_unlocked",
|
|
|
|
RetValSpec<VoidType>,
|
|
|
|
[ArgSpec<FILEPtr>]
|
|
|
|
>,
|
|
|
|
FunctionSpec<
|
|
|
|
"feof_unlocked",
|
|
|
|
RetValSpec<IntType>,
|
|
|
|
[ArgSpec<FILEPtr>]
|
|
|
|
>,
|
|
|
|
FunctionSpec<
|
|
|
|
"ferror_unlocked",
|
|
|
|
RetValSpec<IntType>,
|
|
|
|
[ArgSpec<FILEPtr>]
|
|
|
|
>,
|
2022-04-19 22:06:07 +00:00
|
|
|
FunctionSpec<
|
|
|
|
"fopencookie",
|
|
|
|
RetValSpec<FILEPtr>,
|
|
|
|
[ArgSpec<VoidPtr>, ArgSpec<ConstCharPtr>, ArgSpec<CookieIOFunctionsT>]
|
|
|
|
>,
|
2022-04-19 07:36:43 +00:00
|
|
|
FunctionSpec<
|
|
|
|
"fread_unlocked",
|
|
|
|
RetValSpec<SizeTType>,
|
|
|
|
[ArgSpec<VoidRestrictedPtr>,
|
|
|
|
ArgSpec<SizeTType>,
|
|
|
|
ArgSpec<SizeTType>,
|
|
|
|
ArgSpec<FILERestrictedPtr>]
|
|
|
|
>,
|
|
|
|
FunctionSpec<
|
|
|
|
"fwrite_unlocked",
|
|
|
|
RetValSpec<SizeTType>,
|
|
|
|
[ArgSpec<ConstVoidRestrictedPtr>,
|
|
|
|
ArgSpec<SizeTType>,
|
|
|
|
ArgSpec<SizeTType>,
|
|
|
|
ArgSpec<FILERestrictedPtr>]
|
|
|
|
>,
|
2022-11-06 06:25:15 +00:00
|
|
|
FunctionSpec<
|
|
|
|
"fgetc_unlocked",
|
|
|
|
RetValSpec<IntType>,
|
|
|
|
[ArgSpec<FILEPtr>]
|
|
|
|
>,
|
2022-04-19 07:36:43 +00:00
|
|
|
]
|
2022-04-19 22:06:07 +00:00
|
|
|
>;
|
2022-04-19 07:36:43 +00:00
|
|
|
|
2023-06-08 14:04:55 -07:00
|
|
|
HeaderSpec StdLib = HeaderSpec<
|
|
|
|
"stdlib.h",
|
|
|
|
[], // Macros
|
|
|
|
[QSortRCompareT], // Types
|
|
|
|
[], // Enumerations
|
|
|
|
[
|
|
|
|
FunctionSpec<
|
2024-02-23 16:34:00 -06:00
|
|
|
"qsort_r",
|
|
|
|
RetValSpec<VoidType>,
|
2023-06-08 14:04:55 -07:00
|
|
|
[ArgSpec<VoidPtr>, ArgSpec<SizeTType>, ArgSpec<SizeTType>, ArgSpec<QSortRCompareT>, ArgSpec<VoidPtr>]
|
|
|
|
>,
|
|
|
|
]
|
|
|
|
>;
|
|
|
|
|
2022-07-29 19:50:35 +00:00
|
|
|
HeaderSpec PThread = HeaderSpec<
|
|
|
|
"pthread.h",
|
|
|
|
[], // Macros
|
|
|
|
[], // Types
|
|
|
|
[], // Enumerations
|
|
|
|
[
|
|
|
|
FunctionSpec<
|
|
|
|
"pthread_setname_np",
|
|
|
|
RetValSpec<IntType>,
|
|
|
|
[ArgSpec<PThreadTType>, ArgSpec<ConstCharPtr>]
|
|
|
|
>,
|
|
|
|
FunctionSpec<
|
|
|
|
"pthread_getname_np",
|
|
|
|
RetValSpec<IntType>,
|
|
|
|
[ArgSpec<PThreadTType>, ArgSpec<CharPtr>, ArgSpec<SizeTType>]
|
|
|
|
>,
|
|
|
|
]
|
|
|
|
>;
|
|
|
|
|
2022-10-11 15:30:07 -07:00
|
|
|
HeaderSpec SysAuxv = HeaderSpec<
|
|
|
|
"sys/auxv.h",
|
|
|
|
[], // Macros
|
|
|
|
[], // Types
|
|
|
|
[], // Enumerations
|
2024-01-30 10:07:47 -08:00
|
|
|
[
|
|
|
|
//TODO: Add getauxval here
|
|
|
|
] // Functions
|
2022-10-11 15:30:07 -07:00
|
|
|
>;
|
|
|
|
|
2022-08-25 22:30:30 +00:00
|
|
|
HeaderSpec SendFile = HeaderSpec<
|
|
|
|
"sys/sendfile.h",
|
|
|
|
[], // Macros
|
|
|
|
[OffTType, SizeTType, SSizeTType,], // Types
|
|
|
|
[], // Enumerations
|
|
|
|
[
|
|
|
|
FunctionSpec<
|
|
|
|
"sendfile",
|
|
|
|
RetValSpec<SSizeTType>,
|
|
|
|
[ArgSpec<IntType>, ArgSpec<IntType>, ArgSpec<OffTPtr>, ArgSpec<SizeTType>]
|
|
|
|
>,
|
|
|
|
]
|
|
|
|
>;
|
|
|
|
|
2022-09-13 06:01:54 +00:00
|
|
|
HeaderSpec UniStd = HeaderSpec<
|
|
|
|
"unistd.h",
|
|
|
|
[], // Macros
|
|
|
|
[], // Types
|
|
|
|
[], // Enumerations
|
|
|
|
[
|
|
|
|
FunctionSpec<
|
|
|
|
"dup2",
|
|
|
|
RetValSpec<IntType>,
|
|
|
|
[ArgSpec<IntType>, ArgSpec<IntType>, ArgSpec<IntType>]
|
|
|
|
>,
|
|
|
|
]
|
|
|
|
>;
|
|
|
|
|
2020-03-24 22:29:11 -07:00
|
|
|
let Headers = [
|
2021-01-12 22:37:56 +00:00
|
|
|
CType,
|
2021-09-09 19:11:54 +00:00
|
|
|
FEnv,
|
2022-04-19 07:36:43 +00:00
|
|
|
Math,
|
2022-07-29 19:50:35 +00:00
|
|
|
PThread,
|
2022-09-29 07:57:52 +00:00
|
|
|
Sched,
|
2022-08-25 22:30:30 +00:00
|
|
|
SendFile,
|
2022-10-11 15:30:07 -07:00
|
|
|
SysAuxv,
|
2022-04-19 07:36:43 +00:00
|
|
|
StdIO,
|
2023-06-08 14:04:55 -07:00
|
|
|
StdLib,
|
2021-01-12 22:37:56 +00:00
|
|
|
String,
|
2023-11-28 21:02:25 -05:00
|
|
|
Search,
|
2022-09-13 06:01:54 +00:00
|
|
|
UniStd,
|
2020-03-24 22:29:11 -07:00
|
|
|
];
|
|
|
|
}
|