2009-09-24 18:02:18 +02:00
# ifndef __PERF_CACHE_H
# define __PERF_CACHE_H
2009-04-20 15:00:56 +02:00
2010-03-11 20:12:44 -03:00
# include <stdbool.h>
2009-04-20 15:00:56 +02:00
# include "util.h"
# include "strbuf.h"
2015-12-15 09:39:39 -06:00
# include <subcmd/pager.h>
2009-07-01 12:37:06 +02:00
# include "../perf.h"
2012-11-13 22:30:35 +09:00
# include "../ui/ui.h"
2009-04-20 15:00:56 +02:00
2015-12-15 09:39:33 -06:00
# include <linux/string.h>
2009-10-13 10:18:16 +02:00
# define CMD_EXEC_PATH "--exec-path"
# define CMD_PERF_DIR "--perf-dir="
# define CMD_WORK_TREE "--work-tree="
# define CMD_DEBUGFS_DIR "--debugfs-dir="
2009-04-20 15:00:56 +02:00
# define PERF_DIR_ENVIRONMENT "PERF_DIR"
# define PERF_WORK_TREE_ENVIRONMENT "PERF_WORK_TREE"
# define EXEC_PATH_ENVIRONMENT "PERF_EXEC_PATH"
2010-05-18 18:29:23 -03:00
# define DEFAULT_PERF_DIR_ENVIRONMENT ".perf"
2009-07-21 14:16:29 -04:00
# define PERF_DEBUGFS_ENVIRONMENT "PERF_DEBUGFS_DIR"
2015-02-02 14:35:07 -05:00
# define PERF_TRACEFS_ENVIRONMENT "PERF_TRACEFS_DIR"
2015-12-15 09:39:35 -06:00
# define PERF_PAGER_ENVIRONMENT "PERF_PAGER"
2009-04-20 15:00:56 +02:00
2016-02-11 02:51:17 +09:00
extern const char * config_exclusive_filename ;
2009-04-20 15:00:56 +02:00
typedef int ( * config_fn_t ) ( const char * , const char * , void * ) ;
2016-03-23 15:06:35 -03:00
int perf_default_config ( const char * , const char * , void * ) ;
int perf_config ( config_fn_t fn , void * ) ;
int perf_config_int ( const char * , const char * ) ;
u64 perf_config_u64 ( const char * , const char * ) ;
int perf_config_bool ( const char * , const char * ) ;
int config_error_nonbool ( const char * ) ;
const char * perf_config_dirname ( const char * , const char * ) ;
const char * perf_etc_perfconfig ( void ) ;
2009-04-20 15:00:56 +02:00
char * alias_lookup ( const char * alias ) ;
int split_cmdline ( char * cmdline , const char * * * argv ) ;
# define alloc_nr(x) (((x)+16)*3 / 2)
static inline int is_absolute_path ( const char * path )
{
return path [ 0 ] = = ' / ' ;
}
2009-04-20 15:22:22 +02:00
char * strip_path_suffix ( const char * path , const char * suffix ) ;
2016-03-23 15:06:35 -03:00
char * mkpath ( const char * fmt , . . . ) __attribute__ ( ( format ( printf , 1 , 2 ) ) ) ;
char * perf_path ( const char * fmt , . . . ) __attribute__ ( ( format ( printf , 1 , 2 ) ) ) ;
2009-04-20 15:22:22 +02:00
2009-09-24 18:02:18 +02:00
# endif /* __PERF_CACHE_H */