All of lore.kernel.org
 help / color / mirror / Atom feed
From: Namhyung Kim <namhyung@kernel.org>
To: Robert Richter <rric@kernel.org>
Cc: Sedat Dilek <sedat.dilek@gmail.com>,
	LKML <linux-kernel@vger.kernel.org>,
	Ingo Molnar <mingo@kernel.org>,
	Peter Zijlstra <peterz@infradead.org>,
	Arnaldo Carvalho de Melo <acme@redhat.com>,
	Linus Torvalds <torvalds@linux-foundation.org>
Subject: Re: [PATCH] tools: perf: Fix liblk not built when using perf_install target
Date: Tue, 03 Sep 2013 17:48:38 +0900	[thread overview]
Message-ID: <874na2uw7t.fsf@sejong.aot.lge.com> (raw)
In-Reply-To: <20130830164905.GA31061@rric.localhost> (Robert Richter's message of "Fri, 30 Aug 2013 18:49:05 +0200")

Hi,

On Fri, 30 Aug 2013 18:49:05 +0200, Robert Richter wrote:
> On 30.08.13 17:18:36, Sedat Dilek wrote:
>> So, I tried to build perf the "official" way:
>> 
>>    $ make -C tools/ perf_install
>> 
>> Unfortunately, my build breaks like this:
>> ...
>> make[2]: Entering directory
>> `~/src/linux-kernel/linux/tools/lib/traceevent'
>> make[2]: Leaving directory
>> `~/src/linux-kernel/linux/tools/lib/traceevent'
>>     LINK perf
>> gcc: error: ~/src/linux-kernel/linux/tools/lib/lk/liblk.a: No such file or directory
>> make[1]: *** [perf] Error 1
>> make[1]: Leaving directory `~/src/linux-kernel/linux/tools/perf'
>> make: *** [perf_install] Error 2
>> 
>> After some discussion on IRC with peterz and acme and a closer look at
>> the targets in "tools/Makefile", I have noticed that the perf_install
>> target misses liblk to be built beforehand.
>
> There are no build prerequisites on purpose for install targets.
> Install targets are intended to be run with root permissions. We don't
> want to create/overwrite files in the build directory as root while
> running install rules. Thus, you always need to run:
>
>  $ make -C tools/ perf
>
> or similar first.

But AFAIK install target usually depends on build targets on many
projects.  And perf too already does the same:

  [ tools/perf/Makefile ]
  install-bin: all
	...

  install: install-bin


So if you really concern the permission problem, install target should
not build perf itself, right?  But in this case, it tried to build perf
but failed to do it on liblk.

>
>> On the contrary the perf_clean target invokes to clean liblk when perf
>> is cleaned.
>> 
>> [ tools/Makefile ]
>> ...
>> perf_clean: liblk_clean
>> 	$(call descend,$(@:_clean=),clean)
>> ...
>> 
>> Fix this by adding liblk target to perf_install target.
>
> So no, this is not the proper fix.
>
> Before installing you *need* to build. You might want to fix the
> documenation...

Hmm.. I don't know.  What I'm curious about is why it didn't build liblk
during building perf.

Thanks,
Namhyung

  reply	other threads:[~2013-09-03  8:48 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-08-30 15:18 [PATCH] tools: perf: Fix liblk not built when using perf_install target Sedat Dilek
2013-08-30 16:49 ` Robert Richter
2013-09-03  8:48   ` Namhyung Kim [this message]
2013-09-03  8:56     ` Sedat Dilek
2013-09-03  9:13       ` Sedat Dilek
2013-09-03  9:20         ` Sedat Dilek

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=874na2uw7t.fsf@sejong.aot.lge.com \
    --to=namhyung@kernel.org \
    --cc=acme@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=peterz@infradead.org \
    --cc=rric@kernel.org \
    --cc=sedat.dilek@gmail.com \
    --cc=torvalds@linux-foundation.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.