[PATCH v3 1/2] scripts/kernel-doc.py: don't create *.pyc files

Mauro Carvalho Chehab mchehab+huawei at kernel.org
Wed Apr 16 09:19:17 UTC 2025


Em Wed, 16 Apr 2025 11:34:16 +0300
Jani Nikula <jani.nikula at linux.intel.com> escreveu:

> On Wed, 16 Apr 2025, Mauro Carvalho Chehab <mchehab+huawei at 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.shevchenko at intel.com>
> > Closes: https://lore.kernel.org/linux-doc/Z_zYXAJcTD-c3xTe@black.fi.intel.com/
> > Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei at 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...

> 
> >  		touch $@
> >  
> >  $(obj)/%.hdrtest: $(src)/%.h FORCE
> > diff --git a/drivers/gpu/drm/i915/Makefile b/drivers/gpu/drm/i915/Makefile
> > index ed05b131ed3a..ab6b89a163e7 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 = PYTHONDONTWRITEBYTECODE=1 $(KERNELDOC) -none -Werror $<
> >  endif
> >  
> >  # header test
> > diff --git a/include/drm/Makefile b/include/drm/Makefile
> > index a7bd15d2803e..1df6962556ef 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) $<; \
> > +		PYTHONDONTWRITEBYTECODE=1 $(KERNELDOC) -none $(if $(CONFIG_WERROR)$(CONFIG_DRM_WERROR),-Werror) $<; \
> >  		touch $@
> >  
> >  $(obj)/%.hdrtest: $(src)/%.h FORCE
> > diff --git a/scripts/Makefile.build b/scripts/Makefile.build
> > index 13dcd86e74ca..884dc86ce04e 100644
> > --- a/scripts/Makefile.build
> > +++ b/scripts/Makefile.build
> > @@ -83,7 +83,7 @@ else ifeq ($(KBUILD_CHECKSRC),2)
> >  endif
> >  
> >  ifneq ($(KBUILD_EXTRA_WARN),)
> > -  cmd_checkdoc = $(srctree)/scripts/kernel-doc -none $(KDOCFLAGS) \
> > +  cmd_checkdoc = PYTHONDONTWRITEBYTECODE=1 $(KERNELDOC) -none $(KDOCFLAGS) \
> >          $(if $(findstring 2, $(KBUILD_EXTRA_WARN)), -Wall) \
> >          $<
> >  endif
> > 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  
> 


More information about the dri-devel mailing list