On Wed, 16 Apr 2025, Jani Nikula <jani.nik...@linux.intel.com> wrote: > 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/find-unused-docs.sh | 2 +- >> 4 files changed, 4 insertions(+), 4 deletions(-) >> >> diff --git a/drivers/gpu/drm/Makefile b/drivers/gpu/drm/Makefile >> index ed54a546bbe2..1469d64f8783 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) $<; \ >> + $(KERNELDOC) PYTHONDONTWRITEBYTECODE=1 -none $(if >> $(CONFIG_WERROR)$(CONFIG_DRM_WERROR),-Werror) $<; \ > > It doesn't work to put PYTHONDONTWRITEBYTECODE=1 as a parameter to > kernel-doc...
Moreover, KERNELDOC is only defined in Documentation/Makefile. It's empty here. Also scripts/Makefile.build uses kernel-doc, which is probably the one creating __pycache__ Andy sees. > > BR, > Jani. > > >> touch $@ >> >> $(obj)/%.hdrtest: $(src)/%.h FORCE >> diff --git a/drivers/gpu/drm/i915/Makefile b/drivers/gpu/drm/i915/Makefile >> index ed05b131ed3a..bb873f9cc2aa 100644 >> --- a/drivers/gpu/drm/i915/Makefile >> +++ b/drivers/gpu/drm/i915/Makefile >> @@ -408,7 +408,7 @@ obj-$(CONFIG_DRM_I915_GVT_KVMGT) += kvmgt.o >> # >> # Enable locally for CONFIG_DRM_I915_WERROR=y. See also >> scripts/Makefile.build >> ifdef CONFIG_DRM_I915_WERROR >> - cmd_checkdoc = $(srctree)/scripts/kernel-doc -none -Werror $< >> + cmd_checkdoc = $(KERNELDOC) PYTHONDONTWRITEBYTECODE=1 -none -Werror $< >> endif >> >> # header test >> diff --git a/include/drm/Makefile b/include/drm/Makefile >> index a7bd15d2803e..6088ea458f44 100644 >> --- a/include/drm/Makefile >> +++ b/include/drm/Makefile >> @@ -11,7 +11,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) $<; \ >> + $(KERNELDOC) PYTHONDONTWRITEBYTECODE=1 -none $(if >> $(CONFIG_WERROR)$(CONFIG_DRM_WERROR),-Werror) $<; \ >> touch $@ >> >> $(obj)/%.hdrtest: $(src)/%.h FORCE >> diff --git a/scripts/find-unused-docs.sh b/scripts/find-unused-docs.sh >> index ee6a50e33aba..d6d397fbf917 100755 >> --- a/scripts/find-unused-docs.sh >> +++ b/scripts/find-unused-docs.sh >> @@ -54,7 +54,7 @@ for file in `find $1 -name '*.c'`; do >> if [[ ${FILES_INCLUDED[$file]+_} ]]; then >> continue; >> fi >> - str=$(scripts/kernel-doc -export "$file" 2>/dev/null) >> + str=$(PYTHONDONTWRITEBYTECODE=1 scripts/kernel-doc -export "$file" >> 2>/dev/null) >> if [[ -n "$str" ]]; then >> echo "$file" >> fi -- Jani Nikula, Intel