Porting PG Extension from UNIX to Windows

From: "insaf(dot)k" <insaf(dot)k(at)zohocorp(dot)com>
To: "pgsql-hackers" <pgsql-hackers(at)postgresql(dot)org>
Subject: Porting PG Extension from UNIX to Windows
Date: 2018-04-25 08:45:35
Message-ID: 162fbfabb2c.cc3cae631243.22796492016532210@zohocorp.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hello,

I have developed a postgres extension in Linux. I want to compile it in MS Windows as well.

The extension extensively make use of POSIX threads and mutexes.

I've done some research regarding compiling in Windows. I am not sure in what way I should compile the extension. AFAIK, Visual Studio is not POSIX compliant and so I'll have to rewrite all those POSIX calls using Windows API. So it's better to compile the extension in Cygwin.

I have some questions regarding compiling the extension in Cygwin. Do I have to build PG in Cygwin, if I want to compile the extension in Cygwin?

Our deployment pattern is like this, build everything in one machine and copy the DLLs into the production machine. So, if I compile in Cygwin, will the generated DLLs work in other Windows machines? Would the target machine be required to install any dependencies related to Cygwin in order to use the DLLs?

Also, one more question, not related to PG. Cygwin vs native Windows API calls, will there be much difference in the performance?(We are not using fork() calls, btw).

Thanks,

Insaf

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Pavel Raiskup 2018-04-25 08:50:17 Re: obsoleting plpython2u and defaulting plpythonu to plpython3u
Previous Message Amit Langote 2018-04-25 08:29:58 Re: Oddity in tuple routing for foreign partitions