[libcamera-devel] [PATCH] meson: Provide options to disable test/docs
Kieran Bingham
kieran.bingham at ideasonboard.com
Wed Mar 20 17:20:56 CET 2019
Hi Niklas,
On 20/03/2019 16:17, Niklas Söderlund wrote:
> Hi Kieran,
>
> Thanks for your work.
>
> On 2019-03-20 15:47:48 +0000, Kieran Bingham wrote:
>> It can be desirable to disable the compilation and processing of both
>> the test suite and documentation for use cases such as packaging to an
>> embedded target.
>>
>> Provide a new meson_options.txt file to allow disabling either or both
>> of the tests and documentation components of libcamera.
>>
>> These options can be provided at the initial configuration time, for
>> example:
>>
>> meson build -Dtests=false -Ddocumentation=false
>
> This seems to work as expected on my system :-)
>
> I'm a bit perplexed that options are enabled by default, my expectations
> looking at the code would be that they would be disabled if not
> explicitly enabled. But I assume this is just me struggling with
> wrapping my head around meson ;-P
https://mesonbuild.com/Build-options.html#booleans
> Booleans may have values of either true or false. If no default value is supplied then true will be used as the default.
I can append a " value : true" to the option to make this clearer if you
prefer?
--
Regards
Kieran
>> or by reconfiguring an existing build tree:
>>
>> cd build
>> meson configure -Ddocumentation=false
>> meson configure -Dtests=false
>>
>> Signed-off-by: Kieran Bingham <kieran.bingham at ideasonboard.com>
>
> Reviewed-by: Niklas Söderlund <niklas.soderlund at ragnatech.se>
>
>> ---
>> meson.build | 10 ++++++++--
>> meson_options.txt | 2 ++
>> 2 files changed, 10 insertions(+), 2 deletions(-)
>> create mode 100644 meson_options.txt
>>
>> diff --git a/meson.build b/meson.build
>> index 4465a3851a30..43d4a57602bb 100644
>> --- a/meson.build
>> +++ b/meson.build
>> @@ -27,9 +27,15 @@ libcamera_includes = include_directories('include')
>>
>> subdir('include')
>> subdir('src')
>> -subdir('test')
>> subdir('utils')
>> -subdir('Documentation')
>> +
>> +if get_option('tests')
>> + subdir('test')
>> +endif
>> +
>> +if get_option('documentation')
>> + subdir('Documentation')
>> +endif
>>
>> pkg_mod = import('pkgconfig')
>> pkg_mod.generate(libraries : libcamera,
>> diff --git a/meson_options.txt b/meson_options.txt
>> new file mode 100644
>> index 000000000000..c5df661a2286
>> --- /dev/null
>> +++ b/meson_options.txt
>> @@ -0,0 +1,2 @@
>> +option('tests', type : 'boolean')
>> +option('documentation', type : 'boolean')
>> --
>> 2.19.1
>>
>> _______________________________________________
>> libcamera-devel mailing list
>> libcamera-devel at lists.libcamera.org
>> https://lists.libcamera.org/listinfo/libcamera-devel
>
--
Regards
--
Kieran
More information about the libcamera-devel
mailing list