From: Masahiro Yamada <masahiroy@kernel.org>
To: linux-kbuild@vger.kernel.org
Cc: linux-kernel@vger.kernel.org, rust-for-linux@vger.kernel.org,
cocci@inria.fr, Masahiro Yamada <masahiroy@kernel.org>
Subject: [cocci] [PATCH v2 00/11] kbuild: support building external modules in a separate build directory
Date: Sun, 10 Nov 2024 10:34:28 +0900 [thread overview]
Message-ID: <20241110013649.34903-1-masahiroy@kernel.org> (raw)
There has been a long-standing request to support building external
modules in a separate build directory.
In v2, 05/11 introduces a 'srcroot' variable.
(I am not sure if this is the best name, though)
$(srcroot) points to the top of the source directory.
- When M= is not given, it is the top of the kernel source
- When M= is given, it is the top of the external module source
Masahiro Yamada (11):
kbuild: replace two $(abs_objtree) with $(CURDIR) in top Makefile
kbuild: add $(objtree)/ prefix to some in-kernel build artifacts
kbuild: rename abs_objtree to abs_output
kbuild: use 'output' variable to create the output directory
kbuild: change working directory to external module directory with M=
kbuild: remove extmod_prefix, MODORDER, MODULES_NSDEPS variables
kbuild: support building external modules in a separate build
directory
kbuild: support -fmacro-prefix-map for external modules
kbuild: use absolute path in the generated wrapper Makefile
kbuild: make wrapper Makefile more convenient for external modules
kbuild: allow to start building external modules in any directory
Documentation/dev-tools/coccinelle.rst | 20 +--
Documentation/kbuild/kbuild.rst | 8 +-
Documentation/kbuild/makefiles.rst | 14 ++
Documentation/kbuild/modules.rst | 29 ++++-
Makefile | 173 ++++++++++++++++---------
arch/arm/Makefile | 4 +-
arch/arm64/Makefile | 2 +-
arch/powerpc/Makefile | 4 +-
arch/riscv/Makefile | 2 +-
rust/Makefile | 4 +-
scripts/Kbuild.include | 2 +-
scripts/Makefile.build | 6 +-
scripts/Makefile.clean | 2 +-
scripts/Makefile.compiler | 2 +-
scripts/Makefile.host | 8 +-
scripts/Makefile.lib | 2 -
scripts/Makefile.modfinal | 20 +--
scripts/Makefile.modinst | 8 +-
scripts/Makefile.modpost | 24 ++--
scripts/coccicheck | 6 +-
scripts/depmod.sh | 4 +-
scripts/nsdeps | 10 +-
scripts/package/install-extmod-build | 7 +
23 files changed, 220 insertions(+), 141 deletions(-)
--
2.43.0
next reply other threads:[~2024-11-10 1:37 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-11-10 1:34 Masahiro Yamada [this message]
2024-11-10 1:34 ` [cocci] [PATCH v2 01/11] kbuild: replace two $(abs_objtree) with $(CURDIR) in top Makefile Masahiro Yamada
2024-11-10 1:34 ` [cocci] [PATCH v2 02/11] kbuild: add $(objtree)/ prefix to some in-kernel build artifacts Masahiro Yamada
2024-11-10 1:34 ` [cocci] [PATCH v2 03/11] kbuild: rename abs_objtree to abs_output Masahiro Yamada
2024-11-10 1:34 ` [cocci] [PATCH v2 04/11] kbuild: use 'output' variable to create the output directory Masahiro Yamada
2024-11-10 1:34 ` [cocci] [PATCH v2 05/11] kbuild: change working directory to external module directory with M= Masahiro Yamada
2024-11-18 14:47 ` Nicolas Schier
2024-11-18 17:02 ` Masahiro Yamada
2024-11-27 15:29 ` Nicolas Schier
2024-11-27 23:15 ` Masahiro Yamada
2024-12-04 20:51 ` Alison Schofield
2024-12-05 2:33 ` Masahiro Yamada
2024-12-05 2:06 ` Masahiro Yamada
[not found] ` <Z1DnP-GJcfseyrM3@ghost>
2024-12-05 2:48 ` Masahiro Yamada
[not found] ` <82FA2E02-05A5-4297-B364-9D7D89001D9D@linux.dev>
[not found] ` <1116D946-05F3-4463-A61F-DE221F258A3F@linux.dev>
2024-12-10 10:47 ` Masahiro Yamada
[not found] ` <838D0FCD-EA9C-46C8-BCA7-FECFD3DC04D8@linux.dev>
2024-12-11 2:36 ` Masahiro Yamada
[not found] ` <bdd5ff13-ec66-4ab6-985a-1fe433e85f91@nvidia.com>
2024-12-11 2:39 ` Masahiro Yamada
[not found] ` <b20db4db-afb4-4f58-bc01-ae1250abc8b0@nvidia.com>
2024-12-12 2:08 ` Masahiro Yamada
[not found] ` <eb21a546-a19c-40df-b821-bbba80f19a3d@nvidia.com>
2024-12-12 15:49 ` Masahiro Yamada
2025-01-27 23:08 ` Qu Wenruo
2024-11-10 1:34 ` [cocci] [PATCH v2 06/11] kbuild: remove extmod_prefix, MODORDER, MODULES_NSDEPS variables Masahiro Yamada
2024-11-10 1:34 ` [cocci] [PATCH v2 07/11] kbuild: support building external modules in a separate build directory Masahiro Yamada
2024-11-10 1:34 ` [cocci] [PATCH v2 08/11] kbuild: support -fmacro-prefix-map for external modules Masahiro Yamada
2024-11-10 1:34 ` [cocci] [PATCH v2 09/11] kbuild: use absolute path in the generated wrapper Makefile Masahiro Yamada
2024-11-10 1:34 ` [cocci] [PATCH v2 10/11] kbuild: make wrapper Makefile more convenient for external modules Masahiro Yamada
2024-11-10 1:34 ` [cocci] [PATCH v2 11/11] kbuild: allow to start building external modules in any directory 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=20241110013649.34903-1-masahiroy@kernel.org \
--to=masahiroy@kernel.org \
--cc=cocci@inria.fr \
--cc=linux-kbuild@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=rust-for-linux@vger.kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox