From: John Kacur on
On Thu, Mar 11, 2010 at 1:57 PM, John Kacur <jkacur(a)redhat.com> wrote:
> Without this change, the install path is relative to
> prefix/DESTDIR
> where prefix is automatically set to $HOME
>
> This can produce unexpected results. For example
>
> make -C tools/perf DESTDIR=/home/jkacur/tmp install-man
>
> creates the directory: � � � � �/home/jkacur/home/jkacur/tmp/share/...
> instead of �the expected: � � � /home/jkacur/tmp/share/...
>
> Signed-off-by: John Kacur <jkacur(a)redhat.com>
> ---
> �tools/perf/Documentation/Makefile | � �4 +++-
> �tools/perf/Makefile � � � � � � � | � �4 +++-
> �2 files changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/tools/perf/Documentation/Makefile b/tools/perf/Documentation/Makefile
> index bdd3b7e..bd498d4 100644
> --- a/tools/perf/Documentation/Makefile
> +++ b/tools/perf/Documentation/Makefile
> @@ -24,7 +24,10 @@ DOC_MAN1=$(patsubst %.txt,%.1,$(MAN1_TXT))
> �DOC_MAN5=$(patsubst %.txt,%.5,$(MAN5_TXT))
> �DOC_MAN7=$(patsubst %.txt,%.7,$(MAN7_TXT))
>
> +# Make the path relative to DESTDIR, not prefix
> +ifndef DESTDIR
> �prefix?=$(HOME)
> +endif
> �bindir?=$(prefix)/bin
> �htmldir?=$(prefix)/share/doc/perf-doc
> �pdfdir?=$(prefix)/share/doc/perf-doc
> @@ -32,7 +35,6 @@ mandir?=$(prefix)/share/man
> �man1dir=$(mandir)/man1
> �man5dir=$(mandir)/man5
> �man7dir=$(mandir)/man7
> -# DESTDIR=
>
> �ASCIIDOC=asciidoc
> �ASCIIDOC_EXTRA = --unsafe
> diff --git a/tools/perf/Makefile b/tools/perf/Makefile
> index 2d53738..5da0cd0 100644
> --- a/tools/perf/Makefile
> +++ b/tools/perf/Makefile
> @@ -216,7 +216,10 @@ STRIP ?= strip
> �# runtime figures out where they are based on the path to the executable.
> �# This can help installing the suite in a relocatable way.
>
> +# Make the path relative to DESTDIR, not to prefix
> +ifndef DESTDIR
> �prefix = $(HOME)
> +endif
> �bindir_relative = bin
> �bindir = $(prefix)/$(bindir_relative)
> �mandir = share/man
> @@ -233,7 +236,6 @@ sysconfdir = $(prefix)/etc
> �ETC_PERFCONFIG = etc/perfconfig
> �endif
> �lib = lib
> -# DESTDIR=
>
> �export prefix bindir sharedir sysconfdir
>
> --
> 1.6.6.1

Sorry, I'd like to withdraw this patch.

I see I can achieve my desired ends without changing the behaviour for
others who expect the old behaviour,
simply by setting "prefix" on the command line, eg:
make -C tools/perf prefix="" DESTDIR=/home/jkacur/tmp install-man

Thanks.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
From: Ingo Molnar on

* John Kacur <jkacur(a)redhat.com> wrote:

> On Thu, Mar 11, 2010 at 1:57 PM, John Kacur <jkacur(a)redhat.com> wrote:
> > Without this change, the install path is relative to
> > prefix/DESTDIR
> > where prefix is automatically set to $HOME
> >
> > This can produce unexpected results. For example
> >
> > make -C tools/perf DESTDIR=/home/jkacur/tmp install-man
> >
> > creates the directory: ? ? ? ? ?/home/jkacur/home/jkacur/tmp/share/...
> > instead of ?the expected: ? ? ? /home/jkacur/tmp/share/...
> >
> > Signed-off-by: John Kacur <jkacur(a)redhat.com>
> > ---
> > ?tools/perf/Documentation/Makefile | ? ?4 +++-
> > ?tools/perf/Makefile ? ? ? ? ? ? ? | ? ?4 +++-
> > ?2 files changed, 6 insertions(+), 2 deletions(-)
> >
> > diff --git a/tools/perf/Documentation/Makefile b/tools/perf/Documentation/Makefile
> > index bdd3b7e..bd498d4 100644
> > --- a/tools/perf/Documentation/Makefile
> > +++ b/tools/perf/Documentation/Makefile
> > @@ -24,7 +24,10 @@ DOC_MAN1=$(patsubst %.txt,%.1,$(MAN1_TXT))
> > ?DOC_MAN5=$(patsubst %.txt,%.5,$(MAN5_TXT))
> > ?DOC_MAN7=$(patsubst %.txt,%.7,$(MAN7_TXT))
> >
> > +# Make the path relative to DESTDIR, not prefix
> > +ifndef DESTDIR
> > ?prefix?=$(HOME)
> > +endif
> > ?bindir?=$(prefix)/bin
> > ?htmldir?=$(prefix)/share/doc/perf-doc
> > ?pdfdir?=$(prefix)/share/doc/perf-doc
> > @@ -32,7 +35,6 @@ mandir?=$(prefix)/share/man
> > ?man1dir=$(mandir)/man1
> > ?man5dir=$(mandir)/man5
> > ?man7dir=$(mandir)/man7
> > -# DESTDIR=
> >
> > ?ASCIIDOC=asciidoc
> > ?ASCIIDOC_EXTRA = --unsafe
> > diff --git a/tools/perf/Makefile b/tools/perf/Makefile
> > index 2d53738..5da0cd0 100644
> > --- a/tools/perf/Makefile
> > +++ b/tools/perf/Makefile
> > @@ -216,7 +216,10 @@ STRIP ?= strip
> > ?# runtime figures out where they are based on the path to the executable.
> > ?# This can help installing the suite in a relocatable way.
> >
> > +# Make the path relative to DESTDIR, not to prefix
> > +ifndef DESTDIR
> > ?prefix = $(HOME)
> > +endif
> > ?bindir_relative = bin
> > ?bindir = $(prefix)/$(bindir_relative)
> > ?mandir = share/man
> > @@ -233,7 +236,6 @@ sysconfdir = $(prefix)/etc
> > ?ETC_PERFCONFIG = etc/perfconfig
> > ?endif
> > ?lib = lib
> > -# DESTDIR=
> >
> > ?export prefix bindir sharedir sysconfdir
> >
> > --
> > 1.6.6.1
>
> Sorry, I'd like to withdraw this patch.
>
> I see I can achieve my desired ends without changing the behaviour for
> others who expect the old behaviour,

The old behavior doesnt look very logical though, right?

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
From: John Kacur on

----- "Ingo Molnar" <mingo(a)elte.hu> wrote:

> * John Kacur <jkacur(a)redhat.com> wrote:
>
> > On Thu, Mar 11, 2010 at 1:57 PM, John Kacur <jkacur(a)redhat.com>
> wrote:
> > > Without this change, the install path is relative to
> > > prefix/DESTDIR
> > > where prefix is automatically set to $HOME
> > >
> > > This can produce unexpected results. For example
> > >
> > > make -C tools/perf DESTDIR=/home/jkacur/tmp install-man
> > >
> > > creates the directory: ? ? ? ?
> ?/home/jkacur/home/jkacur/tmp/share/...
> > > instead of ?the expected: ? ? ? /home/jkacur/tmp/share/...
> > >
> > > Signed-off-by: John Kacur <jkacur(a)redhat.com>
> > > ---
> > > ?tools/perf/Documentation/Makefile | ? ?4 +++-
> > > ?tools/perf/Makefile ? ? ? ? ? ? ? | ? ?4 +++-
> > > ?2 files changed, 6 insertions(+), 2 deletions(-)
> > >
> > > diff --git a/tools/perf/Documentation/Makefile
> b/tools/perf/Documentation/Makefile
> > > index bdd3b7e..bd498d4 100644
> > > --- a/tools/perf/Documentation/Makefile
> > > +++ b/tools/perf/Documentation/Makefile
> > > @@ -24,7 +24,10 @@ DOC_MAN1=$(patsubst %.txt,%.1,$(MAN1_TXT))
> > > ?DOC_MAN5=$(patsubst %.txt,%.5,$(MAN5_TXT))
> > > ?DOC_MAN7=$(patsubst %.txt,%.7,$(MAN7_TXT))
> > >
> > > +# Make the path relative to DESTDIR, not prefix
> > > +ifndef DESTDIR
> > > ?prefix?=$(HOME)
> > > +endif
> > > ?bindir?=$(prefix)/bin
> > > ?htmldir?=$(prefix)/share/doc/perf-doc
> > > ?pdfdir?=$(prefix)/share/doc/perf-doc
> > > @@ -32,7 +35,6 @@ mandir?=$(prefix)/share/man
> > > ?man1dir=$(mandir)/man1
> > > ?man5dir=$(mandir)/man5
> > > ?man7dir=$(mandir)/man7
> > > -# DESTDIR=
> > >
> > > ?ASCIIDOC=asciidoc
> > > ?ASCIIDOC_EXTRA = --unsafe
> > > diff --git a/tools/perf/Makefile b/tools/perf/Makefile
> > > index 2d53738..5da0cd0 100644
> > > --- a/tools/perf/Makefile
> > > +++ b/tools/perf/Makefile
> > > @@ -216,7 +216,10 @@ STRIP ?= strip
> > > ?# runtime figures out where they are based on the path to the
> executable.
> > > ?# This can help installing the suite in a relocatable way.
> > >
> > > +# Make the path relative to DESTDIR, not to prefix
> > > +ifndef DESTDIR
> > > ?prefix = $(HOME)
> > > +endif
> > > ?bindir_relative = bin
> > > ?bindir = $(prefix)/$(bindir_relative)
> > > ?mandir = share/man
> > > @@ -233,7 +236,6 @@ sysconfdir = $(prefix)/etc
> > > ?ETC_PERFCONFIG = etc/perfconfig
> > > ?endif
> > > ?lib = lib
> > > -# DESTDIR=
> > >
> > > ?export prefix bindir sharedir sysconfdir
> > >
> > > --
> > > 1.6.6.1
> >
> > Sorry, I'd like to withdraw this patch.
> >
> > I see I can achieve my desired ends without changing the behaviour
> for
> > others who expect the old behaviour,
>
> The old behavior doesnt look very logical though, right?

No, not really. Well, logical for people quickly prototyping code
on their own machines, but perf has grown beyond that.

However, I don't like my quick fix either, maybe I can come-up
with something cleaner.

John
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
From: Ingo Molnar on

* John Kacur <jkacur(a)redhat.com> wrote:

>
> ----- "Ingo Molnar" <mingo(a)elte.hu> wrote:
>
> > * John Kacur <jkacur(a)redhat.com> wrote:
> >
> > > On Thu, Mar 11, 2010 at 1:57 PM, John Kacur <jkacur(a)redhat.com>
> > wrote:
> > > > Without this change, the install path is relative to
> > > > prefix/DESTDIR
> > > > where prefix is automatically set to $HOME
> > > >
> > > > This can produce unexpected results. For example
> > > >
> > > > make -C tools/perf DESTDIR=/home/jkacur/tmp install-man
> > > >
> > > > creates the directory: ? ? ? ?
> > ?/home/jkacur/home/jkacur/tmp/share/...
> > > > instead of ?the expected: ? ? ? /home/jkacur/tmp/share/...
> > > >
> > > > Signed-off-by: John Kacur <jkacur(a)redhat.com>
> > > > ---
> > > > ?tools/perf/Documentation/Makefile | ? ?4 +++-
> > > > ?tools/perf/Makefile ? ? ? ? ? ? ? | ? ?4 +++-
> > > > ?2 files changed, 6 insertions(+), 2 deletions(-)
> > > >
> > > > diff --git a/tools/perf/Documentation/Makefile
> > b/tools/perf/Documentation/Makefile
> > > > index bdd3b7e..bd498d4 100644
> > > > --- a/tools/perf/Documentation/Makefile
> > > > +++ b/tools/perf/Documentation/Makefile
> > > > @@ -24,7 +24,10 @@ DOC_MAN1=$(patsubst %.txt,%.1,$(MAN1_TXT))
> > > > ?DOC_MAN5=$(patsubst %.txt,%.5,$(MAN5_TXT))
> > > > ?DOC_MAN7=$(patsubst %.txt,%.7,$(MAN7_TXT))
> > > >
> > > > +# Make the path relative to DESTDIR, not prefix
> > > > +ifndef DESTDIR
> > > > ?prefix?=$(HOME)
> > > > +endif
> > > > ?bindir?=$(prefix)/bin
> > > > ?htmldir?=$(prefix)/share/doc/perf-doc
> > > > ?pdfdir?=$(prefix)/share/doc/perf-doc
> > > > @@ -32,7 +35,6 @@ mandir?=$(prefix)/share/man
> > > > ?man1dir=$(mandir)/man1
> > > > ?man5dir=$(mandir)/man5
> > > > ?man7dir=$(mandir)/man7
> > > > -# DESTDIR=
> > > >
> > > > ?ASCIIDOC=asciidoc
> > > > ?ASCIIDOC_EXTRA = --unsafe
> > > > diff --git a/tools/perf/Makefile b/tools/perf/Makefile
> > > > index 2d53738..5da0cd0 100644
> > > > --- a/tools/perf/Makefile
> > > > +++ b/tools/perf/Makefile
> > > > @@ -216,7 +216,10 @@ STRIP ?= strip
> > > > ?# runtime figures out where they are based on the path to the
> > executable.
> > > > ?# This can help installing the suite in a relocatable way.
> > > >
> > > > +# Make the path relative to DESTDIR, not to prefix
> > > > +ifndef DESTDIR
> > > > ?prefix = $(HOME)
> > > > +endif
> > > > ?bindir_relative = bin
> > > > ?bindir = $(prefix)/$(bindir_relative)
> > > > ?mandir = share/man
> > > > @@ -233,7 +236,6 @@ sysconfdir = $(prefix)/etc
> > > > ?ETC_PERFCONFIG = etc/perfconfig
> > > > ?endif
> > > > ?lib = lib
> > > > -# DESTDIR=
> > > >
> > > > ?export prefix bindir sharedir sysconfdir
> > > >
> > > > --
> > > > 1.6.6.1
> > >
> > > Sorry, I'd like to withdraw this patch.
> > >
> > > I see I can achieve my desired ends without changing the behaviour
> > for
> > > others who expect the old behaviour,
> >
> > The old behavior doesnt look very logical though, right?
>
> No, not really. Well, logical for people quickly prototyping code
> on their own machines, but perf has grown beyond that.
>
> However, I don't like my quick fix either, maybe I can come-up
> with something cleaner.

I've applied it meanwhile though, as /home/jkacur/home/jkacur/ is clearly a
misbehavior :-)

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