|
|
1.1 root 1: #include <dlfcn.h>
2: #include <stdio.h>
3: #include <stdlib.h>
4:
5: #include "lkc.h"
6:
7: #define P(name,type,arg) type (*name ## _p) arg
8: #include "lkc_proto.h"
9: #undef P
10:
11: void kconfig_load(void)
12: {
13: void *handle;
14: char *error;
15:
16: handle = dlopen("./libkconfig.so", RTLD_LAZY);
17: if (!handle) {
18: handle = dlopen("./tools/kconfig/libkconfig.so", RTLD_LAZY);
19: if (!handle) {
20: fprintf(stderr, "%s\n", dlerror());
21: exit(1);
22: }
23: }
24:
25: #define P(name,type,arg) \
26: { \
27: name ## _p = dlsym(handle, #name); \
28: if ((error = dlerror())) { \
29: fprintf(stderr, "%s\n", error); \
30: exit(1); \
31: } \
32: }
33: #include "lkc_proto.h"
34: #undef P
35: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.