| project('get prop') |
| |
| x = meson.get_external_property('astring') |
| ref = meson.is_cross_build() ? 'cross' : 'mystring' |
| assert(x==ref, 'did not get native property string. did you use "meson setup --native-file native.txt"') |
| |
| x = meson.get_external_property('astring', native: true) |
| assert(x=='mystring', 'did not get native property with native:true and non-cross build.') |
| |
| x = meson.get_external_property('astring', 'fallback', native: false) |
| assert(x==ref, 'did not get native property with native:false and non-cross build.') |
| |
| |
| x = meson.get_external_property('nonexistent', 'fallback') |
| assert(x=='fallback', 'fallback did not work') |
| |
| x = meson.get_external_property('nonexistent', 'fallback', native: true) |
| assert(x=='fallback', 'fallback native:true did not work') |
| |
| x = meson.get_external_property('nonexistent', 'fallback', native: false) |
| assert(x=='fallback', 'fallback native:false did not work') |
| |
| |
| x = meson.get_external_property('anarray') |
| assert(x==['one', 'two'], 'array did not work') |
| |
| assert(meson.has_external_property('anarray'), 'expected property "anarray" to exist') |
| assert(meson.has_external_property('astring'), 'expected property "astring" to exist') |
| assert(not meson.has_external_property('abool'), 'did not expect property "abool" to exist') |
| |
| # These exist in both |
| assert(meson.has_external_property('anarray', native: false), 'FIXME') |
| assert(meson.has_external_property('anarray', native: true), 'FIXME') |
| assert(meson.has_external_property('astring', native: false), 'FIXME') |
| assert(meson.has_external_property('astring', native: true), 'FIXME') |
| |
| if meson.is_cross_build() |
| # This property only exists in the cross file |
| assert(meson.has_external_property('red'), 'expected property "red" to exist in cross file') |
| assert(meson.has_external_property('red', native: false), 'expected property "red" to exist in cross file') |
| assert(not meson.has_external_property('red', native: true), 'did not expect property "red" to exist in native file') |
| |
| assert(not meson.has_external_property('abool', native: false), 'FIXME') |
| assert(not meson.has_external_property('abool', native: false), 'FIXME') |
| else |
| assert(not meson.has_external_property('red'), 'did not expect property "red" to exist in native file') |
| assert(not meson.has_external_property('red', native: false), 'did not expect property "red" to exist in cross file because we are not doing a cross build') |
| assert(not meson.has_external_property('red', native: true), 'did not expect property "red" to exist in native file') |
| endif |