Page MenuHomeFreeBSD

Add yes/no option helpers for meson
ClosedPublic

Authored by kwm on Jun 6 2017, 9:21 PM.
Tags
None
Referenced Files
Unknown Object (File)
Dec 28 2023, 5:14 AM
Unknown Object (File)
Dec 28 2023, 5:14 AM
Unknown Object (File)
Dec 28 2023, 5:14 AM
Unknown Object (File)
Dec 25 2023, 10:51 AM
Unknown Object (File)
Dec 20 2023, 4:17 AM
Unknown Object (File)
Dec 19 2023, 2:02 PM
Unknown Object (File)
Nov 15 2023, 9:32 AM
Unknown Object (File)
Nov 6 2023, 3:54 AM
Subscribers

Details

Summary

While testing a update, I found out that meson is kind of picky with it's
options. These options are defined in the meson_options.txt file.
For example the ${opt}_MESON_FALSE handler works for "boolean" options:

option('enable-docs',

type: 'boolean', value: false,
description: 'Enable generating the Epoxy API reference (depends on Doxygen)')

However if you try to feed it anything other then true/false meson
will error out. Because it doesn't match what is defined in the
meson_options.txt file.

Add a YES/NO combination for "combo" types, so we don't have the specify
the whole command for ${opt}_MESON_ON/OFF.

option('enable-egl',

type: 'combo',
choices: [ 'auto', 'yes', 'no' ],
value: 'auto',
description: 'Enable EGL support')
Test Plan

See the attached libepoxy update, which demo's the ${opt}_MESON_YES handler.

Diff Detail

Repository
rP FreeBSD ports repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

Is there more than a handful number of ports that need this ?

Not yet, only the libepoxy update I attached as a demo for now. But GNOME as a whole is switching to meson as there build system of choice, so I expect it being used there enough to warrant these helpers.

Mmm, ok. Please commit the bsd.options.mk change in a separate commit.

This revision was automatically updated to reflect the committed changes.