1import core.runtime; 2import core.stdc.string; 3import core.sys.posix.dlfcn; 4 5extern(C) alias RunDepTests = int function(); 6 7void main(string[] args) 8{ 9 auto name = args[0] ~ '\0'; 10 const pathlen = strrchr(name.ptr, '/') - name.ptr + 1; 11 name = name[0 .. pathlen] ~ "liblinkdep.so"; 12 13 auto h = Runtime.loadLibrary(name); 14 assert(h); 15 auto runDepTests = cast(RunDepTests)dlsym(h, "runDepTests"); 16 assert(runDepTests()); 17 assert(Runtime.unloadLibrary(h)); 18} 19