aboutsummaryrefslogtreecommitdiff
path: root/src/backend/port/dynloader/cygwin.h
diff options
context:
space:
mode:
authorPeter Eisentraut <peter_e@gmx.net>2003-03-21 17:18:34 +0000
committerPeter Eisentraut <peter_e@gmx.net>2003-03-21 17:18:34 +0000
commit1a7f4ed5252dd08d9bbf26a67ddf22c38528c636 (patch)
tree4daa4d5d3dcc8d050bf8d8afbe2d4fc568455a3c /src/backend/port/dynloader/cygwin.h
parent93331d8318325305cad9c5224eb4b86663214846 (diff)
downloadpostgresql-1a7f4ed5252dd08d9bbf26a67ddf22c38528c636.tar.gz
postgresql-1a7f4ed5252dd08d9bbf26a67ddf22c38528c636.zip
Make "win" a separate port from "cygwin". This means you can now
configure under native Windows (MinGW that is), but you won't get very far compiling yet. The dynaloader files are from Jan Wieck's patch set.
Diffstat (limited to 'src/backend/port/dynloader/cygwin.h')
-rw-r--r--src/backend/port/dynloader/cygwin.h36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/backend/port/dynloader/cygwin.h b/src/backend/port/dynloader/cygwin.h
new file mode 100644
index 00000000000..ef476ff1402
--- /dev/null
+++ b/src/backend/port/dynloader/cygwin.h
@@ -0,0 +1,36 @@
+/*-------------------------------------------------------------------------
+ *
+ * Dynamic loader declarations for Cygwin
+ *
+ * Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
+ * Portions Copyright (c) 1994, Regents of the University of California
+ *
+ * $Header: /cvsroot/pgsql/src/backend/port/dynloader/cygwin.h,v 1.1 2003/03/21 17:18:34 petere Exp $
+ *
+ *-------------------------------------------------------------------------
+ */
+#ifndef PORT_PROTOS_H
+#define PORT_PROTOS_H
+
+#include <dlfcn.h>
+#include "utils/dynamic_loader.h"
+
+/*
+ * In some older systems, the RTLD_NOW flag isn't defined and the mode
+ * argument to dlopen must always be 1. The RTLD_GLOBAL flag is wanted
+ * if available, but it doesn't exist everywhere.
+ * If it doesn't exist, set it to 0 so it has no effect.
+ */
+#ifndef RTLD_NOW
+#define RTLD_NOW 1
+#endif
+#ifndef RTLD_GLOBAL
+#define RTLD_GLOBAL 0
+#endif
+
+#define pg_dlopen(f) dlopen((f), RTLD_NOW | RTLD_GLOBAL)
+#define pg_dlsym dlsym
+#define pg_dlclose dlclose
+#define pg_dlerror dlerror
+
+#endif /* PORT_PROTOS_H */