[libcamera-devel] [PATCH v2 1/3] apps: qcam: Port to Qt 6
Kieran Bingham
kieran.bingham at ideasonboard.com
Mon Jan 22 17:02:08 CET 2024
Quoting Neal Gompa (2024-01-22 14:08:37)
> On Mon, Jan 22, 2024 at 8:07 AM Kieran Bingham
> <kieran.bingham at ideasonboard.com> wrote:
> >
> > Quoting Neal Gompa (2024-01-22 11:08:33)
> > > On Mon, Jan 22, 2024 at 6:00 AM Kieran Bingham
> > > <kieran.bingham at ideasonboard.com> wrote:
> > > >
> > > > Quoting Laurent Pinchart (2024-01-22 09:53:39)
> > > > > On Mon, Jan 22, 2024 at 09:38:33AM +0000, Kieran Bingham via libcamera-devel wrote:
> > > > > > Aha, I missed that there was already a v2.
> > > > > >
> > > > > > Quoting Neal Gompa via libcamera-devel (2024-01-21 22:39:53)
> > > > > > > Open source Qt 5 has been effectively end of life since the release
> > > > > > > of Qt 6, and Qt 6 has current LTS releases now.
> > > > > > >
> > > > > > > This change ports qcam to Qt 6.2 and drops some of the baggage related
> > > > > > > to Qt 5 that is no longer applicable.
> > > > > > >
> > > > > > > Signed-off-by: Neal Gompa <neal at gompa.dev>
> > > > > > > ---
> > > > > > > README.rst | 2 +-
> > > > > > > meson.build | 2 +-
> > > > > > > src/apps/qcam/meson.build | 45 +++++++++++----------------------------
> > > > > > > 3 files changed, 15 insertions(+), 34 deletions(-)
> > > > > > >
> > > > > > > diff --git a/README.rst b/README.rst
> > > > > > > index 315738ee..6f1c9302 100644
> > > > > > > --- a/README.rst
> > > > > > > +++ b/README.rst
> > > > > > > @@ -88,7 +88,7 @@ for cam: [optional]
> > > > > > > - libsdl2-dev: Enables the SDL sink
> > > > > > >
> > > > > > > for qcam: [optional]
> > > > > > > - libtiff-dev qtbase5-dev qttools5-dev-tools
> > > > > > > + libtiff-dev qt6-base-dev qt6-tools-dev-tools
> > > > > > >
> > > > > > > for tracing with lttng: [optional]
> > > > > > > liblttng-ust-dev python3-jinja2 lttng-tools
> > > > > > > diff --git a/meson.build b/meson.build
> > > > > > > index cb6b666a..4c315e2a 100644
> > > > > > > --- a/meson.build
> > > > > > > +++ b/meson.build
> > > > > > > @@ -1,7 +1,7 @@
> > > > > > > # SPDX-License-Identifier: CC0-1.0
> > > > > > >
> > > > > > > project('libcamera', 'c', 'cpp',
> > > > > > > - meson_version : '>= 0.60',
> > > > > > > + meson_version : '>= 0.63',
> > > > > >
> > > > > > Debian Bookworm: is currently at 1.0.1-5
> > > > > > https://packages.debian.org/source/stable/meson
> > > > > >
> > > > > > Ubuntu 22.04.3 is currently at 0.61.2-1 :-(
> > > > > > https://packages.ubuntu.com/jammy/meson
> > > > > >
> > > > > > We're about 3 months away from Ubuntu 24.04 ...
> > > > > >
> > > > > >
> > > > > > Fedora is in a better shape, and all Fedora releases in support have a
> > > > > > recent Meson at 1.2.3 or later:
> > > > > > https://src.fedoraproject.org/rpms/meson
> > > > > >
> > > > > > Redhat Enterprise linux looks more problematic - So I'm not sure if that
> > > > > > should be included in fact.
> > > > > >
> > > > > > OpenSuse seems to be already at 1.3.1 too:
> > > > > > https://software.opensuse.org/package/meson?locale=en
> > > > > >
> > > > > > So it's just Ubuntu/Canonical holding us back here ...
> > > > > >
> > > > > > Any thoughts anyone?
> > > > >
> > > > > I was hoping jammy-backports would help us, but that doesn't seem to be
> > > > > the case :-(
> > > > >
> > > > > As there doesn't seem to be an urgency to switch to Qt 6 (unless I'm
> > > > > missing something), I'm tempted to propose waiting until Ubuntu 24.04
> > > > > gets released.
> > > >
> > > > Noble (24.04) will have either 1.2.1 or 1.3.1 (there are different
> > > > versions in proposed and Release). Either way it will be > 1.2! :
> > > > https://launchpad.net/ubuntu/noble/+package/meson
> > > >
> > > > I would propose that the meson version update is separated from the
> > > > patch as a preceeding commit, and could already be resent. Then we can
> > > > simply pick these in April. I'd probably say we could merge this in
> > > > early April, such that we can make a release of libcamera with that
> > > > support merged soon after Ubuntu 24.04 is released on April 25th.
> > > >
> > >
> > > On the flip side, if it's merged and released into Debian before the
> > > Ubuntu freeze on Feb 29[1], then it would be part of Ubuntu 24.04
> > > itself.
> >
> > That's an interesting take too.
> >
> > Which one is the chicken and which one is the egg?
> >
> > Our early requirement for meeting the dependencies in the distributions
> > was because the distributions themselves were not including libcamera.
> > Therefore, users of libcamera /had/ to be able to build libcamera.
> >
> > Now that things can be included, perhaps that's reason enough to say
> > aiming for integration is better.
> >
> > > [1]: https://discourse.ubuntu.com/t/noble-numbat-release-schedule/35649
> >
> > It looks like libcamera-0.2 is already included in the noble release, so
> > package updates into debian look like they get into Ubuntu quite 'fast'.
> >
> > I feel like targetting getting /into/ the next Ubuntu LTS with updates
> > is better than working on /top/ of it.
> >
> > The expense/cost is that in between we would no longer support compiling
> > the master branch (or intermediate releases) with the 'current' LTS of
> > Ubuntu.
> >
> > I could say "Oh well, that probably doesn't matter" ... except ... I use
> > Ubuntu-22.04 as my main distro ... and I would plan to upgrade at the
> > next release.
> >
> > I'm aware that I can work around this issue by upgrading meson myself.
> > The question is what will happen to others ... and maybe it's just
> > something we should bite and help them upgrade meson in the interim.
> >
>
> Well, in a previous life I used to maintain Meson backports for Ubuntu.
>
> I'm happy to provide a package (based on the CentOS 9 one) for Ubuntu
> 22.04 until 24.04 is released if it would help you:
> https://software.opensuse.org//download.html?project=home%3APharaoh_Atem%3AMeson&package=meson
Is there an official Ubuntu channel for that? If you can make
'ubuntu-22.04' support a later meson - I have no argument to prevent this
being merged already!
--
Kieran
More information about the libcamera-devel
mailing list