Em Wed, 16 Apr 2025 17:19:17 +0800 Mauro Carvalho Chehab <mchehab+hua...@kernel.org> escreveu:
> Em Wed, 16 Apr 2025 11:34:16 +0300 > Jani Nikula <jani.nik...@linux.intel.com> escreveu: > > > On Wed, 16 Apr 2025, Mauro Carvalho Chehab <mchehab+hua...@kernel.org> > > wrote: > > > As reported by Andy, kernel-doc.py is creating a __pycache__ > > > directory at build time. > > > > > > Disable creation of __pycache__ for the libraries used by > > > kernel-doc.py, when excecuted via the build system or via > > > scripts/find-unused-docs.sh. > > > > > > Reported-by: Andy Shevchenko <andriy.shevche...@intel.com> > > > Closes: > > > https://lore.kernel.org/linux-doc/z_zyxajctd-c3...@black.fi.intel.com/ > > > Signed-off-by: Mauro Carvalho Chehab <mchehab+hua...@kernel.org> > > > --- > > > drivers/gpu/drm/Makefile | 2 +- > > > drivers/gpu/drm/i915/Makefile | 2 +- > > > include/drm/Makefile | 2 +- > > > scripts/Makefile.build | 2 +- > > > scripts/find-unused-docs.sh | 2 +- > > > 5 files changed, 5 insertions(+), 5 deletions(-) > > > > > > diff --git a/drivers/gpu/drm/Makefile b/drivers/gpu/drm/Makefile > > > index ed54a546bbe2..d21d0cd2c752 100644 > > > --- a/drivers/gpu/drm/Makefile > > > +++ b/drivers/gpu/drm/Makefile > > > @@ -236,7 +236,7 @@ always-$(CONFIG_DRM_HEADER_TEST) += \ > > > quiet_cmd_hdrtest = HDRTEST $(patsubst %.hdrtest,%.h,$@) > > > cmd_hdrtest = \ > > > $(CC) $(c_flags) -fsyntax-only -x c /dev/null -include $< > > > -include $<; \ > > > - $(srctree)/scripts/kernel-doc -none $(if > > > $(CONFIG_WERROR)$(CONFIG_DRM_WERROR),-Werror) $<; \ > > > + PYTHONDONTWRITEBYTECODE=1 $(KERNELDOC) -none $(if > > > $(CONFIG_WERROR)$(CONFIG_DRM_WERROR),-Werror) $<; \ > > > > KERNELDOC is not set here. > > > > > /bin/sh: 1: -none: not found > > Weird. This is set on Documentation/Makefile: > > $ grep KERNELDOC Documentation/Makefile > KERNELDOC = $(srctree)/scripts/kernel-doc.py > ... > > drivers/gpu/drm/Makefile should be able to see this variable there... I suspect that the building system tries to confine variables to sub-directories, so maybe one solution would be to move it to the main makefile. could you please check if this patch solves the issue? [PATCH] Makefile: move KERNELDOC macro to the main Makefile As kernel-doc script is used not only on Documentation, but also on scripts and drivers/drm Makefiles, move it to the main makefile, as otherwise sub-makefiles may not have it. Signed-off-by: Mauro Carvalho Chehab <mchehab+hua...@kernel.org> diff --git a/Documentation/Makefile b/Documentation/Makefile index c022b97c487e..7a2069e87dbd 100644 --- a/Documentation/Makefile +++ b/Documentation/Makefile @@ -60,7 +60,6 @@ endif #HAVE_LATEXMK # Internal variables. PAPEROPT_a4 = -D latex_paper_size=a4 PAPEROPT_letter = -D latex_paper_size=letter -KERNELDOC = $(srctree)/scripts/kernel-doc.py KERNELDOC_CONF = -D kerneldoc_srctree=$(srctree) -D kerneldoc_bin=$(KERNELDOC) ALLSPHINXOPTS = $(KERNELDOC_CONF) $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) ifneq ($(wildcard $(srctree)/.config),) diff --git a/Makefile b/Makefile index 38689a0c3605..c8e46f0c1f63 100644 --- a/Makefile +++ b/Makefile @@ -458,6 +458,8 @@ endif HOSTRUSTC = rustc HOSTPKG_CONFIG = pkg-config +KERNELDOC = $(srctree)/scripts/kernel-doc.py + KBUILD_USERHOSTCFLAGS := -Wall -Wmissing-prototypes -Wstrict-prototypes \ -O2 -fomit-frame-pointer -std=gnu11 KBUILD_USERCFLAGS := $(KBUILD_USERHOSTCFLAGS) $(USERCFLAGS)