diff options
author | Umang Jain <umang.jain@ideasonboard.com> | 2021-05-24 14:50:23 +0530 |
---|---|---|
committer | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2021-05-24 14:27:29 +0300 |
commit | e8924f30f7186a9523b8850976f01d27713e397c (patch) | |
tree | 1c0e7218a36f453a48c2b88ee04ff1e88c5d8c46 | |
parent | c76ca01323d8f7cb26b3a0c1137de92f7538a2c6 (diff) |
meson: Add a configuration option to build IPAs
There can be multiple IPAs per pipeline-handler or platform.
They can live in-tree or externally linked. It is up to the vendor
whether to use in-tree IPA for a platform or provide it externally.
In the case of IPAs being external, building in-tree IPAs might be
futile hence, provide a clear and explicit mechanism to choose whether
to build the in-tree IPA for the platform or not.
By default, all in-tree IPAs are built when a matching Pipeline handler
is also enabled.
Signed-off-by: Umang Jain <umang.jain@ideasonboard.com>
Reviewed-by: Paul Elder <paul.elder@ideasonboard.com>
Reviewed-by: Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
-rw-r--r-- | meson.build | 1 | ||||
-rw-r--r-- | meson_options.txt | 5 | ||||
-rw-r--r-- | src/ipa/meson.build | 5 |
3 files changed, 9 insertions, 2 deletions
diff --git a/meson.build b/meson.build index 46eb1b46..6626fa7e 100644 --- a/meson.build +++ b/meson.build @@ -167,6 +167,7 @@ py_mod.find_installation('python3', modules: py_modules) ## Summarise Configurations summary({ 'Enabled pipelines': pipelines, + 'Enabled IPA modules': ipa_modules, 'Android support': android_enabled, 'GStreamer support': gst_enabled, 'V4L2 emulation support': v4l2_enabled, diff --git a/meson_options.txt b/meson_options.txt index 69f11f85..2c80ad8b 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -25,6 +25,11 @@ option('gstreamer', value : 'auto', description : 'Compile libcamera GStreamer plugin') +option('ipas', + type : 'array', + choices : ['ipu3', 'raspberrypi', 'rkisp1', 'vimc'], + description : 'Select which IPA modules to build') + option('lc-compliance', type : 'feature', value : 'auto', diff --git a/src/ipa/meson.build b/src/ipa/meson.build index 5b5684a1..49245e5e 100644 --- a/src/ipa/meson.build +++ b/src/ipa/meson.build @@ -19,14 +19,15 @@ subdir('libipa') ipa_sign = files('ipa-sign.sh') -ipas = ['ipu3', 'raspberrypi', 'rkisp1', 'vimc'] ipa_names = [] +ipa_modules = get_option('ipas') + # The ipa-sign-install.sh script which uses the ipa_names variable will itself # prepend MESON_INSTALL_DESTDIR_PREFIX to each ipa module name, therefore we # must not include the prefix string here. foreach pipeline : pipelines - if ipas.contains(pipeline) + if ipa_modules.contains(pipeline) subdir(pipeline) ipa_names += ipa_install_dir / ipa_name + '.so' endif |