[libcamera-devel] [PATCH v2] meson: summarise paths

Kieran Bingham kieran.bingham at ideasonboard.com
Tue Jun 15 13:59:38 CEST 2021


Hi Umang,

On 15/06/2021 08:08, Umang Jain wrote:
> Hi Kieran,
> 
> On 6/14/21 6:54 PM, Kieran Bingham wrote:
>> The IPAs are loaded from a defined location set as IPA_MODULE_DIR.
>> Further more, configuration files for both libcamera and IPAs are loaded
>> from paths defined during the meson configuration.
>>
>> To make it easy to identify these locations for a given configuration,
>> present them as a 'paths' section in the meson summary.
>>
>> This adds a summary section to meson in the form:
>>
>>    Paths
>>      LIBCAMERA_DATA_DIR       : "/usr/share/libcamera"
>>      LIBCAMERA_SYSCONF_DIR    : "/etc/camera/libcamera"
>>      IPA_PROXY_DIR            : "/usr/libexec/libcamera"
>>      IPA_CONFIG_DIR           :
>> "/etc/camera/libcamera/ipa:/usr/share/libcamera/ipa"
> 
> I found that IPA_PROXY_DIR and IPA_CONFIG_DIR can be probably be
> over-ridden
> by environment variables LIBCAMERA_IPA_PROXY_PATH and
> LIBCAMERA_IPA_CONFIG_PATH
> respectively. If these env variables are in effect, and we show meson
> configuration values
> for these two, I think we will have a problem.


Yes, they can be overridden - that's sort of the point of them.
But the reason I wanted to have them displayed by meson, is that it's
not clear what the defaults are...


These are printing the compiled in defaults - if a user overrides it
with an environment variable, well then at that point we expect them to
know what they have set it to.


> 
>>      IPA_MODULE_DIR           : "/usr/lib/x86_64-linux-gnu/libcamera"
> hmm, I have always seen IPA module dir as /usr/lib64/. Is this the path
> picked up by soraka's platform? Just curious.

Because precisely that - it's platform specific.

/usr/lib/x86_64-linux-gnu/libcamera
is the path used when building on Ubuntu.

However, as you've seen - ChromeOS will install to /usr/lib64/


>>
>> Signed-off-by: Kieran Bingham <kieran.bingham at ideasonboard.com>
>> ---
>>   src/ipa/meson.build                    | 5 +++++
>>   src/libcamera/proxy/worker/meson.build | 4 ++++
>>   src/meson.build                        | 5 +++++
>>   3 files changed, 14 insertions(+)
>>
>> diff --git a/src/ipa/meson.build b/src/ipa/meson.build
>> index 49245e5e91f3..e15a8a066f07 100644
>> --- a/src/ipa/meson.build
>> +++ b/src/ipa/meson.build
>> @@ -15,6 +15,11 @@ config_h.set('IPA_CONFIG_DIR',
>>   config_h.set('IPA_MODULE_DIR',
>>                '"' + get_option('prefix') / ipa_install_dir + '"')
>>   +summary({
>> +         'IPA_CONFIG_DIR' : config_h.get('IPA_CONFIG_DIR'),
>> +         'IPA_MODULE_DIR' : config_h.get('IPA_MODULE_DIR'),
>> +         }, section : 'Paths')
>> +
>>   subdir('libipa')
>>     ipa_sign = files('ipa-sign.sh')
>> diff --git a/src/libcamera/proxy/worker/meson.build
>> b/src/libcamera/proxy/worker/meson.build
>> index 40dada9db1e5..28fe5f1fd6b2 100644
>> --- a/src/libcamera/proxy/worker/meson.build
>> +++ b/src/libcamera/proxy/worker/meson.build
>> @@ -26,3 +26,7 @@ endforeach
>>     config_h.set('IPA_PROXY_DIR',
>>                '"' + get_option('prefix') / proxy_install_dir + '"')
>> +
>> +summary({
>> +         'IPA_PROXY_DIR' : config_h.get('IPA_PROXY_DIR'),
>> +         }, section : 'Paths')
>> diff --git a/src/meson.build b/src/meson.build
>> index a6e4eb21b796..a4e96ecd728a 100644
>> --- a/src/meson.build
>> +++ b/src/meson.build
>> @@ -8,6 +8,11 @@ libcamera_sysconfdir = get_option('sysconfdir') /
>> 'libcamera'
>>   config_h.set('LIBCAMERA_DATA_DIR', '"' + get_option('prefix') /
>> libcamera_datadir + '"')
>>   config_h.set('LIBCAMERA_SYSCONF_DIR', '"' + get_option('prefix') /
>> libcamera_sysconfdir + '"')
>>   +summary({
>> +         'LIBCAMERA_DATA_DIR' : config_h.get('LIBCAMERA_DATA_DIR'),
>> +         'LIBCAMERA_SYSCONF_DIR' :
>> config_h.get('LIBCAMERA_SYSCONF_DIR'),
>> +         }, section : 'Paths')
>> +
>>   # Module Signing
>>   openssl = find_program('openssl', required : true)
>>   if openssl.found()

-- 
Regards
--
Kieran


More information about the libcamera-devel mailing list