unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#74676] [core-packages-team 5/5] DRAFT gnu: gcc: Update gcc, gcc-toolchain to 14.
@ 2024-12-03 21:07 Janneke Nieuwenhuizen
  2024-12-05 19:45 ` Janneke Nieuwenhuizen
  0 siblings, 1 reply; 4+ messages in thread
From: Janneke Nieuwenhuizen @ 2024-12-03 21:07 UTC (permalink / raw)
  To: 74676
  Cc: Andreas Enge, Ludovic Courtès, Efraim Flashner,
	Ekaitz Zarraga, Janneke Nieuwenhuizen

Hello,

So, I've just built "hello" for x86_64-linux on "core-packages-team"
(yay!) mostly re-using gcc-14 patches/workarounds that I created for the
Hurd.

We probably want to keep this [switch to gcc-14] patch "bubbling" up on
top of the gcc-14 patches until the gcc-14 transition is done, keeping
every commit buildable.

Just opening this bug by sendding this email to have a placeholder for
discussing this, for the patches see "core-packages-team" (hope that's
OK).

Anyway, I have been using variants of

--8<---------------cut here---------------start------------->8---
"CFLAGS=-g -O2 -Wno-implicit-function-declaration"
--8<---------------cut here---------------end--------------->8---

while Ludo in hot-patch mode this morning used the already somewhat nicer

--8<---------------cut here---------------start------------->8---
[-DCMAKE_}C_FLAGS=-Wno-error=implicit-function-declaration"
--8<---------------cut here---------------end--------------->8---

To get build gcc-final to build on the 64bit Hurd I finally created a
gcc.sh wrapper script, after trying all kinds of variations of CFLAGS,
CFLAGS_FOR_BUILD in #:configure-flags, #:make-flags, see also
<https://gcc.gnu.org/gcc-14/porting_to.html> where they even suggest
using "-fpermissive".

Before pointing the build farm to core-packages-team and starting the
"real work" we may want to think about how to go forward.  On the one
hand, having CFLAGS patches littered all over the place is not great, on
the other hand, if we were to add compatibility flags to a wrapper for
gcc, or into build systems, we may never get rid of such a "feature".
Thoughts?

Greetings,
Janneke

-- 
Janneke Nieuwenhuizen <janneke@gnu.org>  | GNU LilyPond https://LilyPond.org
Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com




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

* [bug#74676] [core-packages-team 5/5] DRAFT gnu: gcc: Update gcc, gcc-toolchain to 14.
  2024-12-03 21:07 [bug#74676] [core-packages-team 5/5] DRAFT gnu: gcc: Update gcc, gcc-toolchain to 14 Janneke Nieuwenhuizen
@ 2024-12-05 19:45 ` Janneke Nieuwenhuizen
  2024-12-08 18:13   ` Janneke Nieuwenhuizen
  0 siblings, 1 reply; 4+ messages in thread
From: Janneke Nieuwenhuizen @ 2024-12-05 19:45 UTC (permalink / raw)
  To: 74676; +Cc: Andreas Enge, Ludovic Courtès, Efraim Flashner,
	Ekaitz Zarraga

Janneke Nieuwenhuizen writes:

Hi,

> So, I've just built "hello" for x86_64-linux on "core-packages-team"
> (yay!) mostly re-using gcc-14 patches/workarounds that I created for the
> Hurd.

[..]

I've all but reconfigured--guix system reconfigure as non-root--my
system, without childhurd, using what is now core-packages-team-old.
That really wasn't so bad, many packages just build with gcc-14.

I have tried to keep the scope of changes as small as possible but
attempted to "fix" packages build failures also by upgrading the
package.  For commencement and base packages I kept the scope narrow:
x86_64-linux, because it has proven to be very hard to predict what's
needed on other architectures.  For other packages, such as "zip", I
just added the mostly harmless -Wno-implicit-function-declaration flag
unguarded.

The *-old branch has a couple of hacks that neutralize impact to
commencement packages, marked "REMOVEME", to avoid world rebuilds as
sometimes some base package builds in commencement, but fails to build
lateron.

The new, cleaned-up, and rebased core-packages-team branch is as such
untested, but "should work".  WDYT?  Can we point the build-farm to this
branch to help out?

Greetings,
Janneke

-- 
Janneke Nieuwenhuizen <janneke@gnu.org>  | GNU LilyPond https://LilyPond.org
Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com




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

* [bug#74676] [core-packages-team 5/5] DRAFT gnu: gcc: Update gcc, gcc-toolchain to 14.
  2024-12-05 19:45 ` Janneke Nieuwenhuizen
@ 2024-12-08 18:13   ` Janneke Nieuwenhuizen
  2024-12-16 21:43     ` Janneke Nieuwenhuizen
  0 siblings, 1 reply; 4+ messages in thread
From: Janneke Nieuwenhuizen @ 2024-12-08 18:13 UTC (permalink / raw)
  To: 74676; +Cc: Andreas Enge, Ludovic Courtès, Efraim Flashner,
	Ekaitz Zarraga

Janneke Nieuwenhuizen writes:

Hi,

>> So, I've just built "hello" for x86_64-linux on "core-packages-team"
>> (yay!) mostly re-using gcc-14 patches/workarounds that I created for the
>> Hurd.
>
> [..]
>
> I've all but reconfigured--guix system reconfigure

That was apparently not true, somewhere in the process I somehow built from
another branch.  Anyway, still making good progress.... :-/

On IRC, Efraim reports that i686-linux and aarch64-linux fail to build
hello on current core-packages-team.  That makes me reconsider whether
this strategy

> I kept the scope narrow: x86_64-linux, because it has proven to be
> very hard to predict what's needed on other architectures.

which makes a lot of sense for patches that go to "master" is a good
strategy for core-packages-team.  Possibly it's better to use an
unlimited scope?  Oh well.

Greetings,
Janneke -- building /gnu/store/m5m6qzlxypk1y58yp69501rhq5qmz3r4-llvm-18.1.8.drv...

-- 
Janneke Nieuwenhuizen <janneke@gnu.org>  | GNU LilyPond https://LilyPond.org
Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com




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

* [bug#74676] [core-packages-team 5/5] DRAFT gnu: gcc: Update gcc, gcc-toolchain to 14.
  2024-12-08 18:13   ` Janneke Nieuwenhuizen
@ 2024-12-16 21:43     ` Janneke Nieuwenhuizen
  0 siblings, 0 replies; 4+ messages in thread
From: Janneke Nieuwenhuizen @ 2024-12-16 21:43 UTC (permalink / raw)
  To: 74676; +Cc: Andreas Enge, Ludovic Courtès, Efraim Flashner,
	Ekaitz Zarraga

Janneke Nieuwenhuizen writes:

Hello,

>>> So, I've just built "hello" for x86_64-linux on "core-packages-team"
>>> (yay!) mostly re-using gcc-14 patches/workarounds that I created for the
>>> Hurd.
>>
>> [..]
>>
>> I've all but reconfigured--guix system reconfigure
>
> That was apparently not true, somewhere in the process I somehow built from
> another branch.  Anyway, still making good progress.... :-/
>
> On IRC, Efraim reports that i686-linux and aarch64-linux fail to build
> hello on current core-packages-team.  That makes me reconsider whether
> this strategy
>
>> I kept the scope narrow: x86_64-linux, because it has proven to be
>> very hard to predict what's needed on other architectures.
>
> which makes a lot of sense for patches that go to "master" is a good
> strategy for core-packages-team.  Possibly it's better to use an
> unlimited scope?  Oh well.

The current core-packages-team uses the gcc and bash fixes for all
platforms and now also supports building all gcc versions from 4.8 and
up, and I've just built hello again for x86_64-linux.

I've built the rust bootstrap several times already, guess I'll just go
for a new round.  But this time we can maybeu "cheat" with packages that
are too difficult to build, and build them with another gcc version than
14?

Greetings,
Janneke

-- 
Janneke Nieuwenhuizen <janneke@gnu.org>  | GNU LilyPond https://LilyPond.org
Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com




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

end of thread, other threads:[~2024-12-16 21:45 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-12-03 21:07 [bug#74676] [core-packages-team 5/5] DRAFT gnu: gcc: Update gcc, gcc-toolchain to 14 Janneke Nieuwenhuizen
2024-12-05 19:45 ` Janneke Nieuwenhuizen
2024-12-08 18:13   ` Janneke Nieuwenhuizen
2024-12-16 21:43     ` Janneke Nieuwenhuizen

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).