xref: /linux/tools/perf/ui/libslang.h (revision 24bce201d79807b668bf9d9e0aca801c5c0d5f78)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef _PERF_UI_SLANG_H_
3 #define _PERF_UI_SLANG_H_ 1
4 /*
5  * slang versions <= 2.0.6 have a "#if HAVE_LONG_LONG" that breaks
6  * the build if it isn't defined. Use the equivalent one that glibc
7  * has on features.h.
8  */
9 #include <features.h>
10 #ifndef HAVE_LONG_LONG
11 #define HAVE_LONG_LONG __GLIBC_HAVE_LONG_LONG
12 #endif
13 
14 #ifdef HAVE_SLANG_INCLUDE_SUBDIR
15 #include <slang/slang.h>
16 #else
17 #include <slang.h>
18 #endif
19 
20 #if SLANG_VERSION < 20104
21 #define slsmg_printf(msg, args...) \
22 	SLsmg_printf((char *)(msg), ##args)
23 #define slsmg_vprintf(msg, vargs) \
24 	SLsmg_vprintf((char *)(msg), vargs)
25 #define slsmg_write_nstring(msg, len) \
26 	SLsmg_write_nstring((char *)(msg), len)
27 #define sltt_set_color(obj, name, fg, bg) \
28 	SLtt_set_color(obj,(char *)(name), (char *)(fg), (char *)(bg))
29 #else
30 #define slsmg_printf SLsmg_printf
31 #define slsmg_vprintf SLsmg_vprintf
32 #define slsmg_write_nstring SLsmg_write_nstring
33 #define sltt_set_color SLtt_set_color
34 #endif
35 
36 #define SL_KEY_UNTAB 0x1000
37 
38 #endif /* _PERF_UI_SLANG_H_ */
39