All of lore.kernel.org
 help / color / mirror / Atom feed
* Minimum compiler version (was: Re: [PATCH v5 0/4] Update gnulib and drop some patches)
@ 2022-02-26  1:50 Glenn Washburn
  2022-02-26  7:37 ` Heinrich Schuchardt
  2022-02-28 17:24 ` Robbie Harwood
  0 siblings, 2 replies; 4+ messages in thread
From: Glenn Washburn @ 2022-02-26  1:50 UTC (permalink / raw)
  To: Daniel Kiper; +Cc: Robbie Harwood, grub-devel

On Tue, 22 Feb 2022 18:17:51 +0100
Daniel Kiper <dkiper@net-space.pl> wrote:
> The GRUB INSTALL file says:
> 
>   The Requirements
>   ================
> 
>   GRUB depends on some software packages installed into your system. If
>   you don't have any of them, please obtain and install them before
>   configuring the GRUB.
> 
>   * GCC 5.1.0 or later
> 
> So, even if it is old it is perfectly valid compiler according to the
> GRUB docs.
> 
> Hmmm... What are the latest gnulib minimal compiler, linker, etc. requirements?

In working on the testing system, I noticed that kernel.org provides no
RISC cross compilers for x86_64 for GCC version < 7.3. I'm not sure if
that's because there isn't support in earlier versions. The other
recommended pre-built cross toolchain site toolchains.bootlin.com only
has prebuilts for somewhat recent GCC versions (9.3 is the earliest for
risc32/64). So the documentation above may be misleading for RISC.

I like the idea of really old GCC versions be supported if its not a
burden, but are we actually testing that GRUB does compile with 5.1.0
(at a minimum even for releases)? I think the minimum supported version
of GCC should be a version that is actually tested with.

GCC 5.1.0 looks like it came out on April 22, 2015[1] and 5.2 was used
in Ubuntu Xenial from 2016 (which is no longer supported). At what
point do we bump up the minimum supported version? And doing so
wouldn't mean that GRUB can't be compiled with eariler versions of GCC,
it just means we don't test that. I also think it would be acceptable
to accept patches that fix issues with compiling on GCC versions less
than the stated minimum supported version (with in reason and subject
to discretion).

One idea is to update the minimum supported version every release cycle
to the lowest GCC version that is about 5 years old (that's artitrary
but seems reasonable).

I'm interested in this because it seems to imply that for the testing
system it should do two compilations for every target, one for the
munimum supported GCC and one for a somewhat recent version.

Glenn

[1] https://gcc.gnu.org/releases.html


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Minimum compiler version (was: Re: [PATCH v5 0/4] Update gnulib and drop some patches)
  2022-02-26  1:50 Minimum compiler version (was: Re: [PATCH v5 0/4] Update gnulib and drop some patches) Glenn Washburn
@ 2022-02-26  7:37 ` Heinrich Schuchardt
  2022-02-28 17:24 ` Robbie Harwood
  1 sibling, 0 replies; 4+ messages in thread
From: Heinrich Schuchardt @ 2022-02-26  7:37 UTC (permalink / raw)
  To: The development of GNU GRUB, Glenn Washburn, Daniel Kiper; +Cc: Robbie Harwood

On 2/26/22 02:50, Glenn Washburn wrote:
> On Tue, 22 Feb 2022 18:17:51 +0100
> Daniel Kiper <dkiper@net-space.pl> wrote:
>> The GRUB INSTALL file says:
>>
>>    The Requirements
>>    ================
>>
>>    GRUB depends on some software packages installed into your system. If
>>    you don't have any of them, please obtain and install them before
>>    configuring the GRUB.
>>
>>    * GCC 5.1.0 or later
>>
>> So, even if it is old it is perfectly valid compiler according to the
>> GRUB docs.
>>
>> Hmmm... What are the latest gnulib minimal compiler, linker, etc. requirements?
>
> In working on the testing system, I noticed that kernel.org provides no
> RISC cross compilers for x86_64 for GCC version < 7.3. I'm not sure if
> that's because there isn't support in earlier versions. The other
> recommended pre-built cross toolchain site toolchains.bootlin.com only
> has prebuilts for somewhat recent GCC versions (9.3 is the earliest for
> risc32/64). So the documentation above may be misleading for RISC.

RISC-V support was first introduced in GCC 7:
https://gcc.gnu.org/gcc-7/changes.html

Best regards

Heinrich

>
> I like the idea of really old GCC versions be supported if its not a
> burden, but are we actually testing that GRUB does compile with 5.1.0
> (at a minimum even for releases)? I think the minimum supported version
> of GCC should be a version that is actually tested with.
>
> GCC 5.1.0 looks like it came out on April 22, 2015[1] and 5.2 was used
> in Ubuntu Xenial from 2016 (which is no longer supported). At what
> point do we bump up the minimum supported version? And doing so
> wouldn't mean that GRUB can't be compiled with eariler versions of GCC,
> it just means we don't test that. I also think it would be acceptable
> to accept patches that fix issues with compiling on GCC versions less
> than the stated minimum supported version (with in reason and subject
> to discretion).
>
> One idea is to update the minimum supported version every release cycle
> to the lowest GCC version that is about 5 years old (that's artitrary
> but seems reasonable).
>
> I'm interested in this because it seems to imply that for the testing
> system it should do two compilations for every target, one for the
> munimum supported GCC and one for a somewhat recent version.
>
> Glenn
>
> [1] https://gcc.gnu.org/releases.html
>
> _______________________________________________
> Grub-devel mailing list
> Grub-devel@gnu.org
> https://lists.gnu.org/mailman/listinfo/grub-devel



^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Minimum compiler version (was: Re: [PATCH v5 0/4] Update gnulib and drop some patches)
  2022-02-26  1:50 Minimum compiler version (was: Re: [PATCH v5 0/4] Update gnulib and drop some patches) Glenn Washburn
  2022-02-26  7:37 ` Heinrich Schuchardt
@ 2022-02-28 17:24 ` Robbie Harwood
  2022-03-04 20:25   ` Daniel Kiper
  1 sibling, 1 reply; 4+ messages in thread
From: Robbie Harwood @ 2022-02-28 17:24 UTC (permalink / raw)
  To: development, Daniel Kiper; +Cc: grub-devel

[-- Attachment #1: Type: text/plain, Size: 1121 bytes --]

Glenn Washburn <development@efficientek.com> writes:

> GCC 5.1.0 looks like it came out on April 22, 2015[1] and 5.2 was used
> in Ubuntu Xenial from 2016 (which is no longer supported). At what
> point do we bump up the minimum supported version? And doing so
> wouldn't mean that GRUB can't be compiled with eariler versions of
> GCC, it just means we don't test that. I also think it would be
> acceptable to accept patches that fix issues with compiling on GCC
> versions less than the stated minimum supported version (with in
> reason and subject to discretion).
>
> One idea is to update the minimum supported version every release cycle
> to the lowest GCC version that is about 5 years old (that's artitrary
> but seems reasonable).
>
> I'm interested in this because it seems to imply that for the testing
> system it should do two compilations for every target, one for the
> munimum supported GCC and one for a somewhat recent version.

I support raising the minimum compiler version.

Looking at https://www.gnu.org/software/gcc/releases.html , a five-year
proposal would raise to gcc-7.

Be well,
--Robbie

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 861 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Minimum compiler version (was: Re: [PATCH v5 0/4] Update gnulib and drop some patches)
  2022-02-28 17:24 ` Robbie Harwood
@ 2022-03-04 20:25   ` Daniel Kiper
  0 siblings, 0 replies; 4+ messages in thread
From: Daniel Kiper @ 2022-03-04 20:25 UTC (permalink / raw)
  To: Robbie Harwood; +Cc: development, grub-devel

On Mon, Feb 28, 2022 at 12:24:50PM -0500, Robbie Harwood wrote:
> Glenn Washburn <development@efficientek.com> writes:
>
> > GCC 5.1.0 looks like it came out on April 22, 2015[1] and 5.2 was used
> > in Ubuntu Xenial from 2016 (which is no longer supported). At what
> > point do we bump up the minimum supported version? And doing so
> > wouldn't mean that GRUB can't be compiled with eariler versions of
> > GCC, it just means we don't test that. I also think it would be
> > acceptable to accept patches that fix issues with compiling on GCC
> > versions less than the stated minimum supported version (with in
> > reason and subject to discretion).
> >
> > One idea is to update the minimum supported version every release cycle
> > to the lowest GCC version that is about 5 years old (that's artitrary
> > but seems reasonable).

I think we should support a given minimum compiler version until it does
not require a lot of effort from our side. So, as long as possible...

> > I'm interested in this because it seems to imply that for the testing
> > system it should do two compilations for every target, one for the
> > munimum supported GCC and one for a somewhat recent version.

I fully agree with this.

> I support raising the minimum compiler version.
>
> Looking at https://www.gnu.org/software/gcc/releases.html , a five-year
> proposal would raise to gcc-7.

I am OK with this because as it was pointed out in other places older
compilers do not support RISC-V builds. Of course if I do not hear
a lot of complaints... :-)

So, I am looking forward for an INSTALL file patch...

Daniel


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2022-03-04 20:25 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-02-26  1:50 Minimum compiler version (was: Re: [PATCH v5 0/4] Update gnulib and drop some patches) Glenn Washburn
2022-02-26  7:37 ` Heinrich Schuchardt
2022-02-28 17:24 ` Robbie Harwood
2022-03-04 20:25   ` Daniel Kiper

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.