| import core.runtime; | |
| import core.stdc.string; | |
| import core.sys.posix.dlfcn; | |
| extern(C) alias RunDepTests = int function(); | |
| void main(string[] args) | |
| { | |
| auto name = args[0] ~ '\0'; | |
| const pathlen = strrchr(name.ptr, '/') - name.ptr + 1; | |
| name = name[0 .. pathlen] ~ "liblinkdep.so"; | |
| auto h = Runtime.loadLibrary(name); | |
| assert(h); | |
| auto runDepTests = cast(RunDepTests)dlsym(h, "runDepTests"); | |
| assert(runDepTests()); | |
| assert(Runtime.unloadLibrary(h)); | |
| } |