Merge pull request #573 from centricular/dependency-versions
Several fixes to how versioned dependencies are handled + testspull/582/head
commit
bcec44b93b
10 changed files with 91 additions and 10 deletions
@ -0,0 +1,28 @@ |
||||
project('dep versions', 'c') |
||||
|
||||
# Find external dependency without version |
||||
zlib = dependency('zlib') |
||||
# Find external dependency with version |
||||
zlibver = dependency('zlib', version : '>1.0') |
||||
assert(zlib.version() == zlibver.version(), 'zlib versions did not match!') |
||||
# Find external dependency with conflicting version |
||||
zlibver = dependency('zlib', version : '<1.0', required : false) |
||||
assert(zlibver.found() == false, 'zlib <1.0 should not be found!') |
||||
|
||||
# Find internal dependency without version |
||||
somelibver = dependency('somelib', |
||||
fallback : ['somelibnover', 'some_dep']) |
||||
# Find an internal dependency again with the same name and a specific version |
||||
somelib = dependency('somelib', |
||||
version : '== 0.1', |
||||
fallback : ['somelib', 'some_dep']) |
||||
# Find an internal dependency again with the same name and incompatible version |
||||
somelibver = dependency('somelib', |
||||
version : '>= 0.3', |
||||
fallback : ['somelibver', 'some_dep']) |
||||
# Find somelib again, but with a fallback that will fail |
||||
somelibfail = dependency('somelib', |
||||
version : '>= 0.2', |
||||
required : false, |
||||
fallback : ['somelibfail', 'some_dep']) |
||||
assert(somelibfail.found() == false, 'somelibfail found via wrong fallback') |
@ -0,0 +1,8 @@ |
||||
# Define version only in project, should get inherited by declare_dependency |
||||
project('some', 'c', version : '0.1') |
||||
|
||||
somelib = shared_library('some', 'lib.c') |
||||
someinc = include_directories('.') |
||||
|
||||
some_dep = declare_dependency(link_with : somelib, |
||||
include_directories : someinc) |
@ -0,0 +1,8 @@ |
||||
project('some', 'c') |
||||
|
||||
somelib = shared_library('some', 'lib.c') |
||||
someinc = include_directories('.') |
||||
|
||||
# Define version only in declare_dependency |
||||
some_dep = declare_dependency(link_with : somelib, |
||||
include_directories : someinc) |
@ -0,0 +1,9 @@ |
||||
project('some', 'c') |
||||
|
||||
somelib = shared_library('some', 'lib.c') |
||||
someinc = include_directories('.') |
||||
|
||||
# Define version only in declare_dependency |
||||
some_dep = declare_dependency(link_with : somelib, |
||||
include_directories : someinc, |
||||
version : '0.3') |
Loading…
Reference in new issue