2014-06-02 16:44:52

by Jianyu Zhan

[permalink] [raw]
Subject: Re: [PATCH] perf: fix 'make help' message error

Hi, Namhyung,

>I don't know what's the correct way to do this. But it seems like the
>prefix was overwritten when given from user, so below patch will work
>also.

This does work too. So I update the patch as below:

---8<---
From: Jianyu Zhan <[email protected]>
Date: Sat, 24 May 2014 22:34:26 +0800
Subject: [PATCH] perf: fix 'make help' message error

Currently 'make help' message has such hint:

use "make prefix=<path> <install target>" to install to a particular
path like make prefix=/usr/local install install-doc

But this is misleading, when I specify "prefix=/usr/local", it has got no
respect at all.

This is because that, "DESTDIR" is condiered first. In this case, "DESTDIR"
has an empty value, so "prefix" is honored. However, "prefix" is unconditionally
assigned to $HOME, regardless of what it is set to from command line. So our
"prefix" setting got no respect and the actual destination falls back to $HOME.

This patch fixes this issue and corrects the help message.

Signed-off-by: Jianyu Zhan <[email protected]>
---
tools/perf/Makefile.perf | 4 ++--
tools/perf/config/Makefile | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/tools/perf/Makefile.perf b/tools/perf/Makefile.perf
index 895edd3..5918063 100644
--- a/tools/perf/Makefile.perf
+++ b/tools/perf/Makefile.perf
@@ -784,8 +784,8 @@ help:
@echo ''
@echo 'Perf install targets:'
@echo ' NOTE: documentation build requires asciidoc, xmlto packages to be installed'
- @echo ' HINT: use "make prefix=<path> <install target>" to install to a particular'
- @echo ' path like make prefix=/usr/local install install-doc'
+ @echo ' HINT: use "prefix" or "DESTDIR" to install to a particular'
+ @echo ' path like "make prefix=/usr/local install install-doc"'
@echo ' install - install compiled binaries'
@echo ' install-doc - install *all* documentation'
@echo ' install-man - install manpage documentation'
diff --git a/tools/perf/config/Makefile b/tools/perf/config/Makefile
index 802cf54..53dc11e 100644
--- a/tools/perf/config/Makefile
+++ b/tools/perf/config/Makefile
@@ -601,7 +601,7 @@ endif

# Make the path relative to DESTDIR, not to prefix
ifndef DESTDIR
-prefix = $(HOME)
+prefix ?= $(HOME)
endif
bindir_relative = bin
bindir = $(prefix)/$(bindir_relative)
--
2.0.0


2014-06-02 16:53:58

by Jianyu Zhan

[permalink] [raw]
Subject: Re: [PATCH] perf: fix 'make help' message error

On Tue, Jun 3, 2014 at 12:44 AM, Jianyu Zhan <[email protected]> wrote:
> Hi, Namhyung,
>
>>I don't know what's the correct way to do this. But it seems like the
>>prefix was overwritten when given from user, so below patch will work
>>also.
>
> This does work too. So I update the patch as below:
>
> ---8<---
> From: Jianyu Zhan <[email protected]>
> Date: Sat, 24 May 2014 22:34:26 +0800
> Subject: [PATCH] perf: fix 'make help' message error
>
> Currently 'make help' message has such hint:
>
> use "make prefix=<path> <install target>" to install to a particular
> path like make prefix=/usr/local install install-doc
>
> But this is misleading, when I specify "prefix=/usr/local", it has got no
> respect at all.
>
> This is because that, "DESTDIR" is condiered first. In this case, "DESTDIR"
> has an empty value, so "prefix" is honored. However, "prefix" is unconditionally
> assigned to $HOME, regardless of what it is set to from command line. So our
> "prefix" setting got no respect and the actual destination falls back to $HOME.
>
> This patch fixes this issue and corrects the help message.
>
> Signed-off-by: Jianyu Zhan <[email protected]>
> ---
> tools/perf/Makefile.perf | 4 ++--
> tools/perf/config/Makefile | 2 +-
> 2 files changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/tools/perf/Makefile.perf b/tools/perf/Makefile.perf
> index 895edd3..5918063 100644
> --- a/tools/perf/Makefile.perf
> +++ b/tools/perf/Makefile.perf
> @@ -784,8 +784,8 @@ help:
> @echo ''
> @echo 'Perf install targets:'
> @echo ' NOTE: documentation build requires asciidoc, xmlto packages to be installed'
> - @echo ' HINT: use "make prefix=<path> <install target>" to install to a particular'
> - @echo ' path like make prefix=/usr/local install install-doc'
> + @echo ' HINT: use "prefix" or "DESTDIR" to install to a particular'
> + @echo ' path like "make prefix=/usr/local install install-doc"'
> @echo ' install - install compiled binaries'
> @echo ' install-doc - install *all* documentation'
> @echo ' install-man - install manpage documentation'
> diff --git a/tools/perf/config/Makefile b/tools/perf/config/Makefile
> index 802cf54..53dc11e 100644
> --- a/tools/perf/config/Makefile
> +++ b/tools/perf/config/Makefile
> @@ -601,7 +601,7 @@ endif
>
>
> # Make the path relative to DESTDIR, not to prefix
> ifndef DESTDIR
> -prefix = $(HOME)
> +prefix ?= $(HOME)
> endif
> bindir_relative = bin
> bindir = $(prefix)/$(bindir_relative)

Cc Namyung with a correct email...


Thanks,
Jianyu Zhan

2014-06-03 02:51:08

by Namhyung Kim

[permalink] [raw]
Subject: Re: [PATCH] perf: fix 'make help' message error

Hi Jianyu,

On Tue, 3 Jun 2014 00:53:16 +0800, Jianyu Zhan wrote:
> On Tue, Jun 3, 2014 at 12:44 AM, Jianyu Zhan <[email protected]> wrote:
>> Hi, Namhyung,
>>
>>>I don't know what's the correct way to do this. But it seems like the
>>>prefix was overwritten when given from user, so below patch will work
>>>also.
>>
>> This does work too. So I update the patch as below:
>>
>> ---8<---
>> From: Jianyu Zhan <[email protected]>
>> Date: Sat, 24 May 2014 22:34:26 +0800
>> Subject: [PATCH] perf: fix 'make help' message error
>>
>> Currently 'make help' message has such hint:
>>
>> use "make prefix=<path> <install target>" to install to a particular
>> path like make prefix=/usr/local install install-doc
>>
>> But this is misleading, when I specify "prefix=/usr/local", it has got no
>> respect at all.
>>
>> This is because that, "DESTDIR" is condiered first. In this case, "DESTDIR"

s/condiered/considered/ ?


>> has an empty value, so "prefix" is honored. However, "prefix" is unconditionally
>> assigned to $HOME, regardless of what it is set to from command line. So our
>> "prefix" setting got no respect and the actual destination falls back to $HOME.
>>
>> This patch fixes this issue and corrects the help message.

With that changed,

Acked-by: Namhyung Kim <[email protected]>

Thanks,
Namhyung


>> ---
>> tools/perf/Makefile.perf | 4 ++--
>> tools/perf/config/Makefile | 2 +-
>> 2 files changed, 3 insertions(+), 3 deletions(-)
>>
>> diff --git a/tools/perf/Makefile.perf b/tools/perf/Makefile.perf
>> index 895edd3..5918063 100644
>> --- a/tools/perf/Makefile.perf
>> +++ b/tools/perf/Makefile.perf
>> @@ -784,8 +784,8 @@ help:
>> @echo ''
>> @echo 'Perf install targets:'
>> @echo ' NOTE: documentation build requires asciidoc, xmlto packages to be installed'
>> - @echo ' HINT: use "make prefix=<path> <install target>" to install to a particular'
>> - @echo ' path like make prefix=/usr/local install install-doc'
>> + @echo ' HINT: use "prefix" or "DESTDIR" to install to a particular'
>> + @echo ' path like "make prefix=/usr/local install install-doc"'
>> @echo ' install - install compiled binaries'
>> @echo ' install-doc - install *all* documentation'
>> @echo ' install-man - install manpage documentation'
>> diff --git a/tools/perf/config/Makefile b/tools/perf/config/Makefile
>> index 802cf54..53dc11e 100644
>> --- a/tools/perf/config/Makefile
>> +++ b/tools/perf/config/Makefile
>> @@ -601,7 +601,7 @@ endif
>>
>>
>> # Make the path relative to DESTDIR, not to prefix
>> ifndef DESTDIR
>> -prefix = $(HOME)
>> +prefix ?= $(HOME)
>> endif
>> bindir_relative = bin
>> bindir = $(prefix)/$(bindir_relative)
>
> Cc Namyung with a correct email...
>
>
> Thanks,
> Jianyu Zhan

2014-06-03 03:10:41

by Jianyu Zhan

[permalink] [raw]
Subject: Re: [PATCH] perf: fix 'make help' message error

Hi, Namhyung,

On Tue, Jun 3, 2014 at 10:51 AM, Namhyung Kim <[email protected]> wrote:
>
> s/condiered/considered/ ?
>
>

Oops, sorry for the typo.

>>> has an empty value, so "prefix" is honored. However, "prefix" is unconditionally
>>> assigned to $HOME, regardless of what it is set to from command line. So our
>>> "prefix" setting got no respect and the actual destination falls back to $HOME.
>>>
>>> This patch fixes this issue and corrects the help message.
>
> With that changed,
>
> Acked-by: Namhyung Kim <[email protected]>

Thanks. I renew the patch for maintainers to pick up.

-----8<-----
Subject: [PATCH] perf: fix 'make help' message error
Currently 'make help' message has such hint:

use "make prefix=<path> <install target>" to install to a particular
path like make prefix=/usr/local install install-doc

But this is misleading, when I specify "prefix=/usr/local", it has got no
respect at all.

This is because that, "DESTDIR" is considered first. In this case, "DESTDIR"
has an empty value, so "prefix" is honored. However, "prefix" is unconditionally
assigned to $HOME, regardless of what it is set to from command line. So our
"prefix" setting got no respect and the actual destination falls back to $HOME.

This patch fixes this issue and corrects the help message.

Acked-by: Namhyung Kim <[email protected]>
Signed-off-by: Jianyu Zhan <[email protected]>
---
tools/perf/Makefile.perf | 4 ++--
tools/perf/config/Makefile | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/tools/perf/Makefile.perf b/tools/perf/Makefile.perf
index 895edd3..5918063 100644
--- a/tools/perf/Makefile.perf
+++ b/tools/perf/Makefile.perf
@@ -784,8 +784,8 @@ help:
@echo ''
@echo 'Perf install targets:'
@echo ' NOTE: documentation build requires asciidoc, xmlto packages to be installed'
- @echo ' HINT: use "make prefix=<path> <install target>" to install to a particular'
- @echo ' path like make prefix=/usr/local install install-doc'
+ @echo ' HINT: use "prefix" or "DESTDIR" to install to a particular'
+ @echo ' path like "make prefix=/usr/local install install-doc"'
@echo ' install - install compiled binaries'
@echo ' install-doc - install *all* documentation'
@echo ' install-man - install manpage documentation'
diff --git a/tools/perf/config/Makefile b/tools/perf/config/Makefile
index 802cf54..53dc11e 100644
--- a/tools/perf/config/Makefile
+++ b/tools/perf/config/Makefile
@@ -601,7 +601,7 @@ endif

# Make the path relative to DESTDIR, not to prefix
ifndef DESTDIR
-prefix = $(HOME)
+prefix ?= $(HOME)
endif
bindir_relative = bin
bindir = $(prefix)/$(bindir_relative)
--
2.0.0

2014-06-03 12:04:16

by Jiri Olsa

[permalink] [raw]
Subject: Re: [PATCH] perf: fix 'make help' message error

On Tue, Jun 03, 2014 at 11:10:31AM +0800, Jianyu Zhan wrote:
> Hi, Namhyung,
>
> On Tue, Jun 3, 2014 at 10:51 AM, Namhyung Kim <[email protected]> wrote:
> >
> > s/condiered/considered/ ?
> >
> >
>
> Oops, sorry for the typo.
>
> >>> has an empty value, so "prefix" is honored. However, "prefix" is unconditionally
> >>> assigned to $HOME, regardless of what it is set to from command line. So our
> >>> "prefix" setting got no respect and the actual destination falls back to $HOME.
> >>>
> >>> This patch fixes this issue and corrects the help message.
> >
> > With that changed,
> >
> > Acked-by: Namhyung Kim <[email protected]>
>
> Thanks. I renew the patch for maintainers to pick up.

queued.. thanks,

jirka

Subject: [tip:perf/core] perf tools: Fix 'make help' message error

Commit-ID: fc9cabeabf42d76854059e7bce81a02645e7e5ca
Gitweb: http://git.kernel.org/tip/fc9cabeabf42d76854059e7bce81a02645e7e5ca
Author: Jianyu Zhan <[email protected]>
AuthorDate: Tue, 3 Jun 2014 00:44:34 +0800
Committer: Jiri Olsa <[email protected]>
CommitDate: Tue, 3 Jun 2014 21:35:12 +0200

perf tools: Fix 'make help' message error

Currently 'make help' message has such hint:

use "make prefix=<path> <install target>" to install to a particular
path like make prefix=/usr/local install install-doc

But this is misleading, when I specify "prefix=/usr/local", it has got no
respect at all.

This is because that, "DESTDIR" is considered first. In this case, "DESTDIR"
has an empty value, so "prefix" is honored. However, "prefix" is unconditionally
assigned to $HOME, regardless of what it is set to from command line. So our
"prefix" setting got no respect and the actual destination falls back to $HOME.

This patch fixes this issue and corrects the help message.

Signed-off-by: Jianyu Zhan <[email protected]>
Acked-by: Namhyung Kim <[email protected]>
Link: http://lkml.kernel.org/r/[email protected]
Signed-off-by: Jiri Olsa <[email protected]>
---
tools/perf/Makefile.perf | 4 ++--
tools/perf/config/Makefile | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/tools/perf/Makefile.perf b/tools/perf/Makefile.perf
index 6286e13..ae20edf 100644
--- a/tools/perf/Makefile.perf
+++ b/tools/perf/Makefile.perf
@@ -789,8 +789,8 @@ help:
@echo ''
@echo 'Perf install targets:'
@echo ' NOTE: documentation build requires asciidoc, xmlto packages to be installed'
- @echo ' HINT: use "make prefix=<path> <install target>" to install to a particular'
- @echo ' path like make prefix=/usr/local install install-doc'
+ @echo ' HINT: use "prefix" or "DESTDIR" to install to a particular'
+ @echo ' path like "make prefix=/usr/local install install-doc"'
@echo ' install - install compiled binaries'
@echo ' install-doc - install *all* documentation'
@echo ' install-man - install manpage documentation'
diff --git a/tools/perf/config/Makefile b/tools/perf/config/Makefile
index 319426f..4f100b5 100644
--- a/tools/perf/config/Makefile
+++ b/tools/perf/config/Makefile
@@ -600,7 +600,7 @@ endif

# Make the path relative to DESTDIR, not to prefix
ifndef DESTDIR
-prefix = $(HOME)
+prefix ?= $(HOME)
endif
bindir_relative = bin
bindir = $(prefix)/$(bindir_relative)