qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 17/41] doc/build-platforms: document supported compilers


From: Marc-André Lureau
Subject: Re: [PATCH 17/41] doc/build-platforms: document supported compilers
Date: Wed, 20 Apr 2022 20:52:13 +0400

Hi

On Wed, Apr 20, 2022 at 8:11 PM Thomas Huth <thuth@redhat.com> wrote:
>
> On 20/04/2022 17.32, Marc-André Lureau wrote:
> > Hi
> >
> > On Wed, Apr 20, 2022 at 7:24 PM Daniel P. Berrangé <berrange@redhat.com> 
> > wrote:
> >>
> >> On Wed, Apr 20, 2022 at 06:50:12PM +0400, Marc-André Lureau wrote:
> >>> Hi
> >>>
> >>> On Wed, Apr 20, 2022 at 6:46 PM Marc-André Lureau
> >>> <marcandre.lureau@redhat.com> wrote:
> >>>>
> >>>> Hi
> >>>>
> >>>> On Wed, Apr 20, 2022 at 6:37 PM Thomas Huth <thuth@redhat.com> wrote:
> >>>>>
> >>>>> On 20/04/2022 16.10, Daniel P. Berrangé wrote:
> >>>>>> On Wed, Apr 20, 2022 at 05:26:00PM +0400, marcandre.lureau@redhat.com 
> >>>>>> wrote:
> >>>>>>> From: Marc-André Lureau <marcandre.lureau@redhat.com>
> >>>>>>>
> >>>>>>> According to our configure checks, this is the list of supported
> >>>>>>> compilers.
> >>>>>>>
> >>>>>>> Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
> >>>>>>> Reviewed-by: Damien Hedde <damien.hedde@greensocs.com>
> >>>>>>> ---
> >>>>>>>    docs/about/build-platforms.rst | 10 ++++++++++
> >>>>>>>    1 file changed, 10 insertions(+)
> >>>>>>>
> >>>>>>> diff --git a/docs/about/build-platforms.rst 
> >>>>>>> b/docs/about/build-platforms.rst
> >>>>>>> index c29a4b8fe649..1980c5d2476f 100644
> >>>>>>> --- a/docs/about/build-platforms.rst
> >>>>>>> +++ b/docs/about/build-platforms.rst
> >>>>>>> @@ -92,6 +92,16 @@ hosted on Linux (Debian/Fedora).
> >>>>>>>    The version of the Windows API that's currently targeted is Vista 
> >>>>>>> / Server
> >>>>>>>    2008.
> >>>>>>>
> >>>>>>> +Supported compilers
> >>>>>>> +-------------------
> >>>>>>> +
> >>>>>>> +To compile, QEMU requires either:
> >>>>>>> +
> >>>>>>> +- GCC >= 7.4.0
> >>>>>>> +- Clang >= 6.0
> >>>>>>> +- XCode Clang >= 10.0
> >>>>>>
> >>>>>> Do we need to spell out the versions explicitly ? These versions are
> >>>>>> all derived from what's available in the repos of the supported build
> >>>>>> platforms, similar to any other build deps we have. I don't think we
> >>>>>> want to start a precedent of duplicating versions in this doc for
> >>>>>> build deps we have, and there's nothing particularly special about
> >>>>>> compilers in this respect.
> >>>>>
> >>>>> I agree with Daniel - when I saw this patch, the first thought that I 
> >>>>> had
> >>>>> was: "This will be getting out of sync quickly" ...
> >>>>
> >>>> I don't have the impression we bump our compiler requirement regularly
> >>>> or lightly.
> >>>>
> >>>>> so I'd also recommend to rather not add this here.
> >>>>
> >>>> Outdated documentation is still better than no documentation. YMMV.
> >>>
> >>> Another question that is difficult to answer without being familiar
> >>> with QEMU details is whether it can compile with MSVC. This
> >>> documentation would, since it is explicit about the requirement.
> >>
> >> Documenting that we mandate GCC or Clang is reasonable. Ideally we could
> >> have a list of all 3rd party deps we have in fact, I'm just not a fan of
> >> copying the version numbers across from configure/meson.
> >>
> >
> > I agree, duplicating the version information is not optimal... Yet it
> > is better than not having it, or having to read or run configure imho.
>
> Well, no, it's better to have it in the configure script. Every user who
> wants to compile QEMU will run the configure script, but not necessarily
> read the documentation first.

Iirc, I came up with this question because I was modifying some header
(something in compiler.h or atomic.h). My initial reaction was not to
run configure. It would not help answer the question...

>
> > Sorry (or not) to insist, but it would help having an explicit list of
> > supported compilers in the human doc
>
> ... and what about necessary libraries ... if you start with the compilers
> here, shouldn't we also list the necessary versions of glib, libfdt, pixman,
> etc. here? ... No, IMHO this really does not scale, you could maybe mention
> that GCC or Clang is necessary, and maybe that you need at least glib to
> compile QEMU, but listing the versions there is just duplicated information
> that will be ugly to maintain, without too much real benefit for the users
> (they already know whether their distro is supported or not), and way too
> much hassle for the developers.
>

The compilers are (mostly) interchangeable, it's not the case for the
dependencies. But it would be nice to document our strict requirements
imho.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]