18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */
28c2ecf20Sopenharmony_ci#ifndef __PERF_CACHE_H
38c2ecf20Sopenharmony_ci#define __PERF_CACHE_H
48c2ecf20Sopenharmony_ci
58c2ecf20Sopenharmony_ci#include "strbuf.h"
68c2ecf20Sopenharmony_ci#include <subcmd/pager.h>
78c2ecf20Sopenharmony_ci#include "../ui/ui.h"
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_ci#include <linux/compiler.h>
108c2ecf20Sopenharmony_ci#include <linux/string.h>
118c2ecf20Sopenharmony_ci
128c2ecf20Sopenharmony_ci#define CMD_EXEC_PATH "--exec-path"
138c2ecf20Sopenharmony_ci#define CMD_DEBUGFS_DIR "--debugfs-dir="
148c2ecf20Sopenharmony_ci
158c2ecf20Sopenharmony_ci#define EXEC_PATH_ENVIRONMENT "PERF_EXEC_PATH"
168c2ecf20Sopenharmony_ci#define PERF_DEBUGFS_ENVIRONMENT "PERF_DEBUGFS_DIR"
178c2ecf20Sopenharmony_ci#define PERF_TRACEFS_ENVIRONMENT "PERF_TRACEFS_DIR"
188c2ecf20Sopenharmony_ci#define PERF_PAGER_ENVIRONMENT "PERF_PAGER"
198c2ecf20Sopenharmony_ci
208c2ecf20Sopenharmony_ciint split_cmdline(char *cmdline, const char ***argv);
218c2ecf20Sopenharmony_ci
228c2ecf20Sopenharmony_ci#define alloc_nr(x) (((x)+16)*3/2)
238c2ecf20Sopenharmony_ci
248c2ecf20Sopenharmony_cistatic inline int is_absolute_path(const char *path)
258c2ecf20Sopenharmony_ci{
268c2ecf20Sopenharmony_ci	return path[0] == '/';
278c2ecf20Sopenharmony_ci}
288c2ecf20Sopenharmony_ci
298c2ecf20Sopenharmony_cichar *mkpath(const char *fmt, ...) __printf(1, 2);
308c2ecf20Sopenharmony_ci
318c2ecf20Sopenharmony_ci#endif /* __PERF_CACHE_H */
32