Hey Ariel, First of all, thanks for picking up this task! I'm happy to see it moving forward. On Wed, 8 Apr 2020 at 16:56, Ariel D'Alessandro <ariel@xxxxxxxxxxxxxxxxxxxx> wrote: > > Currently supports building libraries and tools found in lib/ and > utils/ directories. > > Co-developed-by: Ezequiel Garcia <ezequiel@xxxxxxxxxxxxx> > Signed-off-by: Ezequiel Garcia <ezequiel@xxxxxxxxxxxxx> > Signed-off-by: Ariel D'Alessandro <ariel@xxxxxxxxxxxxxxxxxxxx> > --- > .gitignore | 1 + > gen-version.sh | 36 +++++ > lib/libdvbv5/meson.build | 142 +++++++++++++++++ > lib/libv4l-mplane/meson.build | 16 ++ > lib/libv4l1/meson.build | 53 +++++++ > lib/libv4l2/meson.build | 65 ++++++++ > lib/libv4l2rds/meson.build | 28 ++++ > lib/libv4lconvert/meson.build | 105 +++++++++++++ > lib/meson.build | 14 ++ > meson.build | 132 ++++++++++++++++ > meson_options.txt | 39 +++++ > utils/cec-compliance/meson.build | 24 +++ > utils/cec-ctl/meson.build | 18 +++ > utils/cec-follower/meson.build | 21 +++ > utils/cx18-ctl/meson.build | 7 + > utils/dvb/meson.build | 69 ++++++++ > utils/gen_media_bus_format_codes.sh | 7 + > utils/gen_media_bus_format_names.sh | 7 + > utils/ir-ctl/meson.build | 17 ++ > utils/ivtv-ctl/meson.build | 13 ++ > .../bpf_protocols/clang_sys_includes.sh | 9 ++ > utils/keytable/bpf_protocols/meson.build | 31 ++++ > utils/keytable/meson.build | 70 +++++++++ > utils/keytable/rc_keymaps/meson.build | 147 ++++++++++++++++++ > utils/libcecutil/meson.build | 45 ++++++ > utils/libmedia_dev/meson.build | 14 ++ > utils/libv4l2util/meson.build | 16 ++ > utils/media-ctl/meson.build | 46 ++++++ > utils/meson.build | 50 ++++++ > utils/qv4l2/meson.build | 75 +++++++++ > utils/qvidcap/meson.build | 75 +++++++++ > utils/rds-ctl/meson.build | 13 ++ > utils/v4l2-compliance/meson.build | 60 +++++++ > utils/v4l2-ctl/meson.build | 75 +++++++++ > utils/v4l2-dbg/meson.build | 16 ++ > utils/v4l2-sysfs-path/meson.build | 13 ++ > version.h.in | 1 + > 37 files changed, 1570 insertions(+) > create mode 100755 gen-version.sh > create mode 100644 lib/libdvbv5/meson.build > create mode 100644 lib/libv4l-mplane/meson.build > create mode 100644 lib/libv4l1/meson.build > create mode 100644 lib/libv4l2/meson.build > create mode 100644 lib/libv4l2rds/meson.build > create mode 100644 lib/libv4lconvert/meson.build > create mode 100644 lib/meson.build > create mode 100644 meson.build > create mode 100644 meson_options.txt > create mode 100644 utils/cec-compliance/meson.build > create mode 100644 utils/cec-ctl/meson.build > create mode 100644 utils/cec-follower/meson.build > create mode 100644 utils/cx18-ctl/meson.build > create mode 100644 utils/dvb/meson.build > create mode 100755 utils/gen_media_bus_format_codes.sh > create mode 100755 utils/gen_media_bus_format_names.sh > create mode 100644 utils/ir-ctl/meson.build > create mode 100644 utils/ivtv-ctl/meson.build > create mode 100755 utils/keytable/bpf_protocols/clang_sys_includes.sh > create mode 100644 utils/keytable/bpf_protocols/meson.build > create mode 100644 utils/keytable/meson.build > create mode 100644 utils/keytable/rc_keymaps/meson.build > create mode 100644 utils/libcecutil/meson.build > create mode 100644 utils/libmedia_dev/meson.build > create mode 100644 utils/libv4l2util/meson.build > create mode 100644 utils/media-ctl/meson.build > create mode 100644 utils/meson.build > create mode 100644 utils/qv4l2/meson.build > create mode 100644 utils/qvidcap/meson.build > create mode 100644 utils/rds-ctl/meson.build > create mode 100644 utils/v4l2-compliance/meson.build > create mode 100644 utils/v4l2-ctl/meson.build > create mode 100644 utils/v4l2-dbg/meson.build > create mode 100644 utils/v4l2-sysfs-path/meson.build > create mode 100644 version.h.in > [..] > diff --git a/meson_options.txt b/meson_options.txt > new file mode 100644 > index 00000000..c46eed32 > --- /dev/null > +++ b/meson_options.txt > @@ -0,0 +1,39 @@ > +# Features > +option('jpeg', type : 'feature', value : 'auto') > +option('udev', type : 'feature', value : 'auto') > + > +# Options > +option('bpf', type : 'boolean', > + description : 'Enable IR BPF decoders') I think BPF and the Qt tools should be auto features. Something along these lines seems to work here: diff --git a/meson.build b/meson.build index 428fd403bee6..328a68c83768 100644 --- a/meson.build +++ b/meson.build @@ -37,7 +37,7 @@ v4l2_utils_incdir = include_directories( ) prog_bash = find_program('bash') -prog_clang = find_program('clang') +prog_clang = find_program('clang', required : get_option('bpf')) prog_grep = find_program('grep') prog_perl = find_program('perl') diff --git a/meson_options.txt b/meson_options.txt index c46eed327781..4b5d1f4613b7 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -1,10 +1,10 @@ # Features option('jpeg', type : 'feature', value : 'auto') option('udev', type : 'feature', value : 'auto') +option('bpf', type : 'feature', value : 'auto', + description : 'Enable IR BPF decoders') # Options -option('bpf', type : 'boolean', - description : 'Enable IR BPF decoders') option('libdvbv5', type : 'boolean', description : 'Enable libdvbv5 compilation') option('qv4l2', type : 'boolean', diff --git a/utils/keytable/meson.build b/utils/keytable/meson.build index e1e5b3851e95..2630b02aa164 100644 --- a/utils/keytable/meson.build +++ b/utils/keytable/meson.build @@ -11,7 +11,7 @@ ir_keytable_sources = files( ir_keytable_deps = [] -if get_option('bpf') +if get_option('bpf').enabled() ir_keytable_sources += files( 'bpf.c', 'bpf.h', I guess there could be something similar to do for Qt tools. This way, we won't fail the build if that's not present. Thanks, Ezequiel