blob: 2e962f6c3e03791638a8e2946219d9c119d384ae [file] [log] [blame]
project('dep fallback', 'c')
bob = dependency('boblib', fallback : ['boblib', 'bob_dep'], required: false,
default_options : 'warning_level=1')
if not bob.found()
error('Bob is actually needed')
endif
# boblib subproject exists, but bobinc is not a dependency variable
sita = dependency('sitalib', fallback : ['boblib', 'bobinc'], required: false)
assert(not sita.found())
# boblib subproject exists, but sita_dep doesn't exist
sita = dependency('sitalib', fallback : ['boblib', 'sita_dep'], required: false)
assert(not sita.found())
# boblib has been configured so zlib cannot be searched on the system
zlib = dependency('zlib', fallback : ['boblib', 'notfound_dep'], required: false)
assert(not zlib.found())
# boblib has been configured so zlib cannot be searched on the system.
# Not variable name provided and the subproject does not override zlib.
zlib = dependency('zlib', fallback : 'boblib', required: false)
assert(not zlib.found())
# jimmylib subproject doesn't exist
jimmy = dependency('jimmylib', fallback : ['jimmylib', 'jimmy_dep'], required: false)
# dummylib subproject fails to configure
dummy = dependency('dummylib', fallback : ['dummylib', 'dummy_dep'], required: false)
gensrc_py = find_program('gensrc.py')
gensrc = custom_target('gensrc.c',
input : 'tester.c',
output : 'gensrc.c',
command : [gensrc_py, '@INPUT@', '@OUTPUT@'])
exe = executable('bobtester',
[gensrc],
dependencies : bob)
test('bobtester', exe)