summaryrefslogtreecommitdiffstats
path: root/tools/perf/util/pager.c
diff options
context:
space:
mode:
authorJosh Poimboeuf <jpoimboe@redhat.com>2015-12-15 09:39:35 -0600
committerArnaldo Carvalho de Melo <acme@redhat.com>2015-12-16 16:18:16 -0300
commit096d35585b4fce7d3ee9b8b34314f39f49491ab1 (patch)
tree943117cf4968b21676cea2ba7d1c65d0d74370e2 /tools/perf/util/pager.c
parent24a88bdd05d5de32f3a56a4dcc5070c97d4a514f (diff)
downloadop-kernel-dev-096d35585b4fce7d3ee9b8b34314f39f49491ab1.zip
op-kernel-dev-096d35585b4fce7d3ee9b8b34314f39f49491ab1.tar.gz
perf tools: Provide subcmd configuration at runtime
Create init functions for exec_cmd.c and pager.c. This allows their configuration to be specified at runtime so they can be split out into a separate library which can be used by other programs. Their configuration is stored in a shared subcmd_config struct. Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com> Cc: Jiri Olsa <jolsa@redhat.com> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Peter Zijlstra <peterz@infradead.org> Link: http://lkml.kernel.org/r/21f5f6b38da72c985a8dcfa185700d03e7eecd1d.1450193761.git.jpoimboe@redhat.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/util/pager.c')
-rw-r--r--tools/perf/util/pager.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/tools/perf/util/pager.c b/tools/perf/util/pager.c
index 7dcbef6..d5ef62e 100644
--- a/tools/perf/util/pager.c
+++ b/tools/perf/util/pager.c
@@ -1,6 +1,7 @@
#include "cache.h"
#include "run-command.h"
#include "sigchain.h"
+#include "subcmd-config.h"
/*
* This is split up from the rest of git so that we can do
@@ -9,6 +10,11 @@
static int spawned_pager;
+void pager_init(const char *pager_env)
+{
+ subcmd_config.pager_env = pager_env;
+}
+
static void pager_preexec(void)
{
/*
@@ -46,7 +52,7 @@ static void wait_for_pager_signal(int signo)
void setup_pager(void)
{
- const char *pager = getenv("PERF_PAGER");
+ const char *pager = getenv(subcmd_config.pager_env);
if (!isatty(1))
return;
OpenPOWER on IntegriCloud