BUG #3818: Cross compilation problems - Mailing list pgsql-bugs

From Richard Evans
Subject BUG #3818: Cross compilation problems
Date
Msg-id 200712151156.lBFBu8g7036997@wwwmaster.postgresql.org
Whole thread Raw
Responses Re: BUG #3818: Cross compilation problems
Re: BUG #3818: Cross compilation problems
List pgsql-bugs
The following bug has been logged online:

Bug reference:      3818
Logged by:          Richard Evans
Email address:      richard.evans@blueallegro.net
PostgreSQL version: 8.3beta
Operating system:   Linux/windows
Description:        Cross compilation problems
Details:

I've been investigating cross-compiling for mingw32 on a linux build system.
 I used the current snapshot since it has a fix for the gettimeofday problem
with new mingw installs.

Mostly it worked, but there were a few problems which I think can all be
fixed in the configure script:

1. The configure script does not check for cross-compile installs of ar,
dlltool, dllwrap and windres. It manages to find the cross compile gcc
(mingw32-gcc in my install), but does not check for mingw32-dlltool, etc.
You work round this by setting AR= DLLTOOL= and DLLWRAP= on the make line
but ideally it should be done in the configure stage.

2. The Makefile in pgevent/bin refers to dllwrap directly, not $(DLLWRAP).

3. Several makefiles use windres directly; there is no $(WINDRES) variable
which can be set.

4. The zic problem in make install - see bug #1311.  Simple solution here is
to have a configure option which allows the use of the build systems own zic
command.

I may try coming up with some patches to configure to check for dlltool, etc
but I haven't edited configure files before.

Once I worked round these problems I was able to cross compile a working
postgres for mingw32 on a linux host.

pgsql-bugs by date:

Previous
From: Richard Evans
Date:
Subject: Re: BUG #1311: Can't crosscompile
Next
From: Magnus Hagander
Date:
Subject: Re: BUG #3818: Cross compilation problems