]> git.llucax.com Git - software/druntime.git/blob - import/stdc/posix/dlfcn.d
2858413a8b503c24ee455b37ac54fd873585f670
[software/druntime.git] / import / stdc / posix / dlfcn.d
1 /**
2  * D header file for POSIX.
3  *
4  * Copyright: Public Domain
5  * License:   Public Domain
6  * Authors:   Sean Kelly
7  * Standards: The Open Group Base Specifications Issue 6, IEEE Std 1003.1, 2004 Edition
8  */
9 module stdc.posix.dlfcn;
10
11 private import stdc.posix.config;
12
13 extern (C):
14
15 //
16 // XOpen (XSI)
17 //
18 /*
19 RTLD_LAZY
20 RTLD_NOW
21 RTLD_GLOBAL
22 RTLD_LOCAL
23
24 int   dlclose(void*);
25 char* dlerror();
26 void* dlopen(in char*, int);
27 void* dlsym(void*, in char*);
28 */
29
30 version( linux )
31 {
32     const RTLD_LAZY     = 0x00001;
33     const RTLD_NOW      = 0x00002;
34     const RTLD_GLOBAL   = 0x00100;
35     const RTLD_LOCAL    = 0x00000;
36
37     int   dlclose(void*);
38     char* dlerror();
39     void* dlopen(in char*, int);
40     void* dlsym(void*, in char*);
41 }
42 else version( darwin )
43 {
44     const RTLD_LAZY     = 0x00001;
45     const RTLD_NOW      = 0x00002;
46     const RTLD_GLOBAL   = 0x00100;
47     const RTLD_LOCAL    = 0x00000;
48
49     int   dlclose(void*);
50     char* dlerror();
51     void* dlopen(in char*, int);
52     void* dlsym(void*, in char*);
53 }
54 else version( freebsd )
55 {
56     const RTLD_LAZY     = 1;
57     const RTLD_NOW      = 2;
58     const RTLD_GLOBAL   = 0x100;
59     const RTLD_LOCAL    = 0;
60
61     int   dlclose(void*);
62     char* dlerror();
63     void* dlopen(in char*, int);
64     void* dlsym(void*, in char*);
65 }