[PATCH v4 1/2] init/Kconfig: add python3 availability config
Masahiro Yamada
masahiroy at kernel.org
Tue Nov 26 04:12:33 UTC 2024
On Sat, Nov 23, 2024 at 5:42 AM Petr Vorel <pvorel at suse.cz> wrote:
>
> > On Thu, Nov 21, 2024 at 10:49 AM Rob Clark <robdclark at gmail.com> wrote:
>
> > > On Wed, Nov 20, 2024 at 5:17 PM Petr Vorel <pvorel at suse.cz> wrote:
>
> > > > > On Thu, Nov 21, 2024 at 5:41 AM Petr Vorel <pvorel at suse.cz> wrote:
>
> > > > > > It will be used in the next commit for DRM_MSM.
>
> > > > > > Suggested-by: Rob Clark <robdclark at gmail.com>
> > > > > > Signed-off-by: Petr Vorel <pvorel at suse.cz>
> > > > > > ---
> > > > > > Changes v3->v4:
> > > > > > * Move definition to the end of the file
>
>
> > > > > I prefer to not check the tool.
>
> > > > Ack.
>
> > > > > Why don't you install python3?
>
> > > > Everybody installs it when it's required, the question is how to inform about
> > > > the dependency.
>
> > > > There build environments are minimal environments:
> > > > * chroot (e.g. cross compilation)
> > > > * container
>
> > > > These are used by both developers and distros.
>
> > > I don't think py3 is an _onerous_ dependency, but it has come up as a
> > > surprise in minimal distro build environments at least once.. so I'd
> > > be a fan of surfacing this dependency in a predictable/understandable
> > > way (ie. I'm in favor of this patchset)
>
>
> > "once" is a keyword here.
>
> > "/bin/sh: python3: not found" provides sufficient information
> > about why the compilation failed, and you know what to do
> > to fix the problem.
> > This is good.
>
> > If you hide CONFIG_DRM_MSM silently
> > due to missing python3, you may scratch your head
> > "why drm/msm was not compiled?".
> It's not on the list, but still visible in help (via search).
>
> > This is worse.
>
> I'm ok with this being refused. Yes, it's a trivial thing to find that python3
> is not installed. I wasn't sure myself if this is really better. Having
> something like "requires $(PYTHON3)" would be best solution (e.g. not disable
> the config, but exit before starting to build), but of course unless this
> feature is needed for many modules it does not make sense to have it.
> It's because kernel mostly contains everything (unless languages like python
> or any other dependency starts to be added). For this reason I like that
> mconf-cfg.sh warns when missing ncurses devel files (even suggesting package
> names).
>
> Just to explain what was my motivation. CONFIG_DRM_MSM in in arm64 defconfig,
> thus it will affect anybody who uses the defconfig (any distro will need to add
> it).
arch/arm64/configs/defconfig is a multi-platform config.
If CONFIG_DRM_MSM exists in arch/arm64/configs/defconfig
and if you want to build arm64 defconfig, you need to install
all necessary tools for that.
>
> It's needed only for Qualcomm arm64 devices only. But only for these devices
> which are mainlined enough to really use CONFIG_DRM_MSM (many of them aren't in
> that state).
>
> postmarketOS is the distribution which supports Qualcomm. It stores kernel
> config for each device and devices often have individual maintainer. E.g. 175x
> "once" :).
If you do not want to be bothered by unnecessary drivers,
you need to disable the relevant CONFIG option.
(e.g, scripts/config -d CONFIG_DRM_MSM)
This is the standard way we have for many years.
--
Best Regards
Masahiro Yamada
More information about the dri-devel
mailing list