All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bamvor Zhang Jian <bamvor.zhangjian@linaro.org>
To: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: Michal Marek <mmarek@suse.cz>,
	"ksummit-discuss@lists.linuxfoundation.org"
	<ksummit-discuss@lists.linuxfoundation.org>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	Bamvor Zhang Jian <bamvor.zhangjian@linaro.org>,
	Jiri Olsa <jolsa@kernel.org>,
	Arjan van de Ven <arjan@linux.intel.com>,
	Ingo Molnar <mingo@kernel.org>
Subject: Re: [Ksummit-discuss] [TECH TOPIC] tools/Makefile: Fix Many Many problems and inconsistencies
Date: Thu, 8 Sep 2016 11:25:35 +0800	[thread overview]
Message-ID: <CAFy1USQ+uZdyjaZmytUiJhq5jeXfVwV4NxOUNGmHDQsaa2k=bA@mail.gmail.com> (raw)
In-Reply-To: <20160906145748.GC11557@kernel.org>

On 6 September 2016 at 22:57, Arnaldo Carvalho de Melo <acme@kernel.org> wrote:
> Em Sun, Sep 04, 2016 at 10:15:02PM +0100, Ben Hutchings escreveu:
>> [Slowly catching up on ksummit-discuss]
>>
>> On Mon, 2016-08-01 at 20:46 -0700, Randy Dunlap wrote:
>> > and subdir Makefiles.
>> >
>> > Examples:
>> >
>> > Use/honor O=outputdir consistently instead of building in <kerneltree>/tools.
>> > (check/compare kernel commit bf35182ffcd00d8b36d56210ffdac110e5624d7d)
>> >
>> > Honor MAKEFLAGS (well, they aren't even passed to tools/Makefile AFAICT.
>> > from an execution log:
>> > make LDFLAGS= MAKEFLAGS="" O=/local/lnx/kernel/lnx-47/TOOLS subdir=tools -C ../tools/ all
>> >
>> > Use make's "findstring" correctly (see patch below)
>> >
>> > There are lots of other problems unless I have just had too much too drink tonight,
>> > so here's the TECH TOPIC:
>> >
>> > In a 1.5 hour code crunch session, get a bunch of interested people together to fix
>> > a lot of problems quickly.  Then I will be a guinea pig tester.  :)
>> [...]
>>
>> I don't know how much can be done in that time.  I've had some
>> recurring pains in packaging tools/:
>>
>> 1. Many different build systems
>>    - Inconsistent support for configuration variables (not just 'O')
>>    - usbip isn't included in a recursive build, presumably because
>>      it uses autotools
>
>Right, that needs improving, I haven't looked at anything outside
>tools/{arch,build,lib,include,objtool,perf}
I am working on enable O= support for kselftest(tools/testing/selftest).
Kbuild or tools/build/Makefile.include seems too heavy for kselftest.
Those Makefile could easily link lots of objects to single binary,
while in kselftest, almost all the single binary is compiled from one
single source respectively, I could redirect the output directory
through the explicit rules.
If there is a plan to build a generic build system(at least for tools),
I hope kselftest could be counted in. Then I could suspend my work and
waiting for this solutions.
>
>> 2. Tools include UAPI headers in one of two ways, neither of which is
>>    reliable:
>>    - Assume the current headers are on the system include path
>>    - Include unprocessed UAPI headers through a relative path
>>
>>    The right thing to do is to run 'make headers_install' and add
>>    usr/ to the front of the system include path.  But we'd want a
>>    way to avoid re-doing that when the UAPI headers haven't changed.
>
>Again, haven't checked outside the above list of directories, by now,
>tools/perf/ doesn't use anything outside tools/, are you talking about
>other tools that touch kernel source files outside tools/?
E.g. tools/gpio and some testcases in tools/testing/selftest


Regards

Bamvor

>
>> 3. Tools frequently fail to build in stable releases (sometimes on
>>    specific architectures) - seems like tools/ is not covered by CI
>>    or it's ignored
>
> The list above I've been running over a set of docker image
> repositories, now publicly available, each with a set of tags for distro
> releases and cross build environments.
>
> https://hub.docker.com/r/acmel/linux-perf-tools-build-alpine
> https://hub.docker.com/r/acmel/linux-perf-tools-build-android-ndk
> https://hub.docker.com/r/acmel/linux-perf-tools-build-archlinux
> https://hub.docker.com/r/acmel/linux-perf-tools-build-centos
> https://hub.docker.com/r/acmel/linux-perf-tools-build-debian
> https://hub.docker.com/r/acmel/linux-perf-tools-build-fedora
> https://hub.docker.com/r/acmel/linux-perf-tools-build-mageia
> https://hub.docker.com/r/acmel/linux-perf-tools-build-opensuse
> https://hub.docker.com/r/acmel/linux-perf-tools-build-ubuntu
>
>> This last point is more of a core topic though.
>>
>> Ben.
>>
>> --
>> Ben Hutchings
>> Once a job is fouled up, anything done to improve it makes it worse.
>
>
>
>> _______________________________________________
>> Ksummit-discuss mailing list
>> Ksummit-discuss@lists.linuxfoundation.org
>> https://lists.linuxfoundation.org/mailman/listinfo/ksummit-discuss
>
> _______________________________________________
> Ksummit-discuss mailing list
> Ksummit-discuss@lists.linuxfoundation.org
> https://lists.linuxfoundation.org/mailman/listinfo/ksummit-discuss
>

      reply	other threads:[~2016-09-08  3:25 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-02  3:46 [Ksummit-discuss] [TECH TOPIC] tools/Makefile: Fix Many Many problems and inconsistencies Randy Dunlap
2016-08-02  4:53 ` Wangnan (F)
2016-08-03 19:00   ` Arnaldo Carvalho de Melo
2016-08-02  5:02 ` Josh Triplett
2016-08-02  7:31   ` Arnd Bergmann
2016-08-02  8:27     ` Josh Triplett
2016-08-02  8:41   ` Alexandre Belloni
2016-08-02  8:43     ` Josh Triplett
2016-09-04 21:15 ` Ben Hutchings
2016-09-06 14:57   ` Arnaldo Carvalho de Melo
2016-09-08  3:25     ` Bamvor Zhang Jian [this message]

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='CAFy1USQ+uZdyjaZmytUiJhq5jeXfVwV4NxOUNGmHDQsaa2k=bA@mail.gmail.com' \
    --to=bamvor.zhangjian@linaro.org \
    --cc=acme@kernel.org \
    --cc=arjan@linux.intel.com \
    --cc=jolsa@kernel.org \
    --cc=ksummit-discuss@lists.linuxfoundation.org \
    --cc=mingo@kernel.org \
    --cc=mmarek@suse.cz \
    --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.