#ifndef SYSROOT_DLFCN_H_
#define SYSROOT_DLFCN_H_

#ifdef __cplusplus
extern "C" {
#endif

#include <features.h>

#define RTLD_LAZY 1
#define RTLD_NOW 2
#define RTLD_NOLOAD 4
#define RTLD_NODELETE 4096
#define RTLD_GLOBAL 256
#define RTLD_LOCAL 0

#define RTLD_NEXT ((void*)-1)
#define RTLD_DEFAULT ((void*)0)

#define RTLD_DI_LINKMAP 2

int dlclose(void*);
char* dlerror(void);
void* dlopen(const char*, int);
void* dlsym(void* __restrict, const char* __restrict);

#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
typedef struct {
  const char* dli_fname;
  void* dli_fbase;
  const char* dli_sname;
  void* dli_saddr;
} Dl_info;
int dladdr(const void*, Dl_info*);
int dlinfo(void*, int, void*);
#endif

#ifdef __cplusplus
}
#endif

#endif  // SYSROOT_DLFCN_H_
