Re: [PATCH 1/3] perf tools: Initial bash completion support

From: David Ahern
Date: Thu Aug 09 2012 - 13:24:24 EST


On 8/9/12 11:14 AM, Arnaldo Carvalho de Melo wrote:
Em Thu, Aug 09, 2012 at 10:40:19AM -0600, David Ahern escreveu:
On 8/9/12 10:35 AM, Arnaldo Carvalho de Melo wrote:
Em Thu, Aug 09, 2012 at 04:31:51PM +0200, Frederic Weisbecker escreveu:
This implements bash completion for perf subcommands such
as record, report, script, probe, etc...

Humm, I get this when doing my usual workflow:

[acme@sandy linux]$ make -j8 -C tools/perf/ O=/home/acme/git/build/perf install
make: Entering directory `/home/git/linux/tools/perf'
PERF_VERSION = 3.6.rc1.152.g5758f7
<SNIP>
install -d -m 755 '/home/acme/libexec/perf-core/scripts/python/Perf-Trace-Util/lib/Perf/Trace'
install -d -m 755 '/home/acme/libexec/perf-core/scripts/python/bin'
install scripts/python/Perf-Trace-Util/lib/Perf/Trace/* -t '/home/acme/libexec/perf-core/scripts/python/Perf-Trace-Util/lib/Perf/Trace'
install scripts/python/*.py -t '/home/acme/libexec/perf-core/scripts/python'
install scripts/python/bin/* -t '/home/acme/libexec/perf-core/scripts/python/bin'
install -m 755 bash_completion /etc/bash_completion.d/perf
install: cannot create regular file `/etc/bash_completion.d/perf': Permission denied
make: *** [install] Error 1
make: Leaving directory `/home/git/linux/tools/perf'
[acme@sandy linux]$ make -j8 -C tools/perf/ O=/home/acme/git/build/perf install

Shouldn't it install on ~/etc/bash_completion.d/perf ?

Is there a way to have per user bash completion files like that?

3rd patch should fix this.

Huh? The problem is not /etc/bash_completion.d/ not existing, it exists,
its just that I'm not using sudo nor installing as root, this new bash
completion file is the only one that is being installed on the root
filesystem, all others are in ~acme/

3rd patch uses sysconfdir_SQ instead of /etc.

ifndef DESTDIR
prefix = $(HOME)
endif
...

ifeq ($(prefix),/usr)
sysconfdir = /etc
ETC_PERFCONFIG = $(sysconfdir)/perfconfig
else
sysconfdir = $(prefix)/etc
ETC_PERFCONFIG = etc/perfconfig
endif

So, sysconfdir should be set to $(HOME)/etc in your case.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/