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 tango.stdc.posix.dlfcn; 10 11 private import tango.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(OSX) 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 } 66 else version( solaris ) 67 { 68 const RTLD_LAZY = 0x00001; 69 const RTLD_NOW = 0x00002; 70 const RTLD_GLOBAL = 0x00100; 71 const RTLD_LOCAL = 0x00000; 72 73 int dlclose(void*); 74 char* dlerror(); 75 void* dlopen(in char*, int); 76 void* dlsym(void*, in char*); 77 }