1project('recursive dependencies', 'c') 2 3# Test that you can link a shared executable to: 4# - A shared library with no other deps 5subdir('shnodep') 6# - A static library with no other deps 7subdir('stnodep') 8# - A shared library with a shared library dep 9subdir('shshdep') 10# - A shared library with a static library dep 11subdir('shstdep') 12# - A static library with a shared library dep 13subdir('stshdep') 14# - A static library with a static library dep 15subdir('ststdep') 16 17test('alldeps', 18 executable('alldeps', 'main.c', 19 link_with : [shshdep, shstdep, ststdep, stshdep])) 20 21# More combinations of static and shared libraries 22subdir('3rdorderdeps') 23 24# Circular dependencies between static libraries 25# This requires the use of --start/end-group with GNU ld 26subdir('circular') 27 28# Various edge cases that have been reported 29subdir('edge-cases') 30