PostgreSQL Source Code  git master
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
cygwin.h
Go to the documentation of this file.
1 /*-------------------------------------------------------------------------
2  *
3  * Dynamic loader declarations for Cygwin
4  *
5  * Portions Copyright (c) 1996-2017, PostgreSQL Global Development Group
6  * Portions Copyright (c) 1994, Regents of the University of California
7  *
8  * src/backend/port/dynloader/cygwin.h
9  *
10  *-------------------------------------------------------------------------
11  */
12 #ifndef PORT_PROTOS_H
13 #define PORT_PROTOS_H
14 
15 #include <dlfcn.h>
16 #include "utils/dynamic_loader.h" /* pgrminclude ignore */
17 
18 /*
19  * In some older systems, the RTLD_NOW flag isn't defined and the mode
20  * argument to dlopen must always be 1. The RTLD_GLOBAL flag is wanted
21  * if available, but it doesn't exist everywhere.
22  * If it doesn't exist, set it to 0 so it has no effect.
23  */
24 #ifndef RTLD_NOW
25 #define RTLD_NOW 1
26 #endif
27 #ifndef RTLD_GLOBAL
28 #define RTLD_GLOBAL 0
29 #endif
30 
31 #define pg_dlopen(f) dlopen((f), RTLD_NOW | RTLD_GLOBAL)
32 #define pg_dlsym dlsym
33 #define pg_dlclose dlclose
34 #define pg_dlerror dlerror
35 
36 #endif /* PORT_PROTOS_H */