| /* A small program used to check that LOCAL_WHOLE_STATIC_LIBRARIES builds |
| * and works properly. Here, we check that the 'foo2' function which is |
| * never called from main is still included in the final executable |
| * image. |
| */ |
| #include <stdio.h> |
| #include <dlfcn.h> |
| |
| int main(void) |
| { |
| void* lib; |
| |
| lib = dlopen("/data/local/tmp/ndk-tests/libbar.so", RTLD_NOW); |
| if (lib == NULL) { |
| fprintf(stderr, "Could not dlopen(\"libbar.so\"): %s\n", dlerror()); |
| return 1; |
| } |
| if (dlsym(lib, "foo2") == NULL) { |
| fprintf(stderr, "Symbol 'foo2' is missing from shared library!!\n"); |
| return 2; |
| } |
| dlclose(lib); |
| return 0; |
| } |