Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: "Yann E. MORIN" <yann.morin.1998@free.fr>
To: Fiona Klute <fiona.klute@gmx.de>
Cc: Fabrice Fontaine <fontaine.fabrice@gmail.com>,
	iMarcus Hoffmann <buildroot@bubu1.eu>,
	buildroot@buildroot.org
Subject: Re: [Buildroot] GLib/GObject-introspection bootstrap
Date: Mon, 19 Aug 2024 22:30:46 +0200	[thread overview]
Message-ID: <ZsOrdr_Wyujsgqh7@landeda> (raw)
In-Reply-To: <44f9f8a3-9ebf-4cad-acd8-1b6331581c72@gmx.de>

Fiona, All,

+Marcus

On 2024-08-19 19:52 +0200, Fiona Klute via buildroot spake thusly:
> I'm currently trying to upgrade GLib & GObject-introspection to their
> current versions (1.80.4 and 1.80.1), not least because those work with
> musl without patching.

Not a small task you started there...

There was was some previous talks about that on IRC, but I haven't seen
anything materialising so far... Marcus, are you still looking into
that?

So, for the records, here's my suggestion below...

> The difficulty is that GLib now needs a sort of
> bootstrap process:
> 
> * Build GLib with -Dintrospection=disabled
> * Build GObject-introspection
> * Build GLib with -Dintrospection=enabled
> 
> Description in the GLib NEWS file:
> https://gitlab.gnome.org/GNOME/glib/-/blob/17d1bf3c4962d942feea0830aeee6833104fef5d/NEWS#L429-438
> 
> What would be the preferred way to implement this in Buildroot? Is there
> a built-in way to rebuild a package with different config after building
> another package for such situations? Or should I include that bootstrap
> build of GObject-introspection in libglib2.mk (like Alpine does)? In the
> latter case the GLib package would share the source archive with
> GObject-introspection and I remember reading on the ML that there's
> support for that, would be great if someone could point me at it if
> relevant.

So, the way to go would be to introduce a new package,
libglib2-bootstrap, where the no-introspection libglib2 is built.

Then GObject-introspectionGObject-GObject-introspection depends on
libglib2-bootstrap.

To share download, you'd tell libglib2-bootstrap to share its download
with libglib2:
    LIBGLIB2_BOOTSTRAP_DL_SUBDIR = libglib2

Note that there is also the case for host-libglib2: do we need an
introspection-aware host-libglib2, or can we do without it? If the
former, then we'll need libglib2-bootstrap to also be a host package.

> Also, when I prepare patches, should I just drop the glibc requirement
> for GObject-introspection, or add musl? I have no idea if it works with
> uClibc.

Just add musl.

> Likewise, are the checks for (ancient) GCC versions still relevant?

Not sure what you meant here: libglib2 has no dependency on a gcc
version. gobject-introspection does, however, and I doubt they would no
longer be releveant; they may even be more stringent. Ypou'd have to
check what libglib2 anf goi state they require.

Regards,
Yann E. MORIN.

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 561 099 427 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

  reply	other threads:[~2024-08-19 20:32 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-08-19 17:52 [Buildroot] GLib/GObject-introspection bootstrap Fiona Klute via buildroot
2024-08-19 20:30 ` Yann E. MORIN [this message]
2024-08-21 13:38   ` Fiona Klute via buildroot
2024-08-19 22:16 ` Marcus Hoffmann via buildroot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ZsOrdr_Wyujsgqh7@landeda \
    --to=yann.morin.1998@free.fr \
    --cc=buildroot@bubu1.eu \
    --cc=buildroot@buildroot.org \
    --cc=fiona.klute@gmx.de \
    --cc=fontaine.fabrice@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox