LKML Archive on lore.kernel.org help / color / mirror / Atom feed
From: Nathan Chancellor <nathan@kernel.org> To: Nick Desaulniers <ndesaulniers@google.com>, Masahiro Yamada <masahiroy@kernel.org> Cc: Miguel Ojeda <ojeda@kernel.org>, Fangrui Song <maskray@google.com>, Michal Marek <michal.lkml@markovi.net>, Arnd Bergmann <arnd@kernel.org>, linux-kernel@vger.kernel.org, linux-kbuild@vger.kernel.org, clang-built-linux@googlegroups.com, Geert Uytterhoeven <geert@linux-m68k.org>, Christoph Hellwig <hch@infradead.org>, Linus Torvalds <torvalds@linux-foundation.org> Subject: Re: [PATCH v6 3/3] Documentation/llvm: update CROSS_COMPILE inferencing Date: Mon, 2 Aug 2021 12:16:21 -0700 [thread overview] Message-ID: <95712f4c-9da5-b7b6-f617-b6b686b6eadc@kernel.org> (raw) In-Reply-To: <20210802183910.1802120-4-ndesaulniers@google.com> On 8/2/2021 11:39 AM, 'Nick Desaulniers' via Clang Built Linux wrote: > As noted by Masahiro, document how we can generally infer CROSS_COMPILE > (and the more specific details about --target and --prefix) based on > ARCH. > > Change use of env vars to command line parameters. > > Suggested-by: Masahiro Yamada <masahiroy@kernel.org> > Reviewed-by: Fangrui Song <maskray@google.com> > Signed-off-by: Nick Desaulniers <ndesaulniers@google.com> Thanks for the update, I think this is much easier for non-CBL folks to understand. Reviewed-by: Nathan Chancellor <nathan@kernel.org> > --- > Changes v5 -> v6: > * Pick up Fangrui's RB tag. > * Change use of env vars to command line parameters for consistency. > > Documentation/kbuild/llvm.rst | 19 ++++++++++++++++++- > 1 file changed, 18 insertions(+), 1 deletion(-) > > diff --git a/Documentation/kbuild/llvm.rst b/Documentation/kbuild/llvm.rst > index b18401d2ba82..f8a360958f4c 100644 > --- a/Documentation/kbuild/llvm.rst > +++ b/Documentation/kbuild/llvm.rst > @@ -38,7 +38,7 @@ Cross Compiling > A single Clang compiler binary will typically contain all supported backends, > which can help simplify cross compiling. :: > > - ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- make CC=clang > + make ARCH=arm64 CC=clang CROSS_COMPILE=aarch64-linux-gnu- > > ``CROSS_COMPILE`` is not used to prefix the Clang compiler binary, instead > ``CROSS_COMPILE`` is used to set a command line flag: ``--target=<triple>``. For > @@ -63,6 +63,23 @@ They can be enabled individually. The full list of the parameters: :: > Currently, the integrated assembler is disabled by default. You can pass > ``LLVM_IAS=1`` to enable it. > > +Omitting CROSS_COMPILE > +---------------------- > + > +As explained above, ``CROSS_COMPILE`` is used to set ``--target=<triple>``. > + > +Unless ``LLVM_IAS=1`` is specified, ``CROSS_COMPILE`` is also used to derive > +``--prefix=<path>`` to search for the GNU assembler and linker. > + > +If ``CROSS_COMPILE`` is not specified, the ``--target=<triple>`` is inferred > +from ``ARCH``. > + > +That means if you use only LLVM tools, ``CROSS_COMPILE`` becomes unnecessary. > + > +For example, to cross-compile the arm64 kernel:: > + > + make ARCH=arm64 LLVM=1 LLVM_IAS=1 > + > Supported Architectures > ----------------------- > >
next prev parent reply other threads:[~2021-08-02 19:16 UTC|newest] Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-08-02 18:39 [PATCH v6 0/3] infer --target from SRCARCH for CC=clang Nick Desaulniers 2021-08-02 18:39 ` [PATCH v6 1/3] Makefile: move initial clang flag handling into scripts/Makefile.clang Nick Desaulniers 2021-08-02 21:06 ` Fāng-ruì Sòng 2021-08-02 21:14 ` Nick Desaulniers 2021-08-05 12:55 ` Masahiro Yamada 2021-08-02 18:39 ` [PATCH v6 2/3] Makefile: infer --target from ARCH for CC=clang Nick Desaulniers 2021-08-05 13:58 ` Masahiro Yamada 2021-08-05 18:17 ` Miguel Ojeda 2021-08-02 18:39 ` [PATCH v6 3/3] Documentation/llvm: update CROSS_COMPILE inferencing Nick Desaulniers 2021-08-02 19:16 ` Nathan Chancellor [this message] 2021-08-05 13:57 ` Masahiro Yamada 2021-08-05 18:27 ` Nick Desaulniers 2021-08-05 18:29 ` Nick Desaulniers 2021-08-05 23:26 ` Masahiro Yamada 2021-08-10 0:05 ` [PATCH v6 0/3] infer --target from SRCARCH for CC=clang Masahiro Yamada
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=95712f4c-9da5-b7b6-f617-b6b686b6eadc@kernel.org \ --to=nathan@kernel.org \ --cc=arnd@kernel.org \ --cc=clang-built-linux@googlegroups.com \ --cc=geert@linux-m68k.org \ --cc=hch@infradead.org \ --cc=linux-kbuild@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=masahiroy@kernel.org \ --cc=maskray@google.com \ --cc=michal.lkml@markovi.net \ --cc=ndesaulniers@google.com \ --cc=ojeda@kernel.org \ --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: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).