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