The Meson Build System
http://mesonbuild.com/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
50 lines
2.5 KiB
50 lines
2.5 KiB
5 years ago
|
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 get native property with native:false and non-cross build.')
|
||
|
|
||
|
|
||
|
x = meson.get_external_property('notexist', 'fallback')
|
||
|
assert(x=='fallback', 'fallback did not work')
|
||
|
|
||
|
x = meson.get_external_property('notexist', 'fallback', native: true)
|
||
|
assert(x=='fallback', 'fallback native:true did not work')
|
||
|
|
||
|
x = meson.get_external_property('notexist', 'fallback', native: false)
|
||
|
assert(x=='fallback', 'fallback native:false did not work')
|
||
|
|
||
|
|
||
|
x = meson.get_external_property('anarray')
|
||
4 years ago
|
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
|