From 5fde8613753c9431e0f44c66877b9b449f9c72d4 Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Sun, 5 Mar 2006 04:43:57 +0000 Subject: [PATCH] Improve STRINGS_H macro test for MSVC extensions. Add DLLIMPORT for V1 headers, in case Win32 don't export all symbols. --- src/include/c.h | 7 ++++--- src/include/fmgr.h | 11 +++++++---- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/src/include/c.h b/src/include/c.h index fcab5cbd56..69a15e1df5 100644 --- a/src/include/c.h +++ b/src/include/c.h @@ -12,7 +12,7 @@ * Portions Copyright (c) 1996-2005, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $PostgreSQL: pgsql/src/include/c.h,v 1.197 2006/03/03 21:35:46 momjian Exp $ + * $PostgreSQL: pgsql/src/include/c.h,v 1.198 2006/03/05 04:43:57 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -57,6 +57,8 @@ #else #if defined(_MSC_VER) || defined(__BORLANDC__) #define WIN32_CLIENT_ONLY +/* Some use MinGW-generated pg_config.h but MSVC for extensions. */ +#undef HAVE_STRINGS_H #endif #endif #include "postgres_ext.h" @@ -66,8 +68,7 @@ #include #include #include -/* Some use MinGW-generated pg_config.h but MSVC for extensions. */ -#if defined(HAVE_STRINGS_H) && !defined(WIN32_CLIENT_ONLY) +#ifdef HAVE_STRINGS_H #include #endif #include diff --git a/src/include/fmgr.h b/src/include/fmgr.h index b7a85f15f5..07aa052c6d 100644 --- a/src/include/fmgr.h +++ b/src/include/fmgr.h @@ -11,7 +11,7 @@ * Portions Copyright (c) 1996-2005, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $PostgreSQL: pgsql/src/include/fmgr.h,v 1.40 2005/10/15 02:49:41 momjian Exp $ + * $PostgreSQL: pgsql/src/include/fmgr.h,v 1.41 2006/03/05 04:43:57 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -293,10 +293,13 @@ typedef struct /* Expected signature of an info function */ typedef Pg_finfo_record *(*PGFInfoFunction) (void); -/* Macro to build an info function associated with the given function name */ - +/* + * Macro to build an info function associated with the given function name. + * Win32 loadable functions usually link with 'dlltool --export-all', but it + * doesn't hurt to add DLLIMPORT in case they don't. + */ #define PG_FUNCTION_INFO_V1(funcname) \ -extern Pg_finfo_record * CppConcat(pg_finfo_,funcname) (void); \ +extern DLLIMPORT Pg_finfo_record * CppConcat(pg_finfo_,funcname) (void); \ Pg_finfo_record * \ CppConcat(pg_finfo_,funcname) (void) \ { \ -- 2.11.0