The following bug has been logged online:

Bug reference:      5707
Logged by:          Richard Evans
Email address:      richard.ev...@datanomic.com
PostgreSQL version: 9.0.1
Operating system:   Linux (Fedora 12)
Description:        Cross compilation for windows is broken
Details: 

When cross compiling for Windows using a separate build area, libpq.dll does
not build because the .def file cannot be found.

This appears to be caused by these lines in Makefile.shlib:

# If SHLIB_EXPORTS is set, the rules below will build a .def file from
# that.  Else we build a temporary one here.
ifeq (,$(SHLIB_EXPORTS))
DLL_DEFFILE = lib$(NAME)dll.def
exports_file = $(DLL_DEFFILE)

$(exports_file): $(OBJS)
        $(DLLTOOL) --export-all $(DLLTOOL_DEFFLAGS) --output-def $@ $^
else
DLL_DEFFILE = lib$(NAME)dll.def
endif

In Makefile.shlib from 8.4.5, the lines read:

# If SHLIB_EXPORTS is set, the rules below will build a .def file from
# that.  Else we build a temporary one here.
ifeq (,$(SHLIB_EXPORTS))
DLL_DEFFILE = lib$(NAME)dll.def
exports_file = $(DLL_DEFFILE)

$(exports_file): $(OBJS)
        $(DLLTOOL) --export-all $(DLLTOOL_DEFFLAGS) --output-def $@ $^
else
DLL_DEFFILE = $(srcdir)/lib$(NAME)dll.def
endif

Note the reference fo ${srcdir).  If Makefile.shlib in 9.0.1 is updated to
match this, the build succeeds.

The configure command was somethinglike:

~/misc/postgresql-9.0.1/configure --host=mingw32 --prefix=/tmp/pg9
--without-zlib

-- 
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs

Reply via email to