A modern Music Player Daemon based on Rockbox open source high quality audio player
libadwaita
audio
rust
zig
deno
mpris
rockbox
mpd
1#ifndef __RBCOMPAT_H__
2#define __RBCOMPAT_H__
3
4#include "plugin.h"
5#include "rbassert.h"
6#include "lib/pluginlib_exit.h"
7#include "lib/stdio_compat.h"
8
9#include <tlsf.h>
10
11#undef STR
12
13int sprintf_wrapper(char *str, const char *fmt, ...);
14char *getenv_wrapper(const char *c);
15int puts_wrapper(const char *s);
16double sin_wrapper(double rads);
17double cos_wrapper(double rads);
18int vsprintf_wrapper(char *s, const char *fmt, va_list ap);
19float fabs_wrapper(float n);
20float floor_wrapper(float n);
21
22float atan_wrapper(float x);
23float atan2_wrapper(float y, float x);
24float sqrt_wrapper(float x);
25long strtol_wrapper(const char *nptr, char **endptr, int base);
26int64_t strtoq_wrapper(const char *nptr, char **endptr, int base);
27uint64_t strtouq_wrapper(const char *nptr, char **endptr, int base);
28float pow_wrapper(float x, float y);
29float ceil_wrapper(float x);
30
31size_t strspn_wrapper(const char *s1, const char *s2);
32size_t strcspn_wrapper(const char *s1, const char *s2);
33int sscanf_wrapper(const char *ibuf, const char *fmt, ...);
34double atof_wrapper(const char *s);
35double acos_wrapper(double x);
36
37#define NO_TGMATH_H
38
39#define acos acos_wrapper
40#define atan atan_wrapper
41#define atan2 atan2_wrapper
42#define atof atof_wrapper
43#define atoi rb->atoi
44#define atol atoi
45#define calloc tlsf_calloc
46#define ceil ceil_wrapper
47#define cos cos_wrapper
48#define fabs fabs_wrapper
49#define floor floor_wrapper
50#define free tlsf_free
51#define getenv getenv_wrapper
52#define malloc tlsf_malloc
53#define memchr rb->memchr
54#define memswap puzzles_memswap
55#define pow pow_wrapper
56#define printf LOGF
57#define puts puts_wrapper
58#define qsort rb->qsort
59#define realloc tlsf_realloc
60#define sin sin_wrapper
61#define sprintf sprintf_wrapper
62#define sqrt sqrt_wrapper
63#define sscanf sscanf_wrapper
64#define strcat rb->strcat
65#define strchr rb->strchr
66#define strcmp rb->strcmp
67#define strcpy rb->strcpy
68#define strlen rb->strlen
69#define strtol strtol_wrapper
70#define strtoq strtoq_wrapper
71#define strtouq strtouq_wrapper
72#define vsprintf vsprintf_wrapper
73
74#ifndef strcspn
75#define strcspn strcspn_wrapper
76#endif
77
78#ifndef strspn /* gcc has builtin */
79#define strspn strspn_wrapper
80#endif
81
82#define abs(x) ((x)<0?-(x):(x))
83#define labs abs
84
85#endif