From: Alexis Berlemont <alexis.berlemont@gmail.com>
To: linux-kernel@vger.kernel.org
Cc: Jiri Olsa <jolsa@redhat.com>,
dsahern@gmail.com, mingo@kernel.org, sam@ravnborg.org,
mmarek@suse.cz, namhyung@kernel.org,
Arnaldo Carvalho de Melo <acme@ghostprotocols.net>,
Peter Zijlstra <a.p.zijlstra@chello.nl>,
Ingo Molnar <mingo@elte.hu>, Paul Mackerras <paulus@samba.org>,
Corey Ashford <cjashfor@linux.vnet.ibm.com>,
Frederic Weisbecker <fweisbec@gmail.com>,
Borislav Petkov <bp@alien8.de>,
linux-kbuild@vger.kernel.org,
Stephane Eranian <eranian@google.com>
Subject: [PATCH 03/13] perf tools: Kbuild source related fixies
Date: Wed, 25 Jun 2014 00:47:50 +0200 [thread overview]
Message-ID: <1403650080-3130-4-git-send-email-alexis.berlemont@gmail.com> (raw)
In-Reply-To: <1403650080-3130-1-git-send-email-alexis.berlemont@gmail.com>
In-Reply-To: <CAMesUR4175wXt-Pov8Yu-ke7KG4FRaBCTYouCs=jK3n0CWi3zw@mail.gmail.com>
From: Jiri Olsa <jolsa@redhat.com>
Fixing several sources config dependencies to allow
separate config builds.
This commit was originally created by Jiri Olsa in 2013. Minor changes
were needed to get it working one year later:
* Remove #ifdef directives related with GUI / TUI (because of code
changes in ui/setup.c)
* Fix a link issue if the option BUILTIN_TRACE is disabled.
* Fix typo (CONFIG_BULTIN_ instead CONFIG_BUILTIN_)
Signed-off-by: Jiri Olsa <jolsa@redhat.com>
Cc: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Corey Ashford <cjashfor@linux.vnet.ibm.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Michal Marek <mmarek@suse.cz>
Cc: linux-kbuild@vger.kernel.org
Cc: Stephane Eranian <eranian@google.com>
---
tools/perf/builtin-annotate.c | 6 +++---
tools/perf/builtin-lock.c | 5 ++++-
tools/perf/builtin-report.c | 2 +-
tools/perf/builtin-sched.c | 3 +++
tools/perf/builtin-top.c | 4 ++--
tools/perf/perf.c | 10 ++++++++--
tools/perf/ui/browsers/scripts.c | 4 ++++
tools/perf/ui/setup.c | 6 +++---
8 files changed, 28 insertions(+), 12 deletions(-)
diff --git a/tools/perf/builtin-annotate.c b/tools/perf/builtin-annotate.c
index d40070f..aea56c5 100644
--- a/tools/perf/builtin-annotate.c
+++ b/tools/perf/builtin-annotate.c
@@ -154,7 +154,7 @@ find_next:
/* skip missing symbols */
nd = rb_next(nd);
-#ifdef CONFIG_TUI
+#if defined(CONFIG_TUI) || !defined(CONFIG_KBUILD)
} else if (use_browser == 1) {
struct rb_node *next = NULL;
key = hist_entry__tui_annotate(he, evsel, NULL);
@@ -318,9 +318,9 @@ int cmd_annotate(int argc, const char **argv, const char *prefix __maybe_unused)
OPT_BOOLEAN('D', "dump-raw-trace", &dump_trace,
"dump raw trace in ASCII"),
OPT_BOOLEAN(0, "gtk", &annotate.use_gtk, "Use the GTK interface"),
-#ifdef CONFIG_TUI
+#if defined(CONFIG_TUI) || !defined(CONFIG_KBUILD)
OPT_BOOLEAN(0, "tui", &annotate.use_tui, "Use the TUI interface"),
-#endif /* CONFIG_TUI */
+#endif
OPT_BOOLEAN(0, "stdio", &annotate.use_stdio, "Use the stdio interface"),
OPT_STRING('k', "vmlinux", &symbol_conf.vmlinux_name,
"file", "vmlinux pathname"),
diff --git a/tools/perf/builtin-lock.c b/tools/perf/builtin-lock.c
index 6148afc..f5404dc 100644
--- a/tools/perf/builtin-lock.c
+++ b/tools/perf/builtin-lock.c
@@ -1,4 +1,5 @@
#include "builtin.h"
+#include "builtin-cmds.h"
#include "perf.h"
#include "util/evlist.h"
@@ -994,9 +995,11 @@ int cmd_lock(int argc, const char **argv, const char *prefix __maybe_unused)
usage_with_options(report_usage, report_options);
}
rc = __cmd_report(false);
+#ifdef CONFIG_BUILTIN_SCRIPT
} else if (!strcmp(argv[0], "script")) {
/* Aliased to 'perf script' */
- return cmd_script(argc, argv, prefix);
+ rc = cmd_script(argc, argv, prefix);
+#endif
} else if (!strcmp(argv[0], "info")) {
if (argc) {
argc = parse_options(argc, argv,
diff --git a/tools/perf/builtin-report.c b/tools/perf/builtin-report.c
index c97410a..8dc8077 100644
--- a/tools/perf/builtin-report.c
+++ b/tools/perf/builtin-report.c
@@ -392,7 +392,7 @@ static int report__browse_hists(struct report *rep)
const char *help = "For a higher level overview, try: perf report --sort comm,dso";
switch (use_browser) {
-#ifdef CONFIG_TUI
+#if defined(CONFIG_TUI) || !defined(CONFIG_KBUILD)
case 1:
ret = perf_evlist__tui_browse_hists(evlist, help, NULL,
rep->min_percent,
diff --git a/tools/perf/builtin-sched.c b/tools/perf/builtin-sched.c
index c38d06c..80515e0 100644
--- a/tools/perf/builtin-sched.c
+++ b/tools/perf/builtin-sched.c
@@ -1,4 +1,5 @@
#include "builtin.h"
+#include "builtin-cmds.h"
#include "perf.h"
#include "util/util.h"
@@ -1739,11 +1740,13 @@ int cmd_sched(int argc, const char **argv, const char *prefix __maybe_unused)
if (!argc)
usage_with_options(sched_usage, sched_options);
+#ifdef CONFIG_BUILTIN_SCRIPT
/*
* Aliased to 'perf script' for now:
*/
if (!strcmp(argv[0], "script"))
return cmd_script(argc, argv, prefix);
+#endif
symbol__init();
if (!strncmp(argv[0], "rec", 3)) {
diff --git a/tools/perf/builtin-top.c b/tools/perf/builtin-top.c
index c668b0a..1c807c3 100644
--- a/tools/perf/builtin-top.c
+++ b/tools/perf/builtin-top.c
@@ -535,7 +535,7 @@ static bool perf_top__handle_keypress(struct perf_top *top, int c)
return ret;
}
-#ifdef CONFIG_TUI
+#if defined(CONFIG_TUI) || !defined(CONFIG_KBUILD)
static void perf_top__sort_new_samples(void *arg)
{
struct perf_top *t = arg;
@@ -958,7 +958,7 @@ static int __cmd_top(struct perf_top *top)
ret = -1;
-#ifdef CONFIG_TUI
+#if defined(CONFIG_TUI) || !defined(CONFIG_KBUILD)
if (use_browser > 0)
display_fn = display_thread_tui;
#endif
diff --git a/tools/perf/perf.c b/tools/perf/perf.c
index 8dd6f6f..b094379 100644
--- a/tools/perf/perf.c
+++ b/tools/perf/perf.c
@@ -92,8 +92,10 @@ static struct cmd_struct commands[] = {
#ifdef CONFIG_BUILTIN_KVM
{ "kvm", cmd_kvm, 0 },
#endif
+#ifdef CONFIG_BUILTIN_TEST
{ "test", cmd_test, 0 },
-#if defined HAVE_LIBAUDIT_SUPPORT && defined CONFIG_BUILTIN_TRACE
+#endif
+#ifdef CONFIG_BUILTIN_TRACE
{ "trace", cmd_trace, 0 },
#endif
#ifdef CONFIG_BUILTIN_INJECT
@@ -524,7 +526,7 @@ int main(int argc, const char **argv)
goto out;
}
if (!prefixcmp(cmd, "trace")) {
-#ifdef HAVE_LIBAUDIT_SUPPORT
+#ifdef CONFIG_BUILTIN_TRACE
set_buildid_dir();
setup_path();
argv[0] = "trace";
@@ -548,13 +550,17 @@ int main(int argc, const char **argv)
} else {
/* The user didn't specify a command; give them help */
printf("\n usage: %s\n\n", perf_usage_string);
+#ifdef CONFIG_BUILTIN_HELP
list_common_cmds_help();
printf("\n %s\n\n", perf_more_info_string);
+#endif
goto out;
}
cmd = argv[0];
+#ifdef CONFIG_BUILTIN_TEST
test_attr__init();
+#endif
/*
* We use PATH to find perf commands, but we prepend some higher
diff --git a/tools/perf/ui/browsers/scripts.c b/tools/perf/ui/browsers/scripts.c
index 402d2bd..128988d 100644
--- a/tools/perf/ui/browsers/scripts.c
+++ b/tools/perf/ui/browsers/scripts.c
@@ -59,7 +59,11 @@ static int list_scripts(char *script_name)
paths[i] = names[i] + SCRIPT_NAMELEN;
}
+#ifdef CONFIG_BUILTIN_SCRIPT
num = find_scripts(names, paths);
+#else
+ num = 0;
+#endif
if (num > 0) {
choice = ui__popup_menu(num, names);
if (choice < num && choice >= 0) {
diff --git a/tools/perf/ui/setup.c b/tools/perf/ui/setup.c
index ec7fd36..efc2b21 100644
--- a/tools/perf/ui/setup.c
+++ b/tools/perf/ui/setup.c
@@ -77,7 +77,7 @@ void setup_browser(bool fallback_to_pager)
PERF_GTK_DSO);
sleep(1);
/* fall through */
-#ifdef CONFIG_TUI
+#if defined(CONFIG_TUI) || !defined(CONFIG_KBUILD)
case 1:
use_browser = 1;
if (ui__init() == 0)
@@ -92,13 +92,13 @@ void setup_browser(bool fallback_to_pager)
}
}
-void exit_browser(bool wait_for_ok)
+void exit_browser(bool wait_for_ok __maybe_unused)
{
switch (use_browser) {
case 2:
exit_gtk_browser(wait_for_ok);
break;
-#ifdef CONFIG_TUI
+#if defined(CONFIG_TUI) || !defined(CONFIG_KBUILD)
case 1:
ui__exit(wait_for_ok);
break;
--
1.9.3
next prev parent reply other threads:[~2014-06-24 22:50 UTC|newest]
Thread overview: 98+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-05-13 22:02 [PATCH 00/34] perf and kconfig / kbuild Alexis Berlemont
2014-05-13 22:02 ` [PATCH 01/34] kbuild: Introduce KBUILD_AUTOCONF variable for auto.conf include Alexis Berlemont
2014-05-14 5:00 ` Sam Ravnborg
2014-05-13 22:02 ` [PATCH 02/34] kbuild: Introduce KCONFIG_AUTOCONFIGDEP variable for conf tool Alexis Berlemont
2014-05-14 5:02 ` Sam Ravnborg
2014-05-14 10:17 ` Michal Marek
2014-05-13 22:02 ` [PATCH 03/34] perf tools: Kbuild builtin source related fixies Alexis Berlemont
2014-05-13 22:02 ` [PATCH 04/34] perf tools: Kbuild " Alexis Berlemont
2014-05-13 22:03 ` [PATCH 05/34] perf tools: Add kbuild support into Makefile.kbuild Alexis Berlemont
2014-05-13 22:03 ` [PATCH 06/34] perf kbuild: fix recursive invocation of config/features-checks Alexis Berlemont
2014-05-13 22:03 ` [PATCH 07/34] perf kbuild: store in config-detected missing variables (libdir, ...) Alexis Berlemont
2014-05-13 22:03 ` [PATCH 08/34] perf kbuild: remove useless #ifdef directives Alexis Berlemont
2014-05-13 22:03 ` [PATCH 09/34] perf kbuild: fix a link issue if BUILTIN_TRACE is disabled Alexis Berlemont
2014-05-13 22:03 ` [PATCH 10/34] perf kbuild: add missing files and missing flags in Kbuild files Alexis Berlemont
2014-05-13 22:03 ` [PATCH 11/34] perf kbuild: update kbuild files according to last changes Alexis Berlemont
2014-05-13 22:03 ` [PATCH 12/34] perf kbuild: remove legacy slang-related build variables Alexis Berlemont
2014-05-13 22:03 ` [PATCH 13/34] perf kbuild: remove legacy libaudit-related " Alexis Berlemont
2014-05-13 22:03 ` [PATCH 14/34] perf kbuild: remove legacy libgtk2-related " Alexis Berlemont
2014-05-13 22:03 ` [PATCH 15/34] perf kbuild: remove legacy libperl-related " Alexis Berlemont
2014-05-13 22:03 ` [PATCH 16/34] perf kbuild: remove legacy timerfd-related build variable Alexis Berlemont
2014-05-13 22:03 ` [PATCH 17/34] perf kbuild: remove legacy demangle-related build variables Alexis Berlemont
2014-05-13 22:03 ` [PATCH 18/34] perf kbuild: remove legacy on_exit-related build variable Alexis Berlemont
2014-05-13 22:03 ` [PATCH 19/34] perf kbuild: remove legacy backtrace-related " Alexis Berlemont
2014-05-13 22:03 ` [PATCH 20/34] perf kbuild: remove legacy numa-related " Alexis Berlemont
2014-05-13 22:03 ` [PATCH 21/34] perf kbuild: remove legacy bionic-related " Alexis Berlemont
2014-05-13 22:03 ` [PATCH 22/34] perf kbuild: remove legacy libelf-related build variables (1st part) Alexis Berlemont
2014-05-13 22:03 ` [PATCH 23/34] perf kbuild: remove legacy libelf-related build variables (2nd part) Alexis Berlemont
2014-05-13 22:03 ` [PATCH 24/34] perf kbuild: remove legacy libdwarf-related build variables Alexis Berlemont
2014-05-13 22:03 ` [PATCH 25/34] perf kbuild: remove legacy libunwind-related " Alexis Berlemont
2014-05-13 22:03 ` [PATCH 26/34] perf kbuild: remove legacy libpython-related build variable Alexis Berlemont
2014-05-13 22:03 ` [PATCH 27/34] perf kbuild: add generated Kconfig build-test cases Alexis Berlemont
2014-05-13 22:03 ` [PATCH 28/34] perf kbuild: fix installation of traceevent plugins Alexis Berlemont
2014-05-13 22:03 ` [PATCH 29/34] perf kbuild: fix tarpkg target in tests/make Alexis Berlemont
2014-05-13 22:03 ` [PATCH 30/34] perf kbuild: update Kbuild files with new and removed sources Alexis Berlemont
2014-05-13 22:03 ` [PATCH 31/34] perf kbuild: update build test configurations Alexis Berlemont
2014-05-13 22:03 ` [PATCH 32/34] perf kbuild: relocate the configs generating script Alexis Berlemont
2014-05-13 22:03 ` [PATCH 33/34] perf kbuild: minor changes Alexis Berlemont
2014-05-13 22:03 ` [PATCH 34/34] perf kbuild: remove Makefile.perf Alexis Berlemont
2014-05-14 2:15 ` [PATCH 00/34] perf and kconfig / kbuild David Ahern
2014-05-17 15:39 ` Alexis Berlemont
2014-06-03 22:05 ` [PATCH 00/32] perf and kconfig kbuild (2nd try) Alexis Berlemont
2014-06-04 1:59 ` David Ahern
2014-06-04 11:12 ` Alexis Berlemont
2014-06-24 22:47 ` [PATCH 00/13] perf and kbuild (3rd try) Alexis Berlemont
2014-06-24 22:47 ` [PATCH 01/13] kbuild: add support of custom paths for "auto.conf*" files Alexis Berlemont
2014-06-24 22:47 ` [PATCH 02/13] perf tools: Kbuild builtin source related fixies Alexis Berlemont
2014-06-24 22:47 ` Alexis Berlemont [this message]
2014-06-24 22:47 ` [PATCH 04/13] perf tools: Add kbuild support into Makefile.kbuild Alexis Berlemont
2014-06-24 22:47 ` [PATCH 05/13] perf kbuild: remove Makefile.perf Alexis Berlemont
2014-06-24 22:47 ` [PATCH 06/13] perf kbuild: remove legacy tui/gui-related build variables Alexis Berlemont
2014-06-24 22:47 ` [PATCH 07/13] perf kbuild: remove legacy demangle-related " Alexis Berlemont
2014-06-24 22:47 ` [PATCH 08/13] perf kbuild: remove legacy misc " Alexis Berlemont
2014-06-24 22:47 ` [PATCH 09/13] perf kbuild: remove legacy libelf-related " Alexis Berlemont
2014-06-24 22:47 ` [PATCH 10/13] perf kbuild: remove legacy libdwarf-related " Alexis Berlemont
2014-06-24 22:47 ` [PATCH 11/13] perf kbuild: remove legacy script-related " Alexis Berlemont
2014-06-24 22:47 ` [PATCH 12/13] perf kbuild: final cosmetic changes Alexis Berlemont
2014-06-24 22:48 ` [PATCH 13/13] perf kbuild: add generated Kconfig build-test cases Alexis Berlemont
2014-06-03 22:05 ` [PATCH 01/32] kbuild: add support of custom paths for "auto.conf*" files Alexis Berlemont
2014-06-03 22:05 ` [PATCH 02/32] perf tools: Kbuild builtin source related fixies Alexis Berlemont
2014-06-04 6:58 ` Paul Bolle
2014-06-04 14:15 ` David Ahern
2014-06-03 22:05 ` [PATCH 03/32] perf tools: Kbuild " Alexis Berlemont
2014-06-04 1:49 ` David Ahern
2014-06-04 6:49 ` Paul Bolle
2014-06-03 22:05 ` [PATCH 04/32] perf tools: Add kbuild support into Makefile.kbuild Alexis Berlemont
2014-06-03 22:05 ` [PATCH 05/32] perf kbuild: fix recursive invocation of config/features-checks Alexis Berlemont
2014-06-04 1:50 ` David Ahern
2014-06-03 22:05 ` [PATCH 06/32] perf kbuild: store in config-detected missing variables (libdir, ...) Alexis Berlemont
2014-06-04 1:52 ` David Ahern
2014-06-03 22:06 ` [PATCH 07/32] perf kbuild: remove useless #ifdef directives Alexis Berlemont
2014-06-04 1:53 ` David Ahern
2014-06-04 21:20 ` Alexis Berlemont
2014-06-03 22:06 ` [PATCH 08/32] perf kbuild: fix a link issue if BUILTIN_TRACE is disabled Alexis Berlemont
2014-06-03 22:06 ` [PATCH 09/32] perf kbuild: add missing files and missing flags in Kbuild files Alexis Berlemont
2014-06-03 22:06 ` [PATCH 10/32] perf kbuild: update kbuild files according to last changes Alexis Berlemont
2014-06-03 22:06 ` [PATCH 11/32] perf kbuild: remove legacy slang-related build variables Alexis Berlemont
2014-06-03 22:06 ` [PATCH 12/32] perf kbuild: remove legacy libaudit-related " Alexis Berlemont
2014-06-03 22:06 ` [PATCH 13/32] perf kbuild: remove legacy libgtk2-related " Alexis Berlemont
2014-06-03 22:06 ` [PATCH 14/32] perf kbuild: remove legacy libperl-related " Alexis Berlemont
2014-06-03 22:06 ` [PATCH 15/32] perf kbuild: remove legacy timerfd-related build variable Alexis Berlemont
2014-06-03 22:06 ` [PATCH 16/32] perf kbuild: remove legacy demangle-related build variables Alexis Berlemont
2014-06-03 22:06 ` [PATCH 17/32] perf kbuild: remove legacy on_exit-related build variable Alexis Berlemont
2014-06-03 22:06 ` [PATCH 18/32] perf kbuild: remove legacy backtrace-related " Alexis Berlemont
2014-06-03 22:06 ` [PATCH 19/32] perf kbuild: remove legacy numa-related " Alexis Berlemont
2014-06-03 22:06 ` [PATCH 20/32] perf kbuild: remove legacy bionic-related " Alexis Berlemont
2014-06-03 22:06 ` [PATCH 21/32] perf kbuild: remove legacy libelf-related build variables (1st part) Alexis Berlemont
2014-06-03 22:06 ` [PATCH 22/32] perf kbuild: remove legacy libelf-related build variables (2nd part) Alexis Berlemont
2014-06-03 22:06 ` [PATCH 23/32] perf kbuild: remove legacy libdwarf-related build variables Alexis Berlemont
2014-06-03 22:06 ` [PATCH 24/32] perf kbuild: remove legacy libpython-related build variable Alexis Berlemont
2014-06-03 22:06 ` [PATCH 25/32] perf kbuild: add generated Kconfig build-test cases Alexis Berlemont
2014-06-03 22:06 ` [PATCH 26/32] perf kbuild: fix installation of traceevent plugins Alexis Berlemont
2014-06-03 22:06 ` [PATCH 27/32] perf kbuild: fix tarpkg target in tests/make Alexis Berlemont
2014-06-03 22:06 ` [PATCH 28/32] perf kbuild: update Kbuild files with new and removed sources Alexis Berlemont
2014-06-03 22:06 ` [PATCH 29/32] perf kbuild: update build test configurations Alexis Berlemont
2014-06-03 22:06 ` [PATCH 30/32] perf kbuild: relocate the configs generating script Alexis Berlemont
2014-06-03 22:06 ` [PATCH 31/32] perf kbuild: minor changes Alexis Berlemont
2014-06-03 22:06 ` [PATCH 32/32] perf kbuild: remove Makefile.perf Alexis Berlemont
2014-05-15 8:05 ` [PATCH 00/34] perf and kconfig / kbuild Jiri Olsa
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1403650080-3130-4-git-send-email-alexis.berlemont@gmail.com \
--to=alexis.berlemont@gmail.com \
--cc=a.p.zijlstra@chello.nl \
--cc=acme@ghostprotocols.net \
--cc=bp@alien8.de \
--cc=cjashfor@linux.vnet.ibm.com \
--cc=dsahern@gmail.com \
--cc=eranian@google.com \
--cc=fweisbec@gmail.com \
--cc=jolsa@redhat.com \
--cc=linux-kbuild@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=mingo@kernel.org \
--cc=mmarek@suse.cz \
--cc=namhyung@kernel.org \
--cc=paulus@samba.org \
--cc=sam@ravnborg.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®