[libcamera-devel] meson: Bump required version to 0.47

Message ID 20200114184641.69674-1-nicolas.dufresne@collabora.com
State Accepted
Headers show
Series
  • [libcamera-devel] meson: Bump required version to 0.47
Related show

Commit Message

Nicolas Dufresne Jan. 14, 2020, 6:46 p.m. UTC
This is needed to use option type 'feature'. This is a tri-state
(auto/enabled/disabled) which comes with utility to enable them all, or
disabled them all to avoid any dynamic selection happening. It can also
be used as value to any "required" field.

This will be used in GStreamer support. If you don't have a recent enough
meson in your distribution, you can always install or upgrate your version
using pip3.

  pip3 install --user meson
  pip3 install --user --upgrade meson

Signed-off-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
---
 meson.build | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Laurent Pinchart Jan. 15, 2020, 12:27 a.m. UTC | #1
Hi Nicolas,

Thank you for the patch.

On Tue, Jan 14, 2020 at 01:46:41PM -0500, Nicolas Dufresne wrote:
> This is needed to use option type 'feature'. This is a tri-state
> (auto/enabled/disabled) which comes with utility to enable them all, or
> disabled them all to avoid any dynamic selection happening. It can also
> be used as value to any "required" field.
> 
> This will be used in GStreamer support. If you don't have a recent enough
> meson in your distribution, you can always install or upgrate your version

s/upgrate/upgrade/

> using pip3.
> 
>   pip3 install --user meson
>   pip3 install --user --upgrade meson
> 
> Signed-off-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
> ---
>  meson.build | 2 +-

How about also updating the README.md ?

diff --git a/README.rst b/README.rst
index 48e428cc816e..585c706d9e87 100644
--- a/README.rst
+++ b/README.rst
@@ -45,7 +45,13 @@ A C++ toolchain: [required]
 	Either {g++, clang}

 for libcamera: [required]
-	meson ninja-build python3-yaml
+	meson (>= 0.47) ninja-build python3-yaml
+
+	If your distribution doesn't provide a recent enough version meson, you
+	can install or upgrade it using pip3.
+
+	pip3 install --user meson
+	pip3 install --user --upgrade meson

 for device hotplug enumeration: [optional]
 	pkg-config libudev-dev

If you're fine with all this there's no need to resubmit and I'll update
the patch when applying.

>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/meson.build b/meson.build
> index 6344885..eec1dcf 100644
> --- a/meson.build
> +++ b/meson.build
> @@ -1,5 +1,5 @@
>  project('libcamera', 'c', 'cpp',
> -    meson_version : '>= 0.40',
> +    meson_version : '>= 0.47',
>      version : '0.0.0',
>      default_options : [
>          'werror=true',
Nicolas Dufresne Jan. 15, 2020, 1:17 a.m. UTC | #2
Le mercredi 15 janvier 2020 à 02:27 +0200, Laurent Pinchart a écrit :
> Hi Nicolas,
> 
> Thank you for the patch.
> 
> On Tue, Jan 14, 2020 at 01:46:41PM -0500, Nicolas Dufresne wrote:
> > This is needed to use option type 'feature'. This is a tri-state
> > (auto/enabled/disabled) which comes with utility to enable them all, or
> > disabled them all to avoid any dynamic selection happening. It can also
> > be used as value to any "required" field.
> > 
> > This will be used in GStreamer support. If you don't have a recent enough
> > meson in your distribution, you can always install or upgrate your version
> 
> s/upgrate/upgrade/

Good catch.

> 
> > using pip3.
> > 
> >   pip3 install --user meson
> >   pip3 install --user --upgrade meson
> > 
> > Signed-off-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
> > ---
> >  meson.build | 2 +-
> 
> How about also updating the README.md ?
> 
> diff --git a/README.rst b/README.rst
> index 48e428cc816e..585c706d9e87 100644
> --- a/README.rst
> +++ b/README.rst
> @@ -45,7 +45,13 @@ A C++ toolchain: [required]
>  	Either {g++, clang}
> 
>  for libcamera: [required]
> -	meson ninja-build python3-yaml
> +	meson (>= 0.47) ninja-build python3-yaml
> +
> +	If your distribution doesn't provide a recent enough version meson, you

"recent enough meson version" or "recent enough version *of* meson"
maybe ?

> +	can install or upgrade it using pip3.
> +
> +	pip3 install --user meson
> +	pip3 install --user --upgrade meson

There is probably an equivalent in RST to Markdown verbatim ``` ?

> 
>  for device hotplug enumeration: [optional]
>  	pkg-config libudev-dev
> 
> If you're fine with all this there's no need to resubmit and I'll update
> the patch when applying.

I'm fine with such changes yes. As a follow up, I was thinking of
adding a feature for qcam compilation, which depends on qt5.

Side note, be aware the pkg-config (or pkgconf these days) is needed by
meson for pretty much any external deps except maybe QT5.

> 
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > diff --git a/meson.build b/meson.build
> > index 6344885..eec1dcf 100644
> > --- a/meson.build
> > +++ b/meson.build
> > @@ -1,5 +1,5 @@
> >  project('libcamera', 'c', 'cpp',
> > -    meson_version : '>= 0.40',
> > +    meson_version : '>= 0.47',
> >      version : '0.0.0',
> >      default_options : [
> >          'werror=true',
Laurent Pinchart Jan. 16, 2020, 11:17 p.m. UTC | #3
Hi Nicolas,

On Tue, Jan 14, 2020 at 08:17:05PM -0500, Nicolas Dufresne wrote:
> Le mercredi 15 janvier 2020 à 02:27 +0200, Laurent Pinchart a écrit :
> > On Tue, Jan 14, 2020 at 01:46:41PM -0500, Nicolas Dufresne wrote:
> > > This is needed to use option type 'feature'. This is a tri-state
> > > (auto/enabled/disabled) which comes with utility to enable them all, or
> > > disabled them all to avoid any dynamic selection happening. It can also
> > > be used as value to any "required" field.
> > > 
> > > This will be used in GStreamer support. If you don't have a recent enough
> > > meson in your distribution, you can always install or upgrate your version
> > 
> > s/upgrate/upgrade/
> 
> Good catch.
> 
> > > using pip3.
> > > 
> > >   pip3 install --user meson
> > >   pip3 install --user --upgrade meson
> > > 
> > > Signed-off-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
> > > ---
> > >  meson.build | 2 +-
> > 
> > How about also updating the README.md ?
> > 
> > diff --git a/README.rst b/README.rst
> > index 48e428cc816e..585c706d9e87 100644
> > --- a/README.rst
> > +++ b/README.rst
> > @@ -45,7 +45,13 @@ A C++ toolchain: [required]
> >  	Either {g++, clang}
> > 
> >  for libcamera: [required]
> > -	meson ninja-build python3-yaml
> > +	meson (>= 0.47) ninja-build python3-yaml
> > +
> > +	If your distribution doesn't provide a recent enough version meson, you
> 
> "recent enough meson version" or "recent enough version *of* meson"
> maybe ?

Yes that's what I meant, sorry.

> > +	can install or upgrade it using pip3.
> > +
> > +	pip3 install --user meson
> > +	pip3 install --user --upgrade meson
> 
> There is probably an equivalent in RST to Markdown verbatim ``` ?

Yes, it's ``. It however drops the line break. I've switched to using a
code block and pushed the patch.

> >  for device hotplug enumeration: [optional]
> >  	pkg-config libudev-dev
> > 
> > If you're fine with all this there's no need to resubmit and I'll update
> > the patch when applying.
> 
> I'm fine with such changes yes. As a follow up, I was thinking of
> adding a feature for qcam compilation, which depends on qt5.

Sounds good to me. Maybe also a feature for compilation of the doc that
would depend on sphinx ? :-)

> Side note, be aware the pkg-config (or pkgconf these days) is needed by
> meson for pretty much any external deps except maybe QT5.
> 
> > >  1 file changed, 1 insertion(+), 1 deletion(-)
> > > 
> > > diff --git a/meson.build b/meson.build
> > > index 6344885..eec1dcf 100644
> > > --- a/meson.build
> > > +++ b/meson.build
> > > @@ -1,5 +1,5 @@
> > >  project('libcamera', 'c', 'cpp',
> > > -    meson_version : '>= 0.40',
> > > +    meson_version : '>= 0.47',
> > >      version : '0.0.0',
> > >      default_options : [
> > >          'werror=true',

Patch

diff --git a/meson.build b/meson.build
index 6344885..eec1dcf 100644
--- a/meson.build
+++ b/meson.build
@@ -1,5 +1,5 @@ 
 project('libcamera', 'c', 'cpp',
-    meson_version : '>= 0.40',
+    meson_version : '>= 0.47',
     version : '0.0.0',
     default_options : [
         'werror=true',