/* 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; }